Class ArrayMetaData

  • All Implemented Interfaces:
    java.io.Serializable

    public class ArrayMetaData
    extends ContainerMetaData
    Representation of the Meta-Data for an Array.
    See Also:
    Serialized Form
    • Field Detail

      • element

        protected ContainerComponent element
        Representation of the element of the array.
      • mayContainPersistableElements

        protected boolean mayContainPersistableElements
        wether this array may contain persistable elements
    • Constructor Detail

      • ArrayMetaData

        public ArrayMetaData​(ArrayMetaData arrmd)
        Constructor to create a copy of the passed metadata.
        Parameters:
        arrmd - The metadata to copy
      • ArrayMetaData

        public ArrayMetaData()
        Default constructor. Set the fields using setters, before populate().
    • Method Detail

      • populate

        public void populate​(ClassLoaderResolver clr,
                             java.lang.ClassLoader primary)
        Method to populate any defaults, and check the validity of the MetaData.
        Parameters:
        clr - ClassLoaderResolver to use in loading any classes
        primary - the primary ClassLoader to use (or null)
      • elementIsPersistent

        public boolean elementIsPersistent()
      • getElementClassMetaData

        public AbstractClassMetaData getElementClassMetaData​(ClassLoaderResolver clr)
        Convenience accessor for the Element ClassMetaData.
        Parameters:
        clr - ClassLoader resolver (in case we need to initialise it)
        Returns:
        element ClassMetaData
      • mayContainPersistableElements

        public boolean mayContainPersistableElements()
        Returns whether this array may contain persistable elements (as indicated by the user). TODO Remove this. The element-type of the array defines such things and this is not the solution
        Returns:
        whether this array may contain persistable elements
      • isEmbeddedElement

        public boolean isEmbeddedElement()
        Accessor for the embedded-element value
        Returns:
        embedded-element value
      • isSerializedElement

        public boolean isSerializedElement()
        Accessor for the serialized-element tag value
        Returns:
        serialized-element tag value
      • isDependentElement

        public boolean isDependentElement()
        Accessor for The dependent-element attribute indicates that the collection's element contains a reference that is to be deleted if the referring instance is deleted.
        Returns:
        dependent-element tag value
      • getElementType

        public java.lang.String getElementType()
        Accessor for the element implementation types (when element is a reference type).
        Returns:
        element implementation types
      • getElementTypes

        public java.lang.String[] getElementTypes()
      • setElementType

        public ArrayMetaData setElementType​(java.lang.String type)
      • setEmbeddedElement

        public ArrayMetaData setEmbeddedElement​(boolean embedded)
      • setSerializedElement

        public ArrayMetaData setSerializedElement​(boolean serialized)
      • setDependentElement

        public ArrayMetaData setDependentElement​(boolean dependent)
      • getReferencedClassMetaData

        void getReferencedClassMetaData​(java.util.List<AbstractClassMetaData> orderedCmds,
                                        java.util.Set<AbstractClassMetaData> referencedCmds,
                                        ClassLoaderResolver clr)
        Accessor for all AbstractClassMetaData referenced by this array.
        Parameters:
        orderedCmds - List of ordered AbstractClassMetaData objects (added to).
        referencedCmds - Set of all AbstractClassMetaData objects (added to).
        clr - the ClassLoaderResolver
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object