Package org.datanucleus.metadata
Class PackageMetaData
- java.lang.Object
-
- org.datanucleus.metadata.MetaData
-
- org.datanucleus.metadata.PackageMetaData
-
- All Implemented Interfaces:
java.io.Serializable
public class PackageMetaData extends MetaData
Representation of the Meta-Data for a package.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.StringcatalogCatalog name for all classes in this packageprotected java.util.List<ClassMetaData>classesList of classes (uses List to retain positioning).protected java.util.List<InterfaceMetaData>interfacesList of interfaces (uses List to retain positioning).protected java.lang.StringnamePackage nameprotected java.lang.StringschemaSchema name for all classes in this packageprotected java.util.Collection<SequenceMetaData>sequencesSequence generators.private static longserialVersionUIDprotected java.util.Collection<TableGeneratorMetaData>tableGeneratorsTable generators.-
Fields inherited from class org.datanucleus.metadata.MetaData
EXTENSION_CLASS_CREATETIMESTAMP, EXTENSION_CLASS_CREATETIMESTAMP_COLUMN_NAME, EXTENSION_CLASS_CREATEUSER, EXTENSION_CLASS_CREATEUSER_COLUMN_LENGTH, EXTENSION_CLASS_CREATEUSER_COLUMN_NAME, EXTENSION_CLASS_MULTITENANCY_COLUMN_LENGTH, EXTENSION_CLASS_MULTITENANCY_COLUMN_NAME, EXTENSION_CLASS_MULTITENANCY_JDBC_TYPE, EXTENSION_CLASS_MULTITENANT, EXTENSION_CLASS_READ_ONLY, EXTENSION_CLASS_SOFTDELETE, EXTENSION_CLASS_SOFTDELETE_COLUMN_NAME, EXTENSION_CLASS_UPDATETIMESTAMP, EXTENSION_CLASS_UPDATETIMESTAMP_COLUMN_NAME, EXTENSION_CLASS_UPDATEUSER, EXTENSION_CLASS_UPDATEUSER_COLUMN_LENGTH, EXTENSION_CLASS_UPDATEUSER_COLUMN_NAME, EXTENSION_CLASS_VERSION_FIELD_NAME, EXTENSION_CLASS_VIEW_DEFINITION, EXTENSION_CLASS_VIEW_IMPORTS, EXTENSION_INDEX_COLUMN_ORDERING, EXTENSION_MEMBER_CACHEABLE, EXTENSION_MEMBER_CALENDAR_ONE_COLUMN, EXTENSION_MEMBER_CASCADE_ATTACH, EXTENSION_MEMBER_CASCADE_DETACH, EXTENSION_MEMBER_CASCADE_PERSIST, EXTENSION_MEMBER_CASCADE_REFRESH, EXTENSION_MEMBER_COMPARATOR_NAME, EXTENSION_MEMBER_CONTAINER_ALLOW_NULLS, EXTENSION_MEMBER_CREATE_TIMESTAMP, EXTENSION_MEMBER_CREATE_USER, EXTENSION_MEMBER_ENUM_VALUE_GETTER, EXTENSION_MEMBER_IMPLEMENTATION_CLASSES, EXTENSION_MEMBER_INSERTABLE, EXTENSION_MEMBER_KEY_IMPLEMENTATION_CLASSES, EXTENSION_MEMBER_LIST_ORDERING, EXTENSION_MEMBER_RELATION_DISCRIM_COLUMN, EXTENSION_MEMBER_RELATION_DISCRIM_PK, EXTENSION_MEMBER_RELATION_DISCRIM_VALUE, EXTENSION_MEMBER_STRATEGY_WHEN_NOTNULL, EXTENSION_MEMBER_TYPE_CONVERTER_DISABLED, EXTENSION_MEMBER_TYPE_CONVERTER_NAME, EXTENSION_MEMBER_UPDATE_TIMESTAMP, EXTENSION_MEMBER_UPDATE_USER, EXTENSION_MEMBER_UPDATEABLE, EXTENSION_MEMBER_VALUE_IMPLEMENTATION_CLASSES, EXTENSION_VERSION_NUMBER_INITIAL_VALUE, extensions, metaDataState, parent, VENDOR_NAME
-
-
Constructor Summary
Constructors Constructor Description PackageMetaData(java.lang.String name)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ClassMetaDataaddClass(ClassMetaData cmd)Method to add a class Meta-Data to the package.InterfaceMetaDataaddInterface(InterfaceMetaData imd)Method to add a interface Meta-Data to the package.voidaddSequence(SequenceMetaData seqmd)Method to add a sequence Meta-Data to the package.voidaddTableGenerator(TableGeneratorMetaData tabmd)Method to add a TableGenerator Meta-Data to the package.java.lang.StringgetCatalog()Accessor for the catalog name for all classes in this packageClassMetaDatagetClass(int i)Accessor for the Meta-Data of a class in this package.ClassMetaDatagetClass(java.lang.String name)Accessor for the Meta-Data of a class with the specified name.FileMetaDatagetFileMetaData()Accessor for the parent FileMetaData.InterfaceMetaDatagetInterface(int i)Accessor for the Meta-Data of a interface in this package.InterfaceMetaDatagetInterface(java.lang.String name)Accessor for the Meta-Data of an interface with the specified name.java.lang.StringgetName()Accessor for the name of the packageintgetNoOfClasses()Accessor for the number of classes.intgetNoOfInterfaces()Accessor for the number of interfaces.intgetNoOfSequences()Accessor for the number of sequences.intgetNoOfTableGenerators()Accessor for the number of table generators.java.lang.StringgetSchema()Accessor for the schema name for all classes in this packageSequenceMetaDatagetSequence(java.lang.String name)Accessor for the Meta-Data of an sequence with the specified name.SequenceMetaData[]getSequences()Accessor for the Meta-Data for the sequences in this package.TableGeneratorMetaDatagetTableGenerator(java.lang.String name)Accessor for the Meta-Data of a table generator with the specified name.TableGeneratorMetaData[]getTableGenerators()Accessor for the Meta-Data for the table generators in this package.voidinitialise(ClassLoaderResolver clr)ClassMetaDatanewClassMetaData(java.lang.String className)Method to create a new class metadata, add it, and return it.InterfaceMetaDatanewInterfaceMetaData(java.lang.String intfName)Method to create a new interface metadata, add it, and return it.SequenceMetaDatanewSequenceMetaData(java.lang.String seqName, java.lang.String seqStrategy)Method to create a new Sequence metadata, add it, and return it.TableGeneratorMetaDatanewTableGeneratorMetaData(java.lang.String name)Method to create a new TableGenerator metadata, add it and return it.voidremoveClass(AbstractClassMetaData cmd)Method to remove a class from this metadata definition.PackageMetaDatasetCatalog(java.lang.String catalog)PackageMetaDatasetSchema(java.lang.String schema)-
Methods inherited from class org.datanucleus.metadata.MetaData
addExtension, addExtensions, getExtensions, getMetaDataManager, getNoOfExtensions, getParent, getValueForExtension, getValuesForExtension, hasExtension, isInitialised, isPopulated, isUsed, removeExtension, setExtensions, setInitialised, setParent, setPopulated, setUsed
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
interfaces
protected java.util.List<InterfaceMetaData> interfaces
List of interfaces (uses List to retain positioning).
-
classes
protected java.util.List<ClassMetaData> classes
List of classes (uses List to retain positioning).
-
sequences
protected java.util.Collection<SequenceMetaData> sequences
Sequence generators.
-
tableGenerators
protected java.util.Collection<TableGeneratorMetaData> tableGenerators
Table generators.
-
name
protected final java.lang.String name
Package name
-
catalog
protected java.lang.String catalog
Catalog name for all classes in this package
-
schema
protected java.lang.String schema
Schema name for all classes in this package
-
-
Method Detail
-
initialise
public void initialise(ClassLoaderResolver clr)
- Overrides:
initialisein classMetaData
-
getFileMetaData
public FileMetaData getFileMetaData()
Accessor for the parent FileMetaData.- Returns:
- File MetaData.
-
getName
public java.lang.String getName()
Accessor for the name of the package- Returns:
- package name
-
getCatalog
public java.lang.String getCatalog()
Accessor for the catalog name for all classes in this package- Returns:
- Catalog name to use.
-
getSchema
public java.lang.String getSchema()
Accessor for the schema name for all classes in this package- Returns:
- Schema name to use.
-
getNoOfInterfaces
public int getNoOfInterfaces()
Accessor for the number of interfaces.- Returns:
- Number of interfaces.
-
getInterface
public InterfaceMetaData getInterface(int i)
Accessor for the Meta-Data of a interface in this package.- Parameters:
i- interface index- Returns:
- Meta-Data for the interface
-
getInterface
public InterfaceMetaData getInterface(java.lang.String name)
Accessor for the Meta-Data of an interface with the specified name.- Parameters:
name- the name of the interface- Returns:
- Meta-Data for the interface
-
getNoOfClasses
public int getNoOfClasses()
Accessor for the number of classes.- Returns:
- Number of classes.
-
getClass
public ClassMetaData getClass(int i)
Accessor for the Meta-Data of a class in this package.- Parameters:
i- class index- Returns:
- Meta-Data for the class
-
getClass
public ClassMetaData getClass(java.lang.String name)
Accessor for the Meta-Data of a class with the specified name.- Parameters:
name- the name of the class- Returns:
- Meta-Data for the class.
-
getNoOfSequences
public int getNoOfSequences()
Accessor for the number of sequences.- Returns:
- Number of sequences.
-
getSequences
public SequenceMetaData[] getSequences()
Accessor for the Meta-Data for the sequences in this package.- Returns:
- Meta-Data for the sequences
-
getSequence
public SequenceMetaData getSequence(java.lang.String name)
Accessor for the Meta-Data of an sequence with the specified name.- Parameters:
name- the name of the sequence- Returns:
- Meta-Data for the sequence
-
getNoOfTableGenerators
public int getNoOfTableGenerators()
Accessor for the number of table generators.- Returns:
- Number of table generators.
-
getTableGenerators
public TableGeneratorMetaData[] getTableGenerators()
Accessor for the Meta-Data for the table generators in this package.- Returns:
- Meta-Data for the table generators
-
getTableGenerator
public TableGeneratorMetaData getTableGenerator(java.lang.String name)
Accessor for the Meta-Data of a table generator with the specified name.- Parameters:
name- the name of the table generator- Returns:
- Meta-Data for the table generator
-
addClass
public ClassMetaData addClass(ClassMetaData cmd)
Method to add a class Meta-Data to the package.- Parameters:
cmd- Meta-Data for the class- Returns:
- The class metadata that was added (or already existing)
-
removeClass
public void removeClass(AbstractClassMetaData cmd)
Method to remove a class from this metadata definition. This is of use where we read in metadata only to find that the class that it pertains to is not in the CLASSPATH.- Parameters:
cmd- Metadata for the class to remove
-
newClassMetaData
public ClassMetaData newClassMetaData(java.lang.String className)
Method to create a new class metadata, add it, and return it.- Parameters:
className- Name of the class (in this package)- Returns:
- The class metadata
-
addInterface
public InterfaceMetaData addInterface(InterfaceMetaData imd)
Method to add a interface Meta-Data to the package.- Parameters:
imd- Meta-Data for the interface- Returns:
- The interface metadata that was added (or already existing)
-
newInterfaceMetaData
public InterfaceMetaData newInterfaceMetaData(java.lang.String intfName)
Method to create a new interface metadata, add it, and return it.- Parameters:
intfName- Name of the interface (in this package)- Returns:
- The interface metadata
-
addSequence
public void addSequence(SequenceMetaData seqmd)
Method to add a sequence Meta-Data to the package.- Parameters:
seqmd- Meta-Data for the sequence
-
newSequenceMetaData
public SequenceMetaData newSequenceMetaData(java.lang.String seqName, java.lang.String seqStrategy)
Method to create a new Sequence metadata, add it, and return it.- Parameters:
seqName- Name of the sequenceseqStrategy- Strategy for the sequence- Returns:
- The sequence metadata
-
addTableGenerator
public void addTableGenerator(TableGeneratorMetaData tabmd)
Method to add a TableGenerator Meta-Data to the package.- Parameters:
tabmd- Meta-Data for the TableGenerator
-
newTableGeneratorMetaData
public TableGeneratorMetaData newTableGeneratorMetaData(java.lang.String name)
Method to create a new TableGenerator metadata, add it and return it.- Parameters:
name- Name of the table generator- Returns:
- The metadata
-
setCatalog
public PackageMetaData setCatalog(java.lang.String catalog)
-
setSchema
public PackageMetaData setSchema(java.lang.String schema)
-
-