Class AbstractXmlJavaGenerator

  • All Implemented Interfaces:
    org.codehaus.modello.plugin.ModelloGenerator

    public abstract class AbstractXmlJavaGenerator
    extends org.codehaus.modello.plugin.java.AbstractJavaModelloGenerator
    Abstract class for plugins generating Java code for XML representation of the model.
    Author:
    Hervé Boutemy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected boolean strictXmlAttributes  
      • Fields inherited from class org.codehaus.modello.plugin.java.AbstractJavaModelloGenerator

        DEFAULT_DATE_FORMAT, domAsXpp3
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected org.codehaus.modello.model.ModelField getContentField​(java.util.List<org.codehaus.modello.model.ModelField> modelFields)
      Get the field which type is Content if any.
      protected java.util.List<org.codehaus.modello.model.ModelField> getFieldsForXml​(org.codehaus.modello.model.ModelClass modelClass, org.codehaus.modello.model.Version version)
      Return the XML fields of this class, with proper XML order and no XML transient fields.
      protected java.lang.String getFileName​(java.lang.String suffix)  
      protected java.lang.String getValue​(java.lang.String type, java.lang.String initialValue, XmlFieldMetadata xmlFieldMetadata)  
      protected void initialize​(org.codehaus.modello.model.Model model, java.util.Map<java.lang.String,​java.lang.Object> parameters)  
      protected java.lang.String resolveTagName​(java.lang.String fieldTagName, XmlAssociationMetadata xmlAssociationMetadata)
      Resolve XML tag name for an item in an association with many multiplicity.
      protected java.lang.String resolveTagName​(org.codehaus.modello.model.ModelClass modelClass)
      Resolve XML tag name for a class.
      protected java.lang.String resolveTagName​(org.codehaus.modello.model.ModelField modelField, XmlFieldMetadata xmlFieldMetadata)
      Resolve XML tag name for a field.
      protected void writeDateParsingHelper​(org.codehaus.modello.plugin.java.javasource.JSourceCode sc, java.lang.String exception)  
      • Methods inherited from class org.codehaus.modello.plugin.java.AbstractJavaModelloGenerator

        addModelImport, addModelImports, getClasses, getDefaultValue, getJavaDefaultValue, getPrefix, getValueChecker, initHeader, initHeader, isJavaEnabled, isRelevant, isTrackingSupport, newJSourceWriter, suppressAllWarnings
      • Methods inherited from class org.codehaus.modello.plugin.AbstractModelloGenerator

        capitalise, getBuildContext, getEncoding, getFieldsForClass, getGeneratedHeader, getGeneratedVersion, getHeader, getLicenseHeader, getLogger, getModel, getOutputDirectory, getParameter, isClassInModel, isCollection, isEmpty, isInnerAssociation, isMap, isPackageWithVersion, newWriter, newWriter, requireParameter, singular, uncapitalise
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.codehaus.modello.plugin.ModelloGenerator

        generate
    • Field Detail

      • strictXmlAttributes

        protected boolean strictXmlAttributes
    • Constructor Detail

      • AbstractXmlJavaGenerator

        public AbstractXmlJavaGenerator()
    • Method Detail

      • initialize

        protected void initialize​(org.codehaus.modello.model.Model model,
                                  java.util.Map<java.lang.String,​java.lang.Object> parameters)
                           throws org.codehaus.modello.ModelloException
        Overrides:
        initialize in class org.codehaus.modello.plugin.java.AbstractJavaModelloGenerator
        Throws:
        org.codehaus.modello.ModelloException
      • getFileName

        protected java.lang.String getFileName​(java.lang.String suffix)
      • resolveTagName

        protected java.lang.String resolveTagName​(org.codehaus.modello.model.ModelClass modelClass)
        Resolve XML tag name for a class. Note: only root class needs such a resolution.
        Parameters:
        modelClass - the model class
        Returns:
        the XML tag name for the class
      • resolveTagName

        protected java.lang.String resolveTagName​(org.codehaus.modello.model.ModelField modelField,
                                                  XmlFieldMetadata xmlFieldMetadata)
        Resolve XML tag name for a field.
        Parameters:
        modelField - the model field
        xmlFieldMetadata - the XML metadata of the field
        Returns:
        the XML tag name for the field
      • resolveTagName

        protected java.lang.String resolveTagName​(java.lang.String fieldTagName,
                                                  XmlAssociationMetadata xmlAssociationMetadata)
        Resolve XML tag name for an item in an association with many multiplicity.
        Parameters:
        fieldTagName - the XML tag name of the field containing the association
        xmlAssociationMetadata - the XML metadata of the association
        Returns:
        the XML tag name for items
      • getContentField

        protected org.codehaus.modello.model.ModelField getContentField​(java.util.List<org.codehaus.modello.model.ModelField> modelFields)
        Get the field which type is Content if any.
        Parameters:
        modelFields - the fields to check
        Returns:
        the field, or null if no field is Content
      • getFieldsForXml

        protected java.util.List<org.codehaus.modello.model.ModelField> getFieldsForXml​(org.codehaus.modello.model.ModelClass modelClass,
                                                                                        org.codehaus.modello.model.Version version)
        Return the XML fields of this class, with proper XML order and no XML transient fields.
        Parameters:
        modelClass - current class
        version - the version of the class to use
        Returns:
        the list of XML fields of this class
      • getValue

        protected java.lang.String getValue​(java.lang.String type,
                                            java.lang.String initialValue,
                                            XmlFieldMetadata xmlFieldMetadata)
      • writeDateParsingHelper

        protected void writeDateParsingHelper​(org.codehaus.modello.plugin.java.javasource.JSourceCode sc,
                                              java.lang.String exception)