KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > xml > wsdl > ui > property > model > BuiltInCustomizerGroupedProperty


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20 /**
21  * This generated bean class BuiltInCustomizerGroupedProperty
22  * matches the schema element 'BuiltInCustomizer-GroupedProperty'.
23  * The root bean class is ElementProperties
24  *
25  * ===============================================================
26  * To use pre-built customizers.
27  *
28  * ===============================================================
29  * Generated on Mon Feb 05 17:54:51 PST 2007
30  * @Generated
31  */

32
33 package org.netbeans.modules.xml.wsdl.ui.property.model;
34
35 public class BuiltInCustomizerGroupedProperty {
36     public static final String JavaDoc ELEMENTORTYPECHOOSER = "ElementOrTypeChooser"; // NOI18N
37
public static final String JavaDoc ELEMENTORTYPEORMESSAGEPARTCHOOSER = "ElementOrTypeOrMessagePartChooser"; // NOI18N
38

39     private ElementOrTypeChooser _ElementOrTypeChooser;
40     private ElementOrTypeOrMessagePartChooser _ElementOrTypeOrMessagePartChooser;
41
42     /**
43      * Normal starting point constructor.
44      */

45     public BuiltInCustomizerGroupedProperty() {
46     }
47
48     /**
49      * Deep copy
50      */

51     public BuiltInCustomizerGroupedProperty(org.netbeans.modules.xml.wsdl.ui.property.model.BuiltInCustomizerGroupedProperty source) {
52         this(source, false);
53     }
54
55     /**
56      * Deep copy
57      * @param justData just copy the XML relevant data
58      */

59     public BuiltInCustomizerGroupedProperty(org.netbeans.modules.xml.wsdl.ui.property.model.BuiltInCustomizerGroupedProperty source, boolean justData) {
60         _ElementOrTypeChooser = (source._ElementOrTypeChooser == null) ? null : newElementOrTypeChooser(source._ElementOrTypeChooser, justData);
61         _ElementOrTypeOrMessagePartChooser = (source._ElementOrTypeOrMessagePartChooser == null) ? null : newElementOrTypeOrMessagePartChooser(source._ElementOrTypeOrMessagePartChooser, justData);
62     }
63
64     // This attribute is mandatory
65
public void setElementOrTypeChooser(org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeChooser value) {
66         _ElementOrTypeChooser = value;
67         if (value != null) {
68             // It's a mutually exclusive property.
69
setElementOrTypeOrMessagePartChooser(null);
70         }
71     }
72
73     public org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeChooser getElementOrTypeChooser() {
74         return _ElementOrTypeChooser;
75     }
76
77     // This attribute is mandatory
78
public void setElementOrTypeOrMessagePartChooser(org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeOrMessagePartChooser value) {
79         _ElementOrTypeOrMessagePartChooser = value;
80         if (value != null) {
81             // It's a mutually exclusive property.
82
setElementOrTypeChooser(null);
83         }
84     }
85
86     public org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeOrMessagePartChooser getElementOrTypeOrMessagePartChooser() {
87         return _ElementOrTypeOrMessagePartChooser;
88     }
89
90     /**
91      * Create a new bean using it's default constructor.
92      * This does not add it to any bean graph.
93      */

94     public org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeChooser newElementOrTypeChooser() {
95         return new org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeChooser();
96     }
97
98     /**
99      * Create a new bean, copying from another one.
100      * This does not add it to any bean graph.
101      */

102     public org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeChooser newElementOrTypeChooser(ElementOrTypeChooser source, boolean justData) {
103         return new org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeChooser(source, justData);
104     }
105
106     /**
107      * Create a new bean using it's default constructor.
108      * This does not add it to any bean graph.
109      */

110     public org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeOrMessagePartChooser newElementOrTypeOrMessagePartChooser() {
111         return new org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeOrMessagePartChooser();
112     }
113
114     /**
115      * Create a new bean, copying from another one.
116      * This does not add it to any bean graph.
117      */

118     public org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeOrMessagePartChooser newElementOrTypeOrMessagePartChooser(ElementOrTypeOrMessagePartChooser source, boolean justData) {
119         return new org.netbeans.modules.xml.wsdl.ui.property.model.ElementOrTypeOrMessagePartChooser(source, justData);
120     }
121
122     public void writeNode(java.io.Writer JavaDoc out) throws java.io.IOException JavaDoc {
123         String JavaDoc myName;
124         myName = "BuiltInCustomizer-GroupedProperty";
125         writeNode(out, myName, ""); // NOI18N
126
}
127
128     public void writeNode(java.io.Writer JavaDoc out, String JavaDoc nodeName, String JavaDoc indent) throws java.io.IOException JavaDoc {
129         writeNode(out, nodeName, null, indent, new java.util.HashMap JavaDoc());
130     }
131
132     /**
133      * It's not recommended to call this method directly.
134      */

135     public void writeNode(java.io.Writer JavaDoc out, String JavaDoc nodeName, String JavaDoc namespace, String JavaDoc indent, java.util.Map JavaDoc namespaceMap) throws java.io.IOException JavaDoc {
136         out.write(indent);
137         out.write("<");
138         if (namespace != null) {
139             out.write((String JavaDoc)namespaceMap.get(namespace));
140             out.write(":");
141         }
142         out.write(nodeName);
143         writeNodeAttributes(out, nodeName, namespace, indent, namespaceMap);
144         out.write(">\n");
145         writeNodeChildren(out, nodeName, namespace, indent, namespaceMap);
146         out.write(indent);
147         out.write("</");
148         if (namespace != null) {
149             out.write((String JavaDoc)namespaceMap.get(namespace));
150             out.write(":");
151         }
152         out.write(nodeName);
153         out.write(">\n");
154     }
155
156     protected void writeNodeAttributes(java.io.Writer JavaDoc out, String JavaDoc nodeName, String JavaDoc namespace, String JavaDoc indent, java.util.Map JavaDoc namespaceMap) throws java.io.IOException JavaDoc {
157     }
158
159     protected void writeNodeChildren(java.io.Writer JavaDoc out, String JavaDoc nodeName, String JavaDoc namespace, String JavaDoc indent, java.util.Map JavaDoc namespaceMap) throws java.io.IOException JavaDoc {
160         String JavaDoc nextIndent = indent + " ";
161         if (_ElementOrTypeChooser != null) {
162             _ElementOrTypeChooser.writeNode(out, "ElementOrTypeChooser", null, nextIndent, namespaceMap);
163         }
164         if (_ElementOrTypeOrMessagePartChooser != null) {
165             _ElementOrTypeOrMessagePartChooser.writeNode(out, "ElementOrTypeOrMessagePartChooser", null, nextIndent, namespaceMap);
166         }
167     }
168
169     public void readNode(org.w3c.dom.Node JavaDoc node) {
170         readNode(node, new java.util.HashMap JavaDoc());
171     }
172
173     public void readNode(org.w3c.dom.Node JavaDoc node, java.util.Map JavaDoc namespacePrefixes) {
174         if (node.hasAttributes()) {
175             org.w3c.dom.NamedNodeMap JavaDoc attrs = node.getAttributes();
176             org.w3c.dom.Attr JavaDoc attr;
177             java.lang.String JavaDoc attrValue;
178             boolean firstNamespaceDef = true;
179             for (int attrNum = 0; attrNum < attrs.getLength(); ++attrNum) {
180                 attr = (org.w3c.dom.Attr JavaDoc) attrs.item(attrNum);
181                 String JavaDoc attrName = attr.getName();
182                 if (attrName.startsWith("xmlns:")) {
183                     if (firstNamespaceDef) {
184                         firstNamespaceDef = false;
185                         // Dup prefix map, so as to not write over previous values, and to make it easy to clear out our entries.
186
namespacePrefixes = new java.util.HashMap JavaDoc(namespacePrefixes);
187                     }
188                     String JavaDoc attrNSPrefix = attrName.substring(6, attrName.length());
189                     namespacePrefixes.put(attrNSPrefix, attr.getValue());
190                 }
191             }
192             readNodeAttributes(node, namespacePrefixes, attrs);
193         }
194         readNodeChildren(node, namespacePrefixes);
195     }
196
197     protected void readNodeAttributes(org.w3c.dom.Node JavaDoc node, java.util.Map JavaDoc namespacePrefixes, org.w3c.dom.NamedNodeMap JavaDoc attrs) {
198         org.w3c.dom.Attr JavaDoc attr;
199         java.lang.String JavaDoc attrValue;
200     }
201
202     protected void readNodeChildren(org.w3c.dom.Node JavaDoc node, java.util.Map JavaDoc namespacePrefixes) {
203         org.w3c.dom.NodeList JavaDoc children = node.getChildNodes();
204         for (int i = 0, size = children.getLength(); i < size; ++i) {
205             org.w3c.dom.Node JavaDoc childNode = children.item(i);
206             String JavaDoc childNodeName = (childNode.getLocalName() == null ? childNode.getNodeName().intern() : childNode.getLocalName().intern());
207             String JavaDoc childNodeValue = "";
208             if (childNode.getFirstChild() != null) {
209                 childNodeValue = childNode.getFirstChild().getNodeValue();
210             }
211             if (childNodeName == "ElementOrTypeChooser") {
212                 _ElementOrTypeChooser = newElementOrTypeChooser();
213                 _ElementOrTypeChooser.readNode(childNode, namespacePrefixes);
214             }
215             else if (childNodeName == "ElementOrTypeOrMessagePartChooser") {
216                 _ElementOrTypeOrMessagePartChooser = newElementOrTypeOrMessagePartChooser();
217                 _ElementOrTypeOrMessagePartChooser.readNode(childNode, namespacePrefixes);
218             }
219             else {
220                 // Found extra unrecognized childNode
221
}
222         }
223     }
224
225     public void changePropertyByName(String JavaDoc name, Object JavaDoc value) {
226         if (name == null) return;
227         name = name.intern();
228         if (name == "elementOrTypeChooser")
229             setElementOrTypeChooser((ElementOrTypeChooser)value);
230         else if (name == "elementOrTypeOrMessagePartChooser")
231             setElementOrTypeOrMessagePartChooser((ElementOrTypeOrMessagePartChooser)value);
232         else
233             throw new IllegalArgumentException JavaDoc(name+" is not a valid property name for BuiltInCustomizerGroupedProperty");
234     }
235
236     public Object JavaDoc fetchPropertyByName(String JavaDoc name) {
237         if (name == "elementOrTypeChooser")
238             return getElementOrTypeChooser();
239         if (name == "elementOrTypeOrMessagePartChooser")
240             return getElementOrTypeOrMessagePartChooser();
241         throw new IllegalArgumentException JavaDoc(name+" is not a valid property name for BuiltInCustomizerGroupedProperty");
242     }
243
244     public String JavaDoc nameSelf() {
245         return "BuiltInCustomizerGroupedProperty";
246     }
247
248     public String JavaDoc nameChild(Object JavaDoc childObj) {
249         return nameChild(childObj, false, false);
250     }
251
252     /**
253      * @param childObj The child object to search for
254      * @param returnSchemaName Whether or not the schema name should be returned or the property name
255      * @return null if not found
256      */

257     public String JavaDoc nameChild(Object JavaDoc childObj, boolean returnConstName, boolean returnSchemaName) {
258         return nameChild(childObj, returnConstName, returnSchemaName, false);
259     }
260
261     /**
262      * @param childObj The child object to search for
263      * @param returnSchemaName Whether or not the schema name should be returned or the property name
264      * @return null if not found
265      */

266     public String JavaDoc nameChild(Object JavaDoc childObj, boolean returnConstName, boolean returnSchemaName, boolean returnXPathName) {
267         if (childObj instanceof ElementOrTypeOrMessagePartChooser) {
268             ElementOrTypeOrMessagePartChooser child = (ElementOrTypeOrMessagePartChooser) childObj;
269             if (child == _ElementOrTypeOrMessagePartChooser) {
270                 if (returnConstName) {
271                     return ELEMENTORTYPEORMESSAGEPARTCHOOSER;
272                 } else if (returnSchemaName) {
273                     return "ElementOrTypeOrMessagePartChooser";
274                 } else if (returnXPathName) {
275                     return "ElementOrTypeOrMessagePartChooser";
276                 } else {
277                     return "ElementOrTypeOrMessagePartChooser";
278                 }
279             }
280         }
281         if (childObj instanceof ElementOrTypeChooser) {
282             ElementOrTypeChooser child = (ElementOrTypeChooser) childObj;
283             if (child == _ElementOrTypeChooser) {
284                 if (returnConstName) {
285                     return ELEMENTORTYPECHOOSER;
286                 } else if (returnSchemaName) {
287                     return "ElementOrTypeChooser";
288                 } else if (returnXPathName) {
289                     return "ElementOrTypeChooser";
290                 } else {
291                     return "ElementOrTypeChooser";
292                 }
293             }
294         }
295         return null;
296     }
297
298     /**
299      * Return an array of all of the properties that are beans and are set.
300      */

301     public java.lang.Object JavaDoc[] childBeans(boolean recursive) {
302         java.util.List JavaDoc children = new java.util.LinkedList JavaDoc();
303         childBeans(recursive, children);
304         java.lang.Object JavaDoc[] result = new java.lang.Object JavaDoc[children.size()];
305         return (java.lang.Object JavaDoc[]) children.toArray(result);
306     }
307
308     /**
309      * Put all child beans into the beans list.
310      */

311     public void childBeans(boolean recursive, java.util.List JavaDoc beans) {
312         if (_ElementOrTypeChooser != null) {
313             if (recursive) {
314                 _ElementOrTypeChooser.childBeans(true, beans);
315             }
316             beans.add(_ElementOrTypeChooser);
317         }
318         if (_ElementOrTypeOrMessagePartChooser != null) {
319             if (recursive) {
320                 _ElementOrTypeOrMessagePartChooser.childBeans(true, beans);
321             }
322             beans.add(_ElementOrTypeOrMessagePartChooser);
323         }
324     }
325
326     public boolean equals(Object JavaDoc o) {
327         return o instanceof org.netbeans.modules.xml.wsdl.ui.property.model.BuiltInCustomizerGroupedProperty && equals((org.netbeans.modules.xml.wsdl.ui.property.model.BuiltInCustomizerGroupedProperty) o);
328     }
329
330     public boolean equals(org.netbeans.modules.xml.wsdl.ui.property.model.BuiltInCustomizerGroupedProperty inst) {
331         if (inst == this) {
332             return true;
333         }
334         if (inst == null) {
335             return false;
336         }
337         if (!(_ElementOrTypeChooser == null ? inst._ElementOrTypeChooser == null : _ElementOrTypeChooser.equals(inst._ElementOrTypeChooser))) {
338             return false;
339         }
340         if (!(_ElementOrTypeOrMessagePartChooser == null ? inst._ElementOrTypeOrMessagePartChooser == null : _ElementOrTypeOrMessagePartChooser.equals(inst._ElementOrTypeOrMessagePartChooser))) {
341             return false;
342         }
343         return true;
344     }
345
346     public int hashCode() {
347         int result = 17;
348         result = 37*result + (_ElementOrTypeChooser == null ? 0 : _ElementOrTypeChooser.hashCode());
349         result = 37*result + (_ElementOrTypeOrMessagePartChooser == null ? 0 : _ElementOrTypeOrMessagePartChooser.hashCode());
350         return result;
351     }
352
353 }
354
355
356 /*
357         The following schema file has been used for generation:
358
359 <?xml version="1.0" encoding="UTF-8"?>
360
361 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
362             targetNamespace="http://xml.netbeans.org/schema/wsdlui/property"
363             xmlns:tns="http://xml.netbeans.org/schema/wsdlui/property"
364             elementFormDefault="qualified">
365     <xsd:element name="ElementProperties">
366         <xsd:annotation>
367             <xsd:documentation xml:lang="en-US">Root node for specifying customizers for a element.
368                 This needs to be on the GlobalElement which would represent the node in the WSDL tree.
369             If this is defined in local elements it is ignored.</xsd:documentation>
370         </xsd:annotation>
371         <xsd:complexType>
372             <xsd:sequence>
373                 <xsd:element ref="tns:PropertyGroup" maxOccurs="unbounded" />
374                 <xsd:element ref="tns:Property" maxOccurs="unbounded" />
375                 <xsd:element ref="tns:GroupedProperty" maxOccurs="unbounded" />
376             </xsd:sequence>
377         </xsd:complexType>
378     </xsd:element>
379     
380     <xsd:element name="PropertyGroup">
381         <xsd:annotation>
382             <xsd:documentation xml:lang="en-US">Used to create groups in the property sheet.
383                 By default, if no groups are defined all the properties will be shown
384                 in the default Property sheet called "Properties".
385                 name : defines the name of the Group.
386                 groupOrder : defines the order in which the groups will be created. The groupOrder starts with 1.
387                 isDefault : overrides the default property sheet to be this group rather than "Properties".
388                 This enables the user to put non-customized properties (which do not have a Property defined in this xml) to go into this property sheet.
389                 
390                 
391             </xsd:documentation>
392         </xsd:annotation>
393         <xsd:complexType>
394             <xsd:attribute name="name" type="xsd:string" use="required"/>
395             <xsd:attribute name="groupOrder" type="xsd:int"/>
396             <xsd:attribute name="isDefault" type="xsd:boolean" default="false"/>
397         </xsd:complexType>
398     </xsd:element>
399     <xsd:element name="Property">
400         <xsd:annotation>
401             <xsd:documentation xml:lang="en-US">Property represents each attribute that would be created for the Node in the wsdleditor tree.
402                 It defines a way to specify customizers for attributes.
403                 There are 3 types of Property customizers:
404                 SchemaCustomizer : The default Customizer is the SchemaCustomizer, which shows drop downs for enumerations and boolean attributes,
405                 and String customizer for all other types. So if there is no Property defined for a attribute, it will have
406                 SchemaCustomizer.
407                 BuiltInCustomizer : specifies a way to put already defined customizer to be shown. Examples are part chooser, message chooser etc.
408                 NewCustomizer : provides a way to create a custom customizer specific to the user requirement. When using this the developer has
409                 to implement the SPI org.netbeans.modules.xml.wsdl.ui.spi.WSDLLookupProvider, and add a implementation of
410                 org.netbeans.modules.xml.wsdl.ui.spi.NewCustomizerProvider, which will provide the custom Node.Property to be shown in the
411                 wsdl editor property sheet.
412             </xsd:documentation>
413         </xsd:annotation>
414         <xsd:complexType>
415             <xsd:choice>
416                 <xsd:element name="SchemaCustomizer"/>
417                 <xsd:element name="BuiltInCustomizer">
418                     <xsd:complexType xmlns:xsd="http://www.w3.org/2001/XMLSchema">
419                         <xsd:choice>
420                             <xsd:element name="DependsOnCustomizer">
421                                 <xsd:annotation>
422                                     <xsd:documentation xml:lang="en-US">Use a built-in customizer whose value(s) depend on some other attribute
423                                         of the the same element or some other source.
424                                     </xsd:documentation>
425                                 </xsd:annotation>
426                                 <xsd:complexType>
427                                     <xsd:choice>
428                                         <xsd:element name="StaticCustomizer">
429                                             <xsd:annotation>
430                                                 <xsd:documentation xml:lang="en-US">dependsOnAttributeName : the attribute on which the value(s) of the chooser would depend on.
431                                                     For example: some elements may have a attribute for message and another for part, and the PartsChooser should show parts from the message that is selected in the message attribute.
432                                                     In that the dependsOnAttributeName for PartChooser would be message.
433                                                 </xsd:documentation>
434                                             </xsd:annotation>
435                                             <xsd:complexType>
436                                                 <xsd:attribute name="dependsOnAttributeName" type="xsd:QName"/>
437                                             </xsd:complexType>
438                                         </xsd:element>
439                                         <!--No use case as of yet, xsd:element name="DynamicCustomizer">
440                                             <xsd:annotation>
441                                                 <xsd:documentation xml:lang="en-US">
442                                                     
443                                                 </xsd:documentation>
444                                             </xsd:annotation>
445                                             <xsd:complexType>
446                                                 <xsd:attribute name="dependsOnAttributeValueType" type="xsd:string"/>
447                                                 <xsd:attribute name="attributeValueProviderClass" type="xsd:string"/>
448                                             </xsd:complexType>
449                                         </xsd:element-->
450                                     </xsd:choice>
451                                     <xsd:attribute name="name" type="tns:builtInCustomizerTypes"/>
452                                 </xsd:complexType>
453                             </xsd:element>
454                             <xsd:element name="SimpleCustomizer">
455                                 <xsd:annotation>
456                                     <xsd:documentation xml:lang="en-US">
457                                         Use the builtin chooser that are available (the names are defined under builtInCustomizerTypes simple type as enumerations,
458                                         name: specifies which builtin chooser to use.
459                                     </xsd:documentation>
460                                 </xsd:annotation>
461                                 <xsd:complexType xmlns:xsd="http://www.w3.org/2001/XMLSchema">
462                                     <xsd:sequence/>
463                                     <xsd:attribute name="name" type="tns:builtInCustomizerTypes"/>
464                                 </xsd:complexType>
465                             </xsd:element>
466                         </xsd:choice>
467                     </xsd:complexType>
468                 </xsd:element>
469                 <xsd:element ref="tns:NewCustomizer"/>
470             </xsd:choice>
471             <xsd:attribute name="attributeName" type="xsd:string" use="required"/>
472             <xsd:attribute name="isNameableAttribute" type="xsd:boolean" default="false"/>
473             <xsd:attribute name="decoratorAttribute" type="xsd:QName"/>
474             <xsd:attribute name="groupName" type="xsd:string"/>
475             <xsd:attribute name="propertyOrder" type="xsd:int"/>
476         </xsd:complexType>
477     </xsd:element>
478     <xsd:element name="GroupedProperty">
479         <xsd:annotation>
480             <xsd:documentation xml:lang="en-US">Some attributes in a element are mutually exclusive, so in the UI, for unambiguous usage, the user may want to add a single property chooser for 2 or more attributes, which will set the appropriate attribute depending on some criteria that the customizer may determine.
481                 groupedAttributeNames : specify all the mutually exclusive attributes. There will be a single customizer for all these attributes.
482                 groupName : specifies which PropertyGroup this belongs to.
483                 propertyOrder : specifies the order in the PropertyGroup where this property would be placed.
484                 displayName: specifies the Display name of the combined chooser.
485             </xsd:documentation>
486         </xsd:annotation>
487         <xsd:complexType>
488             <xsd:choice>
489                 <xsd:element name="BuiltInCustomizer" >
490                     <xsd:annotation>
491                         <xsd:documentation xml:lang="en-US">To use pre-built customizers.
492                         </xsd:documentation>
493                     </xsd:annotation>
494                     <xsd:complexType>
495                         <xsd:choice>
496                             <xsd:element name="ElementOrTypeChooser">
497                                 <xsd:annotation>
498                                     <xsd:documentation xml:lang="en-US">Shows a Tree based selector, which shows all the elements/types from Inline/Imported schemas.
499                                         elementAttributeName : the attribute on which GlobalElement data type would be set.
500                                         typeAttributeName : the attribute on which GlobalType data type would be set.
501                                     </xsd:documentation>
502                                 </xsd:annotation>
503                                 <xsd:complexType>
504                                     <xsd:attribute name="elementAttributeName" type="xsd:NCName"/>
505                                     <xsd:attribute name="typeAttributeName" type="xsd:NCName"/>
506                                 </xsd:complexType>
507                             </xsd:element>
508                             <xsd:element name="ElementOrTypeOrMessagePartChooser">
509                                 <xsd:annotation>
510                                     <xsd:documentation xml:lang="en-US">Shows a Tree based selector, which shows all the elements/types from Inline/Imported schemas and also the messages from all imported and existing wsdls.
511                                         elementAttributeName : the attribute on which GlobalElement data type would be set.
512                                         typeAttributeName : the attribute on which GlobalType data type would be set.
513                                         messageAttributeName : the attribute on which Message data type would be set.
514                                         partAttributeName : the attribute on which part would be set.
515                                         This chooser can select between a GlobalElement or GlobalType or a wsdl Part.
516                                         
517                                     </xsd:documentation>
518                                 </xsd:annotation>
519                                 <xsd:complexType>
520                                     <xsd:attribute name="elementAttributeName" type="xsd:NCName"/>
521                                     <xsd:attribute name="typeAttributeName" type="xsd:NCName"/>
522                                     <xsd:attribute name="messageAttributeName" type="xsd:NCName"/>
523                                     <xsd:attribute name="partAttributeName" type="xsd:NCName"/>
524                                 </xsd:complexType>
525                             </xsd:element>
526                         </xsd:choice>
527                     </xsd:complexType>
528                 </xsd:element>
529                 <xsd:element ref="tns:NewCustomizer"/>
530             </xsd:choice>
531             <xsd:attribute name="groupedAttributeNames" type="tns:attributeList" use="required"/>
532             <xsd:attribute name="groupName" type="xsd:string"/>
533             <xsd:attribute name="propertyOrder" type="xsd:int"/>
534             <xsd:attribute name="displayName" type="xsd:NCName" use="required"/>
535         </xsd:complexType>
536     </xsd:element>
537     
538     
539     <xsd:element name="NewCustomizer">
540         <xsd:annotation>
541             <xsd:documentation xml:lang="en-US">Provides a way for developer to provide a custom property customizer for the attribute, if the builtin chooser dont satisfy their requirements.
542 When using this the developer has to implement the SPI org.netbeans.modules.xml.wsdl.ui.spi.WSDLLookupProvider, and add a implementation of org.netbeans.modules.xml.wsdl.ui.spi.NewCustomizerProvider, which will provide the custom Node.Property to be shown in the wsdl editor property sheet.
543             </xsd:documentation>
544         </xsd:annotation>
545     </xsd:element>
546     
547     
548     <xsd:simpleType name="builtInCustomizerTypes">
549         <xsd:restriction base="xsd:string">
550             <xsd:enumeration value="MessageChooser">
551                 <xsd:annotation>
552                     <xsd:documentation xml:lang="en-US">Shows a drop down of all messages in the current WSDL document and also ones in imported WSDL documents.</xsd:documentation>
553                 </xsd:annotation>
554             </xsd:enumeration>
555             <xsd:enumeration value="PartChooser">
556                 <xsd:annotation>
557                     <xsd:documentation xml:lang="en-US">Show a drop down of all parts for a message. By default, the chooser assumes that it is in the binding section under input/output/fault, and shows all the parts for the message selected in the input/output/fault.
558     If not, then the dependsOnCustomizer needs to be used to specify the attribute which represents the message, whose parts will be shown</xsd:documentation>
559                 </xsd:annotation>
560             </xsd:enumeration>
561             <xsd:enumeration value="PortTypeChooser">
562                 <xsd:annotation>
563                     <xsd:documentation xml:lang="en-US">Show a drop down of all port types in the WSDL Document/Imported WSDL Documents.</xsd:documentation>
564                 </xsd:annotation>
565             </xsd:enumeration>
566             <xsd:enumeration value="PartsChooser">
567                 <xsd:annotation>
568                     <xsd:documentation xml:lang="en-US">Show a dialog of all parts for a message, from which multiple parts can be selected. By default, the chooser assumes that it is in the binding section under input/output/fault, and shows all the parts for the message selected in the input/output/fault.
569     If not, then the dependsOnCustomizer needs to be used to specify the attribute which represents the message, whose parts will be shown</xsd:documentation>
570                 </xsd:annotation>
571             </xsd:enumeration>
572         </xsd:restriction>
573     </xsd:simpleType>
574     
575     <xsd:simpleType name="attributeList">
576         <xsd:list itemType="xsd:string"/>
577     </xsd:simpleType>
578     
579 </xsd:schema>
580
581 */

582
Popular Tags