001/*
002 =================== DO NOT EDIT THIS FILE ====================
003 Generated by Modello 1.9.2-SNAPSHOT,
004 any modifications will be overwritten.
005 ==============================================================
006 */
007
008package org.codehaus.modello.test.features;
009
010  //---------------------------------/
011 //- Imported classes and packages -/
012//---------------------------------/
013
014import org.codehaus.modello.test.features.other.PackageNameFeature;
015import org.codehaus.modello.test.features.other.SubInterfaceInPackage;
016
017/**
018 * Test of XML specific parameters: see
019 *         <a
020 * href="http://fisheye.codehaus.org/browse/modello/trunk/modello-plugins/modello-plugin-xml/src/main/java/org/codehaus/modello/plugins/xml/XmlMetadataPlugin.java?r=trunk">XmlMetadataPlugin</a>
021 *         class.
022 *       
023 * 
024 * @version $Revision$ $Date$
025 */
026@SuppressWarnings( "all" )
027public class XmlFeatures
028    implements java.io.Serializable
029{
030
031      //--------------------------/
032     //- Class/Member Variables -/
033    //--------------------------/
034
035    /**
036     * Field attributes.
037     */
038    private XmlAttributes attributes;
039
040    /**
041     * Field attributesDefault.
042     */
043    private XmlAttributes attributesDefault;
044
045    /**
046     * Field content.
047     */
048    private XmlContent content;
049
050    /**
051     * <code>&lt;field&gt;</code>: a text field, by default with
052     * trimming.
053     */
054    private String fieldTrim;
055
056    /**
057     * <code>&lt;field xml.trim="false"&gt;</code>: a text field
058     * without trimming.
059     */
060    private String fieldNoTrim;
061
062    /**
063     * <code>&lt;field&gt;&lt;type&gt;DOM-&gt;&lt;/type&gt;</code>:
064     * a DOM field, by default with trimming (each element in the
065     * DOM tree).
066     */
067    private Object dom;
068
069    /**
070     * <code>&lt;field
071     * xml.trim="false"&gt;&lt;type&gt;DOM-&gt;&lt;/type&gt;</code>:
072     * a DOM field without trimming.
073     */
074    private Object domNoTrim;
075
076    /**
077     * <code>&lt;field xml.tagName="<i>tag-name</i>"&gt;</code>: a
078     * field with an XML name different from the field name.
079     */
080    private String fieldName;
081
082    /**
083     * <code>&lt;field xml.attribute="true"
084     * xml.tagName="<i>tag-name.attribute</i>"&gt;</code>
085     */
086    private String fieldNameAttribute;
087
088    /**
089     * <code>&lt;field xml.format="<i>SimpleDateFormat
090     * specification</i>"&gt;</code>: a Date field with a specified
091     * format.
092     */
093    private java.util.Date dateXmlFormat;
094
095    /**
096     * <code>&lt;field xml.format="long"&gt;</code>: a Date field
097     * as a long value in XML.
098     */
099    private java.util.Date dateLong;
100
101    /**
102     * Field xmlItemsStyleFlats.
103     */
104    private java.util.List<Reference> xmlItemsStyleFlats;
105
106    /**
107     * Field xmlAssociationTagNames.
108     */
109    private java.util.List<Reference> xmlAssociationTagNames;
110
111    /**
112     * Field xmlTagNameAssociation.
113     */
114    private java.util.List<Reference> xmlTagNameAssociation;
115
116    /**
117     * Field xmlTagNameAssociationTagNames.
118     */
119    private java.util.List<Reference> xmlTagNameAssociationTagNames;
120
121    /**
122     * Field xmlFlatAssociationTagNames.
123     */
124    private java.util.List<Reference> xmlFlatAssociationTagNames;
125
126    /**
127     * Field explodeProperties.
128     */
129    private java.util.Properties explodeProperties;
130
131    /**
132     * Field inlineProperties.
133     */
134    private java.util.Properties inlineProperties;
135
136    /**
137     * Field xmlTransientFields.
138     */
139    private XmlTransientFields xmlTransientFields;
140
141    /**
142     * Field xmlFieldsOrder.
143     */
144    private XmlFieldsOrder xmlFieldsOrder;
145
146    /**
147     * Field xsdFeatures.
148     */
149    private XsdFeatures xsdFeatures;
150
151
152      //-----------/
153     //- Methods -/
154    //-----------/
155
156    /**
157     * Method addExplodeProperty.
158     * 
159     * @param key
160     * @param value
161     */
162    public void addExplodeProperty( String key, String value )
163    {
164        getExplodeProperties().put( key, value );
165    } //-- void addExplodeProperty( String, String )
166
167    /**
168     * Method addInlineProperty.
169     * 
170     * @param key
171     * @param value
172     */
173    public void addInlineProperty( String key, String value )
174    {
175        getInlineProperties().put( key, value );
176    } //-- void addInlineProperty( String, String )
177
178    /**
179     * Method addXmlAssociationTagName.
180     * 
181     * @param reference
182     */
183    public void addXmlAssociationTagName( Reference reference )
184    {
185        getXmlAssociationTagNames().add( reference );
186    } //-- void addXmlAssociationTagName( Reference )
187
188    /**
189     * Method addXmlFlatAssociationTagName.
190     * 
191     * @param reference
192     */
193    public void addXmlFlatAssociationTagName( Reference reference )
194    {
195        getXmlFlatAssociationTagNames().add( reference );
196    } //-- void addXmlFlatAssociationTagName( Reference )
197
198    /**
199     * Method addXmlItemsStyleFlat.
200     * 
201     * @param reference
202     */
203    public void addXmlItemsStyleFlat( Reference reference )
204    {
205        getXmlItemsStyleFlats().add( reference );
206    } //-- void addXmlItemsStyleFlat( Reference )
207
208    /**
209     * Method addXmlTagNameAssociation.
210     * 
211     * @param reference
212     */
213    public void addXmlTagNameAssociation( Reference reference )
214    {
215        getXmlTagNameAssociation().add( reference );
216    } //-- void addXmlTagNameAssociation( Reference )
217
218    /**
219     * Method addXmlTagNameAssociationTagName.
220     * 
221     * @param reference
222     */
223    public void addXmlTagNameAssociationTagName( Reference reference )
224    {
225        getXmlTagNameAssociationTagNames().add( reference );
226    } //-- void addXmlTagNameAssociationTagName( Reference )
227
228    /**
229     * Get the attributes field.
230     * 
231     * @return XmlAttributes
232     */
233    public XmlAttributes getAttributes()
234    {
235        return this.attributes;
236    } //-- XmlAttributes getAttributes()
237
238    /**
239     * Get the attributesDefault field.
240     * 
241     * @return XmlAttributes
242     */
243    public XmlAttributes getAttributesDefault()
244    {
245        return this.attributesDefault;
246    } //-- XmlAttributes getAttributesDefault()
247
248    /**
249     * Get the content field.
250     * 
251     * @return XmlContent
252     */
253    public XmlContent getContent()
254    {
255        return this.content;
256    } //-- XmlContent getContent()
257
258    /**
259     * Get <code>&lt;field xml.format="long"&gt;</code>: a Date
260     * field as a long value in XML.
261     * 
262     * @return Date
263     */
264    public java.util.Date getDateLong()
265    {
266        return this.dateLong;
267    } //-- java.util.Date getDateLong()
268
269    /**
270     * Get <code>&lt;field xml.format="<i>SimpleDateFormat
271     * specification</i>"&gt;</code>: a Date field with a specified
272     * format.
273     * 
274     * @return Date
275     */
276    public java.util.Date getDateXmlFormat()
277    {
278        return this.dateXmlFormat;
279    } //-- java.util.Date getDateXmlFormat()
280
281    /**
282     * Get
283     * <code>&lt;field&gt;&lt;type&gt;DOM-&gt;&lt;/type&gt;</code>:
284     * a DOM field, by default with trimming (each element in the
285     * DOM tree).
286     * 
287     * @return Object
288     */
289    public Object getDom()
290    {
291        return this.dom;
292    } //-- Object getDom()
293
294    /**
295     * Get <code>&lt;field
296     * xml.trim="false"&gt;&lt;type&gt;DOM-&gt;&lt;/type&gt;</code>:
297     * a DOM field without trimming.
298     * 
299     * @return Object
300     */
301    public Object getDomNoTrim()
302    {
303        return this.domNoTrim;
304    } //-- Object getDomNoTrim()
305
306    /**
307     * Method getExplodeProperties.
308     * 
309     * @return Properties
310     */
311    public java.util.Properties getExplodeProperties()
312    {
313        if ( this.explodeProperties == null )
314        {
315            this.explodeProperties = new org.codehaus.modello.OrderedProperties();
316        }
317
318        return this.explodeProperties;
319    } //-- java.util.Properties getExplodeProperties()
320
321    /**
322     * Get <code>&lt;field
323     * xml.tagName="<i>tag-name</i>"&gt;</code>: a field with an
324     * XML name different from the field name.
325     * 
326     * @return String
327     */
328    public String getFieldName()
329    {
330        return this.fieldName;
331    } //-- String getFieldName()
332
333    /**
334     * Get <code>&lt;field xml.attribute="true"
335     * xml.tagName="<i>tag-name.attribute</i>"&gt;</code>
336     * 
337     * @return String
338     */
339    public String getFieldNameAttribute()
340    {
341        return this.fieldNameAttribute;
342    } //-- String getFieldNameAttribute()
343
344    /**
345     * Get <code>&lt;field xml.trim="false"&gt;</code>: a text
346     * field without trimming.
347     * 
348     * @return String
349     */
350    public String getFieldNoTrim()
351    {
352        return this.fieldNoTrim;
353    } //-- String getFieldNoTrim()
354
355    /**
356     * Get <code>&lt;field&gt;</code>: a text field, by default
357     * with trimming.
358     * 
359     * @return String
360     */
361    public String getFieldTrim()
362    {
363        return this.fieldTrim;
364    } //-- String getFieldTrim()
365
366    /**
367     * Method getInlineProperties.
368     * 
369     * @return Properties
370     */
371    public java.util.Properties getInlineProperties()
372    {
373        if ( this.inlineProperties == null )
374        {
375            this.inlineProperties = new org.codehaus.modello.OrderedProperties();
376        }
377
378        return this.inlineProperties;
379    } //-- java.util.Properties getInlineProperties()
380
381    /**
382     * Method getXmlAssociationTagNames.
383     * 
384     * @return List
385     */
386    public java.util.List<Reference> getXmlAssociationTagNames()
387    {
388        if ( this.xmlAssociationTagNames == null )
389        {
390            this.xmlAssociationTagNames = new java.util.ArrayList<Reference>();
391        }
392
393        return this.xmlAssociationTagNames;
394    } //-- java.util.List<Reference> getXmlAssociationTagNames()
395
396    /**
397     * Get the xmlFieldsOrder field.
398     * 
399     * @return XmlFieldsOrder
400     */
401    public XmlFieldsOrder getXmlFieldsOrder()
402    {
403        return this.xmlFieldsOrder;
404    } //-- XmlFieldsOrder getXmlFieldsOrder()
405
406    /**
407     * Method getXmlFlatAssociationTagNames.
408     * 
409     * @return List
410     */
411    public java.util.List<Reference> getXmlFlatAssociationTagNames()
412    {
413        if ( this.xmlFlatAssociationTagNames == null )
414        {
415            this.xmlFlatAssociationTagNames = new java.util.ArrayList<Reference>();
416        }
417
418        return this.xmlFlatAssociationTagNames;
419    } //-- java.util.List<Reference> getXmlFlatAssociationTagNames()
420
421    /**
422     * Method getXmlItemsStyleFlats.
423     * 
424     * @return List
425     */
426    public java.util.List<Reference> getXmlItemsStyleFlats()
427    {
428        if ( this.xmlItemsStyleFlats == null )
429        {
430            this.xmlItemsStyleFlats = new java.util.ArrayList<Reference>();
431        }
432
433        return this.xmlItemsStyleFlats;
434    } //-- java.util.List<Reference> getXmlItemsStyleFlats()
435
436    /**
437     * Method getXmlTagNameAssociation.
438     * 
439     * @return List
440     */
441    public java.util.List<Reference> getXmlTagNameAssociation()
442    {
443        if ( this.xmlTagNameAssociation == null )
444        {
445            this.xmlTagNameAssociation = new java.util.ArrayList<Reference>();
446        }
447
448        return this.xmlTagNameAssociation;
449    } //-- java.util.List<Reference> getXmlTagNameAssociation()
450
451    /**
452     * Method getXmlTagNameAssociationTagNames.
453     * 
454     * @return List
455     */
456    public java.util.List<Reference> getXmlTagNameAssociationTagNames()
457    {
458        if ( this.xmlTagNameAssociationTagNames == null )
459        {
460            this.xmlTagNameAssociationTagNames = new java.util.ArrayList<Reference>();
461        }
462
463        return this.xmlTagNameAssociationTagNames;
464    } //-- java.util.List<Reference> getXmlTagNameAssociationTagNames()
465
466    /**
467     * Get the xmlTransientFields field.
468     * 
469     * @return XmlTransientFields
470     */
471    public XmlTransientFields getXmlTransientFields()
472    {
473        return this.xmlTransientFields;
474    } //-- XmlTransientFields getXmlTransientFields()
475
476    /**
477     * Get the xsdFeatures field.
478     * 
479     * @return XsdFeatures
480     */
481    public XsdFeatures getXsdFeatures()
482    {
483        return this.xsdFeatures;
484    } //-- XsdFeatures getXsdFeatures()
485
486    /**
487     * Method removeXmlAssociationTagName.
488     * 
489     * @param reference
490     */
491    public void removeXmlAssociationTagName( Reference reference )
492    {
493        getXmlAssociationTagNames().remove( reference );
494    } //-- void removeXmlAssociationTagName( Reference )
495
496    /**
497     * Method removeXmlFlatAssociationTagName.
498     * 
499     * @param reference
500     */
501    public void removeXmlFlatAssociationTagName( Reference reference )
502    {
503        getXmlFlatAssociationTagNames().remove( reference );
504    } //-- void removeXmlFlatAssociationTagName( Reference )
505
506    /**
507     * Method removeXmlItemsStyleFlat.
508     * 
509     * @param reference
510     */
511    public void removeXmlItemsStyleFlat( Reference reference )
512    {
513        getXmlItemsStyleFlats().remove( reference );
514    } //-- void removeXmlItemsStyleFlat( Reference )
515
516    /**
517     * Method removeXmlTagNameAssociation.
518     * 
519     * @param reference
520     */
521    public void removeXmlTagNameAssociation( Reference reference )
522    {
523        getXmlTagNameAssociation().remove( reference );
524    } //-- void removeXmlTagNameAssociation( Reference )
525
526    /**
527     * Method removeXmlTagNameAssociationTagName.
528     * 
529     * @param reference
530     */
531    public void removeXmlTagNameAssociationTagName( Reference reference )
532    {
533        getXmlTagNameAssociationTagNames().remove( reference );
534    } //-- void removeXmlTagNameAssociationTagName( Reference )
535
536    /**
537     * Set the attributes field.
538     * 
539     * @param attributes
540     */
541    public void setAttributes( XmlAttributes attributes )
542    {
543        this.attributes = attributes;
544    } //-- void setAttributes( XmlAttributes )
545
546    /**
547     * Set the attributesDefault field.
548     * 
549     * @param attributesDefault
550     */
551    public void setAttributesDefault( XmlAttributes attributesDefault )
552    {
553        this.attributesDefault = attributesDefault;
554    } //-- void setAttributesDefault( XmlAttributes )
555
556    /**
557     * Set the content field.
558     * 
559     * @param content
560     */
561    public void setContent( XmlContent content )
562    {
563        this.content = content;
564    } //-- void setContent( XmlContent )
565
566    /**
567     * Set <code>&lt;field xml.format="long"&gt;</code>: a Date
568     * field as a long value in XML.
569     * 
570     * @param dateLong
571     */
572    public void setDateLong( java.util.Date dateLong )
573    {
574        this.dateLong = dateLong;
575    } //-- void setDateLong( java.util.Date )
576
577    /**
578     * Set <code>&lt;field xml.format="<i>SimpleDateFormat
579     * specification</i>"&gt;</code>: a Date field with a specified
580     * format.
581     * 
582     * @param dateXmlFormat
583     */
584    public void setDateXmlFormat( java.util.Date dateXmlFormat )
585    {
586        this.dateXmlFormat = dateXmlFormat;
587    } //-- void setDateXmlFormat( java.util.Date )
588
589    /**
590     * Set
591     * <code>&lt;field&gt;&lt;type&gt;DOM-&gt;&lt;/type&gt;</code>:
592     * a DOM field, by default with trimming (each element in the
593     * DOM tree).
594     * 
595     * @param dom
596     */
597    public void setDom( Object dom )
598    {
599        this.dom = dom;
600    } //-- void setDom( Object )
601
602    /**
603     * Set <code>&lt;field
604     * xml.trim="false"&gt;&lt;type&gt;DOM-&gt;&lt;/type&gt;</code>:
605     * a DOM field without trimming.
606     * 
607     * @param domNoTrim
608     */
609    public void setDomNoTrim( Object domNoTrim )
610    {
611        this.domNoTrim = domNoTrim;
612    } //-- void setDomNoTrim( Object )
613
614    /**
615     * Set <code>&lt;type&gt;Properties&lt;/type&gt;&lt;association
616     * xml.mapStyle="explode"&gt;</code>.
617     * 
618     * @param explodeProperties
619     */
620    public void setExplodeProperties( java.util.Properties explodeProperties )
621    {
622        this.explodeProperties = explodeProperties;
623    } //-- void setExplodeProperties( java.util.Properties )
624
625    /**
626     * Set <code>&lt;field
627     * xml.tagName="<i>tag-name</i>"&gt;</code>: a field with an
628     * XML name different from the field name.
629     * 
630     * @param fieldName
631     */
632    public void setFieldName( String fieldName )
633    {
634        this.fieldName = fieldName;
635    } //-- void setFieldName( String )
636
637    /**
638     * Set <code>&lt;field xml.attribute="true"
639     * xml.tagName="<i>tag-name.attribute</i>"&gt;</code>
640     * 
641     * @param fieldNameAttribute
642     */
643    public void setFieldNameAttribute( String fieldNameAttribute )
644    {
645        this.fieldNameAttribute = fieldNameAttribute;
646    } //-- void setFieldNameAttribute( String )
647
648    /**
649     * Set <code>&lt;field xml.trim="false"&gt;</code>: a text
650     * field without trimming.
651     * 
652     * @param fieldNoTrim
653     */
654    public void setFieldNoTrim( String fieldNoTrim )
655    {
656        this.fieldNoTrim = fieldNoTrim;
657    } //-- void setFieldNoTrim( String )
658
659    /**
660     * Set <code>&lt;field&gt;</code>: a text field, by default
661     * with trimming.
662     * 
663     * @param fieldTrim
664     */
665    public void setFieldTrim( String fieldTrim )
666    {
667        this.fieldTrim = fieldTrim;
668    } //-- void setFieldTrim( String )
669
670    /**
671     * Set <code>&lt;type&gt;Properties&lt;/type&gt;&lt;association
672     * xml.mapStyle="inline"&gt;</code> (default).
673     * 
674     * @param inlineProperties
675     */
676    public void setInlineProperties( java.util.Properties inlineProperties )
677    {
678        this.inlineProperties = inlineProperties;
679    } //-- void setInlineProperties( java.util.Properties )
680
681    /**
682     * Set <code>&lt;field&gt;&lt;association
683     * xml.tagName="<i>association.tag-name</i>"&gt;&lt;/field&gt;</code>:
684     *             a list with an XML name different from
685     * calculated singular of tag name.
686     * 
687     * @param xmlAssociationTagNames
688     */
689    public void setXmlAssociationTagNames( java.util.List<Reference> xmlAssociationTagNames )
690    {
691        this.xmlAssociationTagNames = xmlAssociationTagNames;
692    } //-- void setXmlAssociationTagNames( java.util.List )
693
694    /**
695     * Set the xmlFieldsOrder field.
696     * 
697     * @param xmlFieldsOrder
698     */
699    public void setXmlFieldsOrder( XmlFieldsOrder xmlFieldsOrder )
700    {
701        this.xmlFieldsOrder = xmlFieldsOrder;
702    } //-- void setXmlFieldsOrder( XmlFieldsOrder )
703
704    /**
705     * Set <code>&lt;field&gt;&lt;association xml.itemsStyle="flat"
706     * xml.tagName="<i>association.tag-name</i>"&gt;&lt;/field&gt;</code>:
707     *             a flat list with an XML name different from
708     * calculated singular of tag name.
709     * 
710     * @param xmlFlatAssociationTagNames
711     */
712    public void setXmlFlatAssociationTagNames( java.util.List<Reference> xmlFlatAssociationTagNames )
713    {
714        this.xmlFlatAssociationTagNames = xmlFlatAssociationTagNames;
715    } //-- void setXmlFlatAssociationTagNames( java.util.List )
716
717    /**
718     * Set <code>&lt;field&gt;&lt;association
719     * xml.listStyle="flat"/&gt;&lt;/field&gt;</code>: a "flat"
720     * list, ie without enclosing tag.
721     * 
722     * @param xmlItemsStyleFlats
723     */
724    public void setXmlItemsStyleFlats( java.util.List<Reference> xmlItemsStyleFlats )
725    {
726        this.xmlItemsStyleFlats = xmlItemsStyleFlats;
727    } //-- void setXmlItemsStyleFlats( java.util.List )
728
729    /**
730     * Set <code>&lt;field
731     * xml.tagName="field.tag-names"&gt;&lt;association&gt;&lt;/field&gt;</code>:
732     *             a list with an XML name different from field
733     * name.
734     * 
735     * @param xmlTagNameAssociation
736     */
737    public void setXmlTagNameAssociation( java.util.List<Reference> xmlTagNameAssociation )
738    {
739        this.xmlTagNameAssociation = xmlTagNameAssociation;
740    } //-- void setXmlTagNameAssociation( java.util.List )
741
742    /**
743     * Set <code>&lt;field
744     * xml.tagName="field.tag-name"&gt;&lt;association
745     * xml.tagName="association.tag-name"&gt;&lt;/field&gt;</code>:
746     *             a list with an XML name different from field
747     * name and an XML name different from calculated singular of
748     * tag name.
749     * 
750     * @param xmlTagNameAssociationTagNames
751     */
752    public void setXmlTagNameAssociationTagNames( java.util.List<Reference> xmlTagNameAssociationTagNames )
753    {
754        this.xmlTagNameAssociationTagNames = xmlTagNameAssociationTagNames;
755    } //-- void setXmlTagNameAssociationTagNames( java.util.List )
756
757    /**
758     * Set the xmlTransientFields field.
759     * 
760     * @param xmlTransientFields
761     */
762    public void setXmlTransientFields( XmlTransientFields xmlTransientFields )
763    {
764        this.xmlTransientFields = xmlTransientFields;
765    } //-- void setXmlTransientFields( XmlTransientFields )
766
767    /**
768     * Set the xsdFeatures field.
769     * 
770     * @param xsdFeatures
771     */
772    public void setXsdFeatures( XsdFeatures xsdFeatures )
773    {
774        this.xsdFeatures = xsdFeatures;
775    } //-- void setXsdFeatures( XsdFeatures )
776
777}