View Javadoc
1   /*
2    * This class was automatically generated with 
3    * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
4    * Schema.
5    * $Id$
6    */
7   
8   package org.exolab.castor.builder.binding.xml;
9   
10  /**
11   * A binding element is defined to express the binding between an
12   * XML Schema Component
13   *  and Java class OR a java interface or a java member class. The
14   * XML Schema component can 
15   *  be an element, an attribute, a complexType or a group.
16   * Attribute cannot be mapped to 
17   *  class, the reader of a binding file will take care that class
18   * or interface are not
19   *  used for component whose xml-type is attribute.
20   *  
21   * 
22   * @version $Revision$ $Date$
23   */
24  public class ComponentBindingType implements java.io.Serializable {
25  
26  
27        //--------------------------/
28       //- Class/Member Variables -/
29      //--------------------------/
30  
31      /**
32       * Field _name.
33       */
34      private java.lang.String _name;
35  
36      /**
37       * Field _componentBindingTypeChoice.
38       */
39      private org.exolab.castor.builder.binding.xml.ComponentBindingTypeChoice _componentBindingTypeChoice;
40  
41      /**
42       * Field _componentBindingList.
43       */
44      private java.util.List _componentBindingList;
45  
46      /**
47       * Field _elementBindingList.
48       */
49      private java.util.List _elementBindingList;
50  
51      /**
52       * Field _attributeBindingList.
53       */
54      private java.util.List _attributeBindingList;
55  
56      /**
57       * Field _complexTypeBindingList.
58       */
59      private java.util.List _complexTypeBindingList;
60  
61      /**
62       * Field _groupBindingList.
63       */
64      private java.util.List _groupBindingList;
65  
66      /**
67       * Field _enumBindingList.
68       */
69      private java.util.List _enumBindingList;
70  
71      /**
72       * Field _simpleTypeBindingList.
73       */
74      private java.util.List _simpleTypeBindingList;
75  
76  
77        //----------------/
78       //- Constructors -/
79      //----------------/
80  
81      public ComponentBindingType() {
82          super();
83          this._componentBindingList = new java.util.ArrayList();
84          this._elementBindingList = new java.util.ArrayList();
85          this._attributeBindingList = new java.util.ArrayList();
86          this._complexTypeBindingList = new java.util.ArrayList();
87          this._groupBindingList = new java.util.ArrayList();
88          this._enumBindingList = new java.util.ArrayList();
89          this._simpleTypeBindingList = new java.util.ArrayList();
90      }
91  
92  
93        //-----------/
94       //- Methods -/
95      //-----------/
96  
97      /**
98       * 
99       * 
100      * @param vAttributeBinding
101      * @throws java.lang.IndexOutOfBoundsException if the index
102      * given is outside the bounds of the collection
103      */
104     public void addAttributeBinding(
105             final org.exolab.castor.builder.binding.xml.ComponentBindingType vAttributeBinding)
106     throws java.lang.IndexOutOfBoundsException {
107         this._attributeBindingList.add(vAttributeBinding);
108     }
109 
110     /**
111      * 
112      * 
113      * @param index
114      * @param vAttributeBinding
115      * @throws java.lang.IndexOutOfBoundsException if the index
116      * given is outside the bounds of the collection
117      */
118     public void addAttributeBinding(
119             final int index,
120             final org.exolab.castor.builder.binding.xml.ComponentBindingType vAttributeBinding)
121     throws java.lang.IndexOutOfBoundsException {
122         this._attributeBindingList.add(index, vAttributeBinding);
123     }
124 
125     /**
126      * 
127      * 
128      * @param vComplexTypeBinding
129      * @throws java.lang.IndexOutOfBoundsException if the index
130      * given is outside the bounds of the collection
131      */
132     public void addComplexTypeBinding(
133             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComplexTypeBinding)
134     throws java.lang.IndexOutOfBoundsException {
135         this._complexTypeBindingList.add(vComplexTypeBinding);
136     }
137 
138     /**
139      * 
140      * 
141      * @param index
142      * @param vComplexTypeBinding
143      * @throws java.lang.IndexOutOfBoundsException if the index
144      * given is outside the bounds of the collection
145      */
146     public void addComplexTypeBinding(
147             final int index,
148             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComplexTypeBinding)
149     throws java.lang.IndexOutOfBoundsException {
150         this._complexTypeBindingList.add(index, vComplexTypeBinding);
151     }
152 
153     /**
154      * 
155      * 
156      * @param vComponentBinding
157      * @throws java.lang.IndexOutOfBoundsException if the index
158      * given is outside the bounds of the collection
159      */
160     public void addComponentBinding(
161             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComponentBinding)
162     throws java.lang.IndexOutOfBoundsException {
163         this._componentBindingList.add(vComponentBinding);
164     }
165 
166     /**
167      * 
168      * 
169      * @param index
170      * @param vComponentBinding
171      * @throws java.lang.IndexOutOfBoundsException if the index
172      * given is outside the bounds of the collection
173      */
174     public void addComponentBinding(
175             final int index,
176             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComponentBinding)
177     throws java.lang.IndexOutOfBoundsException {
178         this._componentBindingList.add(index, vComponentBinding);
179     }
180 
181     /**
182      * 
183      * 
184      * @param vElementBinding
185      * @throws java.lang.IndexOutOfBoundsException if the index
186      * given is outside the bounds of the collection
187      */
188     public void addElementBinding(
189             final org.exolab.castor.builder.binding.xml.ComponentBindingType vElementBinding)
190     throws java.lang.IndexOutOfBoundsException {
191         this._elementBindingList.add(vElementBinding);
192     }
193 
194     /**
195      * 
196      * 
197      * @param index
198      * @param vElementBinding
199      * @throws java.lang.IndexOutOfBoundsException if the index
200      * given is outside the bounds of the collection
201      */
202     public void addElementBinding(
203             final int index,
204             final org.exolab.castor.builder.binding.xml.ComponentBindingType vElementBinding)
205     throws java.lang.IndexOutOfBoundsException {
206         this._elementBindingList.add(index, vElementBinding);
207     }
208 
209     /**
210      * 
211      * 
212      * @param vEnumBinding
213      * @throws java.lang.IndexOutOfBoundsException if the index
214      * given is outside the bounds of the collection
215      */
216     public void addEnumBinding(
217             final org.exolab.castor.builder.binding.xml.ComponentBindingType vEnumBinding)
218     throws java.lang.IndexOutOfBoundsException {
219         this._enumBindingList.add(vEnumBinding);
220     }
221 
222     /**
223      * 
224      * 
225      * @param index
226      * @param vEnumBinding
227      * @throws java.lang.IndexOutOfBoundsException if the index
228      * given is outside the bounds of the collection
229      */
230     public void addEnumBinding(
231             final int index,
232             final org.exolab.castor.builder.binding.xml.ComponentBindingType vEnumBinding)
233     throws java.lang.IndexOutOfBoundsException {
234         this._enumBindingList.add(index, vEnumBinding);
235     }
236 
237     /**
238      * 
239      * 
240      * @param vGroupBinding
241      * @throws java.lang.IndexOutOfBoundsException if the index
242      * given is outside the bounds of the collection
243      */
244     public void addGroupBinding(
245             final org.exolab.castor.builder.binding.xml.ComponentBindingType vGroupBinding)
246     throws java.lang.IndexOutOfBoundsException {
247         this._groupBindingList.add(vGroupBinding);
248     }
249 
250     /**
251      * 
252      * 
253      * @param index
254      * @param vGroupBinding
255      * @throws java.lang.IndexOutOfBoundsException if the index
256      * given is outside the bounds of the collection
257      */
258     public void addGroupBinding(
259             final int index,
260             final org.exolab.castor.builder.binding.xml.ComponentBindingType vGroupBinding)
261     throws java.lang.IndexOutOfBoundsException {
262         this._groupBindingList.add(index, vGroupBinding);
263     }
264 
265     /**
266      * 
267      * 
268      * @param vSimpleTypeBinding
269      * @throws java.lang.IndexOutOfBoundsException if the index
270      * given is outside the bounds of the collection
271      */
272     public void addSimpleTypeBinding(
273             final org.exolab.castor.builder.binding.xml.ComponentBindingType vSimpleTypeBinding)
274     throws java.lang.IndexOutOfBoundsException {
275         this._simpleTypeBindingList.add(vSimpleTypeBinding);
276     }
277 
278     /**
279      * 
280      * 
281      * @param index
282      * @param vSimpleTypeBinding
283      * @throws java.lang.IndexOutOfBoundsException if the index
284      * given is outside the bounds of the collection
285      */
286     public void addSimpleTypeBinding(
287             final int index,
288             final org.exolab.castor.builder.binding.xml.ComponentBindingType vSimpleTypeBinding)
289     throws java.lang.IndexOutOfBoundsException {
290         this._simpleTypeBindingList.add(index, vSimpleTypeBinding);
291     }
292 
293     /**
294      * Method enumerateAttributeBinding.
295      * 
296      * @return an Enumeration over all possible elements of this
297      * collection
298      */
299     public java.util.Enumeration enumerateAttributeBinding(
300     ) {
301         return java.util.Collections.enumeration(this._attributeBindingList);
302     }
303 
304     /**
305      * Method enumerateComplexTypeBinding.
306      * 
307      * @return an Enumeration over all possible elements of this
308      * collection
309      */
310     public java.util.Enumeration enumerateComplexTypeBinding(
311     ) {
312         return java.util.Collections.enumeration(this._complexTypeBindingList);
313     }
314 
315     /**
316      * Method enumerateComponentBinding.
317      * 
318      * @return an Enumeration over all possible elements of this
319      * collection
320      */
321     public java.util.Enumeration enumerateComponentBinding(
322     ) {
323         return java.util.Collections.enumeration(this._componentBindingList);
324     }
325 
326     /**
327      * Method enumerateElementBinding.
328      * 
329      * @return an Enumeration over all possible elements of this
330      * collection
331      */
332     public java.util.Enumeration enumerateElementBinding(
333     ) {
334         return java.util.Collections.enumeration(this._elementBindingList);
335     }
336 
337     /**
338      * Method enumerateEnumBinding.
339      * 
340      * @return an Enumeration over all possible elements of this
341      * collection
342      */
343     public java.util.Enumeration enumerateEnumBinding(
344     ) {
345         return java.util.Collections.enumeration(this._enumBindingList);
346     }
347 
348     /**
349      * Method enumerateGroupBinding.
350      * 
351      * @return an Enumeration over all possible elements of this
352      * collection
353      */
354     public java.util.Enumeration enumerateGroupBinding(
355     ) {
356         return java.util.Collections.enumeration(this._groupBindingList);
357     }
358 
359     /**
360      * Method enumerateSimpleTypeBinding.
361      * 
362      * @return an Enumeration over all possible elements of this
363      * collection
364      */
365     public java.util.Enumeration enumerateSimpleTypeBinding(
366     ) {
367         return java.util.Collections.enumeration(this._simpleTypeBindingList);
368     }
369 
370     /**
371      * Method getAttributeBinding.
372      * 
373      * @param index
374      * @throws java.lang.IndexOutOfBoundsException if the index
375      * given is outside the bounds of the collection
376      * @return the value of the
377      * org.exolab.castor.builder.binding.xml.ComponentBindingType
378      * at the given index
379      */
380     public org.exolab.castor.builder.binding.xml.ComponentBindingType getAttributeBinding(
381             final int index)
382     throws java.lang.IndexOutOfBoundsException {
383         // check bounds for index
384         if (index < 0 || index >= this._attributeBindingList.size()) {
385             throw new IndexOutOfBoundsException("getAttributeBinding: Index value '" + index + "' not in range [0.." + (this._attributeBindingList.size() - 1) + "]");
386         }
387 
388         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) _attributeBindingList.get(index);
389     }
390 
391     /**
392      * Method getAttributeBinding.Returns the contents of the
393      * collection in an Array.  <p>Note:  Just in case the
394      * collection contents are changing in another thread, we pass
395      * a 0-length Array of the correct type into the API call. 
396      * This way we <i>know</i> that the Array returned is of
397      * exactly the correct length.
398      * 
399      * @return this collection as an Array
400      */
401     public org.exolab.castor.builder.binding.xml.ComponentBindingType[] getAttributeBinding(
402     ) {
403         org.exolab.castor.builder.binding.xml.ComponentBindingType[] array = new org.exolab.castor.builder.binding.xml.ComponentBindingType[0];
404         return (org.exolab.castor.builder.binding.xml.ComponentBindingType[]) this._attributeBindingList.toArray(array);
405     }
406 
407     /**
408      * Method getAttributeBindingCount.
409      * 
410      * @return the size of this collection
411      */
412     public int getAttributeBindingCount(
413     ) {
414         return this._attributeBindingList.size();
415     }
416 
417     /**
418      * Method getComplexTypeBinding.
419      * 
420      * @param index
421      * @throws java.lang.IndexOutOfBoundsException if the index
422      * given is outside the bounds of the collection
423      * @return the value of the
424      * org.exolab.castor.builder.binding.xml.ComponentBindingType
425      * at the given index
426      */
427     public org.exolab.castor.builder.binding.xml.ComponentBindingType getComplexTypeBinding(
428             final int index)
429     throws java.lang.IndexOutOfBoundsException {
430         // check bounds for index
431         if (index < 0 || index >= this._complexTypeBindingList.size()) {
432             throw new IndexOutOfBoundsException("getComplexTypeBinding: Index value '" + index + "' not in range [0.." + (this._complexTypeBindingList.size() - 1) + "]");
433         }
434 
435         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) _complexTypeBindingList.get(index);
436     }
437 
438     /**
439      * Method getComplexTypeBinding.Returns the contents of the
440      * collection in an Array.  <p>Note:  Just in case the
441      * collection contents are changing in another thread, we pass
442      * a 0-length Array of the correct type into the API call. 
443      * This way we <i>know</i> that the Array returned is of
444      * exactly the correct length.
445      * 
446      * @return this collection as an Array
447      */
448     public org.exolab.castor.builder.binding.xml.ComponentBindingType[] getComplexTypeBinding(
449     ) {
450         org.exolab.castor.builder.binding.xml.ComponentBindingType[] array = new org.exolab.castor.builder.binding.xml.ComponentBindingType[0];
451         return (org.exolab.castor.builder.binding.xml.ComponentBindingType[]) this._complexTypeBindingList.toArray(array);
452     }
453 
454     /**
455      * Method getComplexTypeBindingCount.
456      * 
457      * @return the size of this collection
458      */
459     public int getComplexTypeBindingCount(
460     ) {
461         return this._complexTypeBindingList.size();
462     }
463 
464     /**
465      * Method getComponentBinding.
466      * 
467      * @param index
468      * @throws java.lang.IndexOutOfBoundsException if the index
469      * given is outside the bounds of the collection
470      * @return the value of the
471      * org.exolab.castor.builder.binding.xml.ComponentBindingType
472      * at the given index
473      */
474     public org.exolab.castor.builder.binding.xml.ComponentBindingType getComponentBinding(
475             final int index)
476     throws java.lang.IndexOutOfBoundsException {
477         // check bounds for index
478         if (index < 0 || index >= this._componentBindingList.size()) {
479             throw new IndexOutOfBoundsException("getComponentBinding: Index value '" + index + "' not in range [0.." + (this._componentBindingList.size() - 1) + "]");
480         }
481 
482         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) _componentBindingList.get(index);
483     }
484 
485     /**
486      * Method getComponentBinding.Returns the contents of the
487      * collection in an Array.  <p>Note:  Just in case the
488      * collection contents are changing in another thread, we pass
489      * a 0-length Array of the correct type into the API call. 
490      * This way we <i>know</i> that the Array returned is of
491      * exactly the correct length.
492      * 
493      * @return this collection as an Array
494      */
495     public org.exolab.castor.builder.binding.xml.ComponentBindingType[] getComponentBinding(
496     ) {
497         org.exolab.castor.builder.binding.xml.ComponentBindingType[] array = new org.exolab.castor.builder.binding.xml.ComponentBindingType[0];
498         return (org.exolab.castor.builder.binding.xml.ComponentBindingType[]) this._componentBindingList.toArray(array);
499     }
500 
501     /**
502      * Method getComponentBindingCount.
503      * 
504      * @return the size of this collection
505      */
506     public int getComponentBindingCount(
507     ) {
508         return this._componentBindingList.size();
509     }
510 
511     /**
512      * Returns the value of field 'componentBindingTypeChoice'.
513      * 
514      * @return the value of field 'ComponentBindingTypeChoice'.
515      */
516     public org.exolab.castor.builder.binding.xml.ComponentBindingTypeChoice getComponentBindingTypeChoice(
517     ) {
518         return this._componentBindingTypeChoice;
519     }
520 
521     /**
522      * Method getElementBinding.
523      * 
524      * @param index
525      * @throws java.lang.IndexOutOfBoundsException if the index
526      * given is outside the bounds of the collection
527      * @return the value of the
528      * org.exolab.castor.builder.binding.xml.ComponentBindingType
529      * at the given index
530      */
531     public org.exolab.castor.builder.binding.xml.ComponentBindingType getElementBinding(
532             final int index)
533     throws java.lang.IndexOutOfBoundsException {
534         // check bounds for index
535         if (index < 0 || index >= this._elementBindingList.size()) {
536             throw new IndexOutOfBoundsException("getElementBinding: Index value '" + index + "' not in range [0.." + (this._elementBindingList.size() - 1) + "]");
537         }
538 
539         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) _elementBindingList.get(index);
540     }
541 
542     /**
543      * Method getElementBinding.Returns the contents of the
544      * collection in an Array.  <p>Note:  Just in case the
545      * collection contents are changing in another thread, we pass
546      * a 0-length Array of the correct type into the API call. 
547      * This way we <i>know</i> that the Array returned is of
548      * exactly the correct length.
549      * 
550      * @return this collection as an Array
551      */
552     public org.exolab.castor.builder.binding.xml.ComponentBindingType[] getElementBinding(
553     ) {
554         org.exolab.castor.builder.binding.xml.ComponentBindingType[] array = new org.exolab.castor.builder.binding.xml.ComponentBindingType[0];
555         return (org.exolab.castor.builder.binding.xml.ComponentBindingType[]) this._elementBindingList.toArray(array);
556     }
557 
558     /**
559      * Method getElementBindingCount.
560      * 
561      * @return the size of this collection
562      */
563     public int getElementBindingCount(
564     ) {
565         return this._elementBindingList.size();
566     }
567 
568     /**
569      * Method getEnumBinding.
570      * 
571      * @param index
572      * @throws java.lang.IndexOutOfBoundsException if the index
573      * given is outside the bounds of the collection
574      * @return the value of the
575      * org.exolab.castor.builder.binding.xml.ComponentBindingType
576      * at the given index
577      */
578     public org.exolab.castor.builder.binding.xml.ComponentBindingType getEnumBinding(
579             final int index)
580     throws java.lang.IndexOutOfBoundsException {
581         // check bounds for index
582         if (index < 0 || index >= this._enumBindingList.size()) {
583             throw new IndexOutOfBoundsException("getEnumBinding: Index value '" + index + "' not in range [0.." + (this._enumBindingList.size() - 1) + "]");
584         }
585 
586         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) _enumBindingList.get(index);
587     }
588 
589     /**
590      * Method getEnumBinding.Returns the contents of the collection
591      * in an Array.  <p>Note:  Just in case the collection contents
592      * are changing in another thread, we pass a 0-length Array of
593      * the correct type into the API call.  This way we <i>know</i>
594      * that the Array returned is of exactly the correct length.
595      * 
596      * @return this collection as an Array
597      */
598     public org.exolab.castor.builder.binding.xml.ComponentBindingType[] getEnumBinding(
599     ) {
600         org.exolab.castor.builder.binding.xml.ComponentBindingType[] array = new org.exolab.castor.builder.binding.xml.ComponentBindingType[0];
601         return (org.exolab.castor.builder.binding.xml.ComponentBindingType[]) this._enumBindingList.toArray(array);
602     }
603 
604     /**
605      * Method getEnumBindingCount.
606      * 
607      * @return the size of this collection
608      */
609     public int getEnumBindingCount(
610     ) {
611         return this._enumBindingList.size();
612     }
613 
614     /**
615      * Method getGroupBinding.
616      * 
617      * @param index
618      * @throws java.lang.IndexOutOfBoundsException if the index
619      * given is outside the bounds of the collection
620      * @return the value of the
621      * org.exolab.castor.builder.binding.xml.ComponentBindingType
622      * at the given index
623      */
624     public org.exolab.castor.builder.binding.xml.ComponentBindingType getGroupBinding(
625             final int index)
626     throws java.lang.IndexOutOfBoundsException {
627         // check bounds for index
628         if (index < 0 || index >= this._groupBindingList.size()) {
629             throw new IndexOutOfBoundsException("getGroupBinding: Index value '" + index + "' not in range [0.." + (this._groupBindingList.size() - 1) + "]");
630         }
631 
632         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) _groupBindingList.get(index);
633     }
634 
635     /**
636      * Method getGroupBinding.Returns the contents of the
637      * collection in an Array.  <p>Note:  Just in case the
638      * collection contents are changing in another thread, we pass
639      * a 0-length Array of the correct type into the API call. 
640      * This way we <i>know</i> that the Array returned is of
641      * exactly the correct length.
642      * 
643      * @return this collection as an Array
644      */
645     public org.exolab.castor.builder.binding.xml.ComponentBindingType[] getGroupBinding(
646     ) {
647         org.exolab.castor.builder.binding.xml.ComponentBindingType[] array = new org.exolab.castor.builder.binding.xml.ComponentBindingType[0];
648         return (org.exolab.castor.builder.binding.xml.ComponentBindingType[]) this._groupBindingList.toArray(array);
649     }
650 
651     /**
652      * Method getGroupBindingCount.
653      * 
654      * @return the size of this collection
655      */
656     public int getGroupBindingCount(
657     ) {
658         return this._groupBindingList.size();
659     }
660 
661     /**
662      * Returns the value of field 'name'.
663      * 
664      * @return the value of field 'Name'.
665      */
666     public java.lang.String getName(
667     ) {
668         return this._name;
669     }
670 
671     /**
672      * Method getSimpleTypeBinding.
673      * 
674      * @param index
675      * @throws java.lang.IndexOutOfBoundsException if the index
676      * given is outside the bounds of the collection
677      * @return the value of the
678      * org.exolab.castor.builder.binding.xml.ComponentBindingType
679      * at the given index
680      */
681     public org.exolab.castor.builder.binding.xml.ComponentBindingType getSimpleTypeBinding(
682             final int index)
683     throws java.lang.IndexOutOfBoundsException {
684         // check bounds for index
685         if (index < 0 || index >= this._simpleTypeBindingList.size()) {
686             throw new IndexOutOfBoundsException("getSimpleTypeBinding: Index value '" + index + "' not in range [0.." + (this._simpleTypeBindingList.size() - 1) + "]");
687         }
688 
689         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) _simpleTypeBindingList.get(index);
690     }
691 
692     /**
693      * Method getSimpleTypeBinding.Returns the contents of the
694      * collection in an Array.  <p>Note:  Just in case the
695      * collection contents are changing in another thread, we pass
696      * a 0-length Array of the correct type into the API call. 
697      * This way we <i>know</i> that the Array returned is of
698      * exactly the correct length.
699      * 
700      * @return this collection as an Array
701      */
702     public org.exolab.castor.builder.binding.xml.ComponentBindingType[] getSimpleTypeBinding(
703     ) {
704         org.exolab.castor.builder.binding.xml.ComponentBindingType[] array = new org.exolab.castor.builder.binding.xml.ComponentBindingType[0];
705         return (org.exolab.castor.builder.binding.xml.ComponentBindingType[]) this._simpleTypeBindingList.toArray(array);
706     }
707 
708     /**
709      * Method getSimpleTypeBindingCount.
710      * 
711      * @return the size of this collection
712      */
713     public int getSimpleTypeBindingCount(
714     ) {
715         return this._simpleTypeBindingList.size();
716     }
717 
718     /**
719      * Method isValid.
720      * 
721      * @return true if this object is valid according to the schema
722      */
723     public boolean isValid(
724     ) {
725         try {
726             validate();
727         } catch (org.exolab.castor.xml.ValidationException vex) {
728             return false;
729         }
730         return true;
731     }
732 
733     /**
734      * Method iterateAttributeBinding.
735      * 
736      * @return an Iterator over all possible elements in this
737      * collection
738      */
739     public java.util.Iterator iterateAttributeBinding(
740     ) {
741         return this._attributeBindingList.iterator();
742     }
743 
744     /**
745      * Method iterateComplexTypeBinding.
746      * 
747      * @return an Iterator over all possible elements in this
748      * collection
749      */
750     public java.util.Iterator iterateComplexTypeBinding(
751     ) {
752         return this._complexTypeBindingList.iterator();
753     }
754 
755     /**
756      * Method iterateComponentBinding.
757      * 
758      * @return an Iterator over all possible elements in this
759      * collection
760      */
761     public java.util.Iterator iterateComponentBinding(
762     ) {
763         return this._componentBindingList.iterator();
764     }
765 
766     /**
767      * Method iterateElementBinding.
768      * 
769      * @return an Iterator over all possible elements in this
770      * collection
771      */
772     public java.util.Iterator iterateElementBinding(
773     ) {
774         return this._elementBindingList.iterator();
775     }
776 
777     /**
778      * Method iterateEnumBinding.
779      * 
780      * @return an Iterator over all possible elements in this
781      * collection
782      */
783     public java.util.Iterator iterateEnumBinding(
784     ) {
785         return this._enumBindingList.iterator();
786     }
787 
788     /**
789      * Method iterateGroupBinding.
790      * 
791      * @return an Iterator over all possible elements in this
792      * collection
793      */
794     public java.util.Iterator iterateGroupBinding(
795     ) {
796         return this._groupBindingList.iterator();
797     }
798 
799     /**
800      * Method iterateSimpleTypeBinding.
801      * 
802      * @return an Iterator over all possible elements in this
803      * collection
804      */
805     public java.util.Iterator iterateSimpleTypeBinding(
806     ) {
807         return this._simpleTypeBindingList.iterator();
808     }
809 
810     /**
811      * 
812      * 
813      * @param out
814      * @throws org.exolab.castor.xml.MarshalException if object is
815      * null or if any SAXException is thrown during marshaling
816      * @throws org.exolab.castor.xml.ValidationException if this
817      * object is an invalid instance according to the schema
818      */
819     public void marshal(
820             final java.io.Writer out)
821     throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
822         org.exolab.castor.xml.Marshaller.marshal(this, out);
823     }
824 
825     /**
826      * 
827      * 
828      * @param handler
829      * @throws java.io.IOException if an IOException occurs during
830      * marshaling
831      * @throws org.exolab.castor.xml.ValidationException if this
832      * object is an invalid instance according to the schema
833      * @throws org.exolab.castor.xml.MarshalException if object is
834      * null or if any SAXException is thrown during marshaling
835      */
836     public void marshal(
837             final org.xml.sax.ContentHandler handler)
838     throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
839         org.exolab.castor.xml.Marshaller.marshal(this, handler);
840     }
841 
842     /**
843      */
844     public void removeAllAttributeBinding(
845     ) {
846         this._attributeBindingList.clear();
847     }
848 
849     /**
850      */
851     public void removeAllComplexTypeBinding(
852     ) {
853         this._complexTypeBindingList.clear();
854     }
855 
856     /**
857      */
858     public void removeAllComponentBinding(
859     ) {
860         this._componentBindingList.clear();
861     }
862 
863     /**
864      */
865     public void removeAllElementBinding(
866     ) {
867         this._elementBindingList.clear();
868     }
869 
870     /**
871      */
872     public void removeAllEnumBinding(
873     ) {
874         this._enumBindingList.clear();
875     }
876 
877     /**
878      */
879     public void removeAllGroupBinding(
880     ) {
881         this._groupBindingList.clear();
882     }
883 
884     /**
885      */
886     public void removeAllSimpleTypeBinding(
887     ) {
888         this._simpleTypeBindingList.clear();
889     }
890 
891     /**
892      * Method removeAttributeBinding.
893      * 
894      * @param vAttributeBinding
895      * @return true if the object was removed from the collection.
896      */
897     public boolean removeAttributeBinding(
898             final org.exolab.castor.builder.binding.xml.ComponentBindingType vAttributeBinding) {
899         boolean removed = _attributeBindingList.remove(vAttributeBinding);
900         return removed;
901     }
902 
903     /**
904      * Method removeAttributeBindingAt.
905      * 
906      * @param index
907      * @return the element removed from the collection
908      */
909     public org.exolab.castor.builder.binding.xml.ComponentBindingType removeAttributeBindingAt(
910             final int index) {
911         java.lang.Object obj = this._attributeBindingList.remove(index);
912         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) obj;
913     }
914 
915     /**
916      * Method removeComplexTypeBinding.
917      * 
918      * @param vComplexTypeBinding
919      * @return true if the object was removed from the collection.
920      */
921     public boolean removeComplexTypeBinding(
922             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComplexTypeBinding) {
923         boolean removed = _complexTypeBindingList.remove(vComplexTypeBinding);
924         return removed;
925     }
926 
927     /**
928      * Method removeComplexTypeBindingAt.
929      * 
930      * @param index
931      * @return the element removed from the collection
932      */
933     public org.exolab.castor.builder.binding.xml.ComponentBindingType removeComplexTypeBindingAt(
934             final int index) {
935         java.lang.Object obj = this._complexTypeBindingList.remove(index);
936         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) obj;
937     }
938 
939     /**
940      * Method removeComponentBinding.
941      * 
942      * @param vComponentBinding
943      * @return true if the object was removed from the collection.
944      */
945     public boolean removeComponentBinding(
946             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComponentBinding) {
947         boolean removed = _componentBindingList.remove(vComponentBinding);
948         return removed;
949     }
950 
951     /**
952      * Method removeComponentBindingAt.
953      * 
954      * @param index
955      * @return the element removed from the collection
956      */
957     public org.exolab.castor.builder.binding.xml.ComponentBindingType removeComponentBindingAt(
958             final int index) {
959         java.lang.Object obj = this._componentBindingList.remove(index);
960         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) obj;
961     }
962 
963     /**
964      * Method removeElementBinding.
965      * 
966      * @param vElementBinding
967      * @return true if the object was removed from the collection.
968      */
969     public boolean removeElementBinding(
970             final org.exolab.castor.builder.binding.xml.ComponentBindingType vElementBinding) {
971         boolean removed = _elementBindingList.remove(vElementBinding);
972         return removed;
973     }
974 
975     /**
976      * Method removeElementBindingAt.
977      * 
978      * @param index
979      * @return the element removed from the collection
980      */
981     public org.exolab.castor.builder.binding.xml.ComponentBindingType removeElementBindingAt(
982             final int index) {
983         java.lang.Object obj = this._elementBindingList.remove(index);
984         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) obj;
985     }
986 
987     /**
988      * Method removeEnumBinding.
989      * 
990      * @param vEnumBinding
991      * @return true if the object was removed from the collection.
992      */
993     public boolean removeEnumBinding(
994             final org.exolab.castor.builder.binding.xml.ComponentBindingType vEnumBinding) {
995         boolean removed = _enumBindingList.remove(vEnumBinding);
996         return removed;
997     }
998 
999     /**
1000      * Method removeEnumBindingAt.
1001      * 
1002      * @param index
1003      * @return the element removed from the collection
1004      */
1005     public org.exolab.castor.builder.binding.xml.ComponentBindingType removeEnumBindingAt(
1006             final int index) {
1007         java.lang.Object obj = this._enumBindingList.remove(index);
1008         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) obj;
1009     }
1010 
1011     /**
1012      * Method removeGroupBinding.
1013      * 
1014      * @param vGroupBinding
1015      * @return true if the object was removed from the collection.
1016      */
1017     public boolean removeGroupBinding(
1018             final org.exolab.castor.builder.binding.xml.ComponentBindingType vGroupBinding) {
1019         boolean removed = _groupBindingList.remove(vGroupBinding);
1020         return removed;
1021     }
1022 
1023     /**
1024      * Method removeGroupBindingAt.
1025      * 
1026      * @param index
1027      * @return the element removed from the collection
1028      */
1029     public org.exolab.castor.builder.binding.xml.ComponentBindingType removeGroupBindingAt(
1030             final int index) {
1031         java.lang.Object obj = this._groupBindingList.remove(index);
1032         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) obj;
1033     }
1034 
1035     /**
1036      * Method removeSimpleTypeBinding.
1037      * 
1038      * @param vSimpleTypeBinding
1039      * @return true if the object was removed from the collection.
1040      */
1041     public boolean removeSimpleTypeBinding(
1042             final org.exolab.castor.builder.binding.xml.ComponentBindingType vSimpleTypeBinding) {
1043         boolean removed = _simpleTypeBindingList.remove(vSimpleTypeBinding);
1044         return removed;
1045     }
1046 
1047     /**
1048      * Method removeSimpleTypeBindingAt.
1049      * 
1050      * @param index
1051      * @return the element removed from the collection
1052      */
1053     public org.exolab.castor.builder.binding.xml.ComponentBindingType removeSimpleTypeBindingAt(
1054             final int index) {
1055         java.lang.Object obj = this._simpleTypeBindingList.remove(index);
1056         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) obj;
1057     }
1058 
1059     /**
1060      * 
1061      * 
1062      * @param index
1063      * @param vAttributeBinding
1064      * @throws java.lang.IndexOutOfBoundsException if the index
1065      * given is outside the bounds of the collection
1066      */
1067     public void setAttributeBinding(
1068             final int index,
1069             final org.exolab.castor.builder.binding.xml.ComponentBindingType vAttributeBinding)
1070     throws java.lang.IndexOutOfBoundsException {
1071         // check bounds for index
1072         if (index < 0 || index >= this._attributeBindingList.size()) {
1073             throw new IndexOutOfBoundsException("setAttributeBinding: Index value '" + index + "' not in range [0.." + (this._attributeBindingList.size() - 1) + "]");
1074         }
1075 
1076         this._attributeBindingList.set(index, vAttributeBinding);
1077     }
1078 
1079     /**
1080      * 
1081      * 
1082      * @param vAttributeBindingArray
1083      */
1084     public void setAttributeBinding(
1085             final org.exolab.castor.builder.binding.xml.ComponentBindingType[] vAttributeBindingArray) {
1086         //-- copy array
1087         _attributeBindingList.clear();
1088 
1089         for (int i = 0; i < vAttributeBindingArray.length; i++) {
1090                 this._attributeBindingList.add(vAttributeBindingArray[i]);
1091         }
1092     }
1093 
1094     /**
1095      * 
1096      * 
1097      * @param index
1098      * @param vComplexTypeBinding
1099      * @throws java.lang.IndexOutOfBoundsException if the index
1100      * given is outside the bounds of the collection
1101      */
1102     public void setComplexTypeBinding(
1103             final int index,
1104             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComplexTypeBinding)
1105     throws java.lang.IndexOutOfBoundsException {
1106         // check bounds for index
1107         if (index < 0 || index >= this._complexTypeBindingList.size()) {
1108             throw new IndexOutOfBoundsException("setComplexTypeBinding: Index value '" + index + "' not in range [0.." + (this._complexTypeBindingList.size() - 1) + "]");
1109         }
1110 
1111         this._complexTypeBindingList.set(index, vComplexTypeBinding);
1112     }
1113 
1114     /**
1115      * 
1116      * 
1117      * @param vComplexTypeBindingArray
1118      */
1119     public void setComplexTypeBinding(
1120             final org.exolab.castor.builder.binding.xml.ComponentBindingType[] vComplexTypeBindingArray) {
1121         //-- copy array
1122         _complexTypeBindingList.clear();
1123 
1124         for (int i = 0; i < vComplexTypeBindingArray.length; i++) {
1125                 this._complexTypeBindingList.add(vComplexTypeBindingArray[i]);
1126         }
1127     }
1128 
1129     /**
1130      * 
1131      * 
1132      * @param index
1133      * @param vComponentBinding
1134      * @throws java.lang.IndexOutOfBoundsException if the index
1135      * given is outside the bounds of the collection
1136      */
1137     public void setComponentBinding(
1138             final int index,
1139             final org.exolab.castor.builder.binding.xml.ComponentBindingType vComponentBinding)
1140     throws java.lang.IndexOutOfBoundsException {
1141         // check bounds for index
1142         if (index < 0 || index >= this._componentBindingList.size()) {
1143             throw new IndexOutOfBoundsException("setComponentBinding: Index value '" + index + "' not in range [0.." + (this._componentBindingList.size() - 1) + "]");
1144         }
1145 
1146         this._componentBindingList.set(index, vComponentBinding);
1147     }
1148 
1149     /**
1150      * 
1151      * 
1152      * @param vComponentBindingArray
1153      */
1154     public void setComponentBinding(
1155             final org.exolab.castor.builder.binding.xml.ComponentBindingType[] vComponentBindingArray) {
1156         //-- copy array
1157         _componentBindingList.clear();
1158 
1159         for (int i = 0; i < vComponentBindingArray.length; i++) {
1160                 this._componentBindingList.add(vComponentBindingArray[i]);
1161         }
1162     }
1163 
1164     /**
1165      * Sets the value of field 'componentBindingTypeChoice'.
1166      * 
1167      * @param componentBindingTypeChoice the value of field
1168      * 'componentBindingTypeChoice'.
1169      */
1170     public void setComponentBindingTypeChoice(
1171             final org.exolab.castor.builder.binding.xml.ComponentBindingTypeChoice componentBindingTypeChoice) {
1172         this._componentBindingTypeChoice = componentBindingTypeChoice;
1173     }
1174 
1175     /**
1176      * 
1177      * 
1178      * @param index
1179      * @param vElementBinding
1180      * @throws java.lang.IndexOutOfBoundsException if the index
1181      * given is outside the bounds of the collection
1182      */
1183     public void setElementBinding(
1184             final int index,
1185             final org.exolab.castor.builder.binding.xml.ComponentBindingType vElementBinding)
1186     throws java.lang.IndexOutOfBoundsException {
1187         // check bounds for index
1188         if (index < 0 || index >= this._elementBindingList.size()) {
1189             throw new IndexOutOfBoundsException("setElementBinding: Index value '" + index + "' not in range [0.." + (this._elementBindingList.size() - 1) + "]");
1190         }
1191 
1192         this._elementBindingList.set(index, vElementBinding);
1193     }
1194 
1195     /**
1196      * 
1197      * 
1198      * @param vElementBindingArray
1199      */
1200     public void setElementBinding(
1201             final org.exolab.castor.builder.binding.xml.ComponentBindingType[] vElementBindingArray) {
1202         //-- copy array
1203         _elementBindingList.clear();
1204 
1205         for (int i = 0; i < vElementBindingArray.length; i++) {
1206                 this._elementBindingList.add(vElementBindingArray[i]);
1207         }
1208     }
1209 
1210     /**
1211      * 
1212      * 
1213      * @param index
1214      * @param vEnumBinding
1215      * @throws java.lang.IndexOutOfBoundsException if the index
1216      * given is outside the bounds of the collection
1217      */
1218     public void setEnumBinding(
1219             final int index,
1220             final org.exolab.castor.builder.binding.xml.ComponentBindingType vEnumBinding)
1221     throws java.lang.IndexOutOfBoundsException {
1222         // check bounds for index
1223         if (index < 0 || index >= this._enumBindingList.size()) {
1224             throw new IndexOutOfBoundsException("setEnumBinding: Index value '" + index + "' not in range [0.." + (this._enumBindingList.size() - 1) + "]");
1225         }
1226 
1227         this._enumBindingList.set(index, vEnumBinding);
1228     }
1229 
1230     /**
1231      * 
1232      * 
1233      * @param vEnumBindingArray
1234      */
1235     public void setEnumBinding(
1236             final org.exolab.castor.builder.binding.xml.ComponentBindingType[] vEnumBindingArray) {
1237         //-- copy array
1238         _enumBindingList.clear();
1239 
1240         for (int i = 0; i < vEnumBindingArray.length; i++) {
1241                 this._enumBindingList.add(vEnumBindingArray[i]);
1242         }
1243     }
1244 
1245     /**
1246      * 
1247      * 
1248      * @param index
1249      * @param vGroupBinding
1250      * @throws java.lang.IndexOutOfBoundsException if the index
1251      * given is outside the bounds of the collection
1252      */
1253     public void setGroupBinding(
1254             final int index,
1255             final org.exolab.castor.builder.binding.xml.ComponentBindingType vGroupBinding)
1256     throws java.lang.IndexOutOfBoundsException {
1257         // check bounds for index
1258         if (index < 0 || index >= this._groupBindingList.size()) {
1259             throw new IndexOutOfBoundsException("setGroupBinding: Index value '" + index + "' not in range [0.." + (this._groupBindingList.size() - 1) + "]");
1260         }
1261 
1262         this._groupBindingList.set(index, vGroupBinding);
1263     }
1264 
1265     /**
1266      * 
1267      * 
1268      * @param vGroupBindingArray
1269      */
1270     public void setGroupBinding(
1271             final org.exolab.castor.builder.binding.xml.ComponentBindingType[] vGroupBindingArray) {
1272         //-- copy array
1273         _groupBindingList.clear();
1274 
1275         for (int i = 0; i < vGroupBindingArray.length; i++) {
1276                 this._groupBindingList.add(vGroupBindingArray[i]);
1277         }
1278     }
1279 
1280     /**
1281      * Sets the value of field 'name'.
1282      * 
1283      * @param name the value of field 'name'.
1284      */
1285     public void setName(
1286             final java.lang.String name) {
1287         this._name = name;
1288     }
1289 
1290     /**
1291      * 
1292      * 
1293      * @param index
1294      * @param vSimpleTypeBinding
1295      * @throws java.lang.IndexOutOfBoundsException if the index
1296      * given is outside the bounds of the collection
1297      */
1298     public void setSimpleTypeBinding(
1299             final int index,
1300             final org.exolab.castor.builder.binding.xml.ComponentBindingType vSimpleTypeBinding)
1301     throws java.lang.IndexOutOfBoundsException {
1302         // check bounds for index
1303         if (index < 0 || index >= this._simpleTypeBindingList.size()) {
1304             throw new IndexOutOfBoundsException("setSimpleTypeBinding: Index value '" + index + "' not in range [0.." + (this._simpleTypeBindingList.size() - 1) + "]");
1305         }
1306 
1307         this._simpleTypeBindingList.set(index, vSimpleTypeBinding);
1308     }
1309 
1310     /**
1311      * 
1312      * 
1313      * @param vSimpleTypeBindingArray
1314      */
1315     public void setSimpleTypeBinding(
1316             final org.exolab.castor.builder.binding.xml.ComponentBindingType[] vSimpleTypeBindingArray) {
1317         //-- copy array
1318         _simpleTypeBindingList.clear();
1319 
1320         for (int i = 0; i < vSimpleTypeBindingArray.length; i++) {
1321                 this._simpleTypeBindingList.add(vSimpleTypeBindingArray[i]);
1322         }
1323     }
1324 
1325     /**
1326      * Method unmarshalComponentBindingType.
1327      * 
1328      * @param reader
1329      * @throws org.exolab.castor.xml.MarshalException if object is
1330      * null or if any SAXException is thrown during marshaling
1331      * @throws org.exolab.castor.xml.ValidationException if this
1332      * object is an invalid instance according to the schema
1333      * @return the unmarshaled
1334      * org.exolab.castor.builder.binding.xml.ComponentBindingType
1335      */
1336     public static org.exolab.castor.builder.binding.xml.ComponentBindingType unmarshalComponentBindingType(
1337             final java.io.Reader reader)
1338     throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
1339         return (org.exolab.castor.builder.binding.xml.ComponentBindingType) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.builder.binding.xml.ComponentBindingType.class, reader);
1340     }
1341 
1342     /**
1343      * 
1344      * 
1345      * @throws org.exolab.castor.xml.ValidationException if this
1346      * object is an invalid instance according to the schema
1347      */
1348     public void validate(
1349     )
1350     throws org.exolab.castor.xml.ValidationException {
1351         org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
1352         validator.validate(this);
1353     }
1354 
1355 }