View Javadoc

1   package org.codehaus.xfire.aegis.type;
2   
3   import java.util.Map;
4   import java.util.Set;
5   
6   import org.codehaus.xfire.aegis.AegisService;
7   import org.codehaus.xfire.aegis.mapping.TypeRegistry;
8   import org.codehaus.xfire.fault.XFireFault;
9   import org.codehaus.xfire.wsdl.WSDLType;
10  import org.dom4j.Element;
11  import org.dom4j.QName;
12  
13  
14  /***
15   * An Aegis Type.  Something that is read/written.
16   * 
17   * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
18   * @since Aug 19, 2004
19   */
20  public abstract class Type
21      implements WSDLType
22  {
23      private QName qName;
24      private QName schemaType;
25      private String ognl;
26      private String name;
27      private String documentation;
28      private String minOccurs;
29      private String maxOccurs;
30      
31      public Type()
32      {
33          minOccurs = "1";
34          maxOccurs = "1";
35      }
36      
37      public abstract void write( Element element, Map context ) throws XFireFault;
38  
39  	public abstract void read( Element element, Map context ) throws XFireFault;
40      
41      public abstract void read( Element element, int occurrence, Map context ) throws XFireFault;
42  
43      public abstract void writeSchema( Element element ); 
44      
45      public abstract void configure( Element configuration, AegisService service, TypeRegistry reg );
46  
47      public boolean isComplex()
48      {
49          return false;
50      }
51      
52      public Set getDependencies()
53      {
54      	return null;
55      }
56      
57      public String getOgnl()
58      {
59          return ognl;
60      }
61      
62      public void setOgnl( String ognl )
63      {
64          this.ognl = ognl;
65      }
66      
67      public QName getQName()
68      {
69          return qName;
70      }
71      
72      public void setQName( QName name )
73      {
74          qName = name;
75      }
76  
77  	public String getName()
78  	{
79  		return name;
80  	}
81      
82  	public void setName(String name)
83  	{
84  		this.name = name;
85  	}
86      
87  	public QName getSchemaType()
88  	{
89  		return schemaType;
90  	}
91      
92  	public void setSchemaType(QName schemaType)
93  	{
94  		this.schemaType = schemaType;
95  	}
96      
97  	public String getDocumentation()
98  	{
99  		return documentation;
100 	}
101     
102 	public void setDocumentation(String documentation)
103 	{
104 		this.documentation = documentation;
105 	}
106     
107 	public String getMaxOccurs()
108 	{
109 		return maxOccurs;
110 	}
111     
112 	public void setMaxOccurs(String maxOccurs)
113 	{
114 		this.maxOccurs = maxOccurs;
115 	}
116     
117 	public String getMinOccurs()
118 	{
119 		return minOccurs;
120 	}
121     
122 	public void setMinOccurs(String minOccurs)
123 	{
124 		this.minOccurs = minOccurs;
125 	}
126 }