- java.lang.Object
-
- org.datanucleus.metadata.MetaData
-
- org.datanucleus.metadata.PackageMetaData
-
- All Implemented Interfaces:
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 StringcatalogCatalog name for all classes in this packageprotected List<ClassMetaData>classesList of classes (uses List to retain positioning).protected List<InterfaceMetaData>interfacesList of interfaces (uses List to retain positioning).protected StringnamePackage nameprotected StringschemaSchema name for all classes in this packageprotected Collection<SequenceMetaData>sequencesSequence generators.protected 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_FETCH_FK_ONLY, 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
-
-
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.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(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(String name)Accessor for the Meta-Data of an interface with the specified name.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.StringgetSchema()Accessor for the schema name for all classes in this packageSequenceMetaDatagetSequence(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(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(String className)Method to create a new class metadata, add it, and return it.InterfaceMetaDatanewInterfaceMetaData(String intfName)Method to create a new interface metadata, add it, and return it.SequenceMetaDatanewSequenceMetaData(String seqName, String seqStrategy)Method to create a new Sequence metadata, add it, and return it.TableGeneratorMetaDatanewTableGeneratorMetaData(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(String catalog)PackageMetaDatasetSchema(String schema)-
Methods inherited from class org.datanucleus.metadata.MetaData
addExtension, addExtensions, getExtensions, getMetaDataManager, getNoOfExtensions, getParent, getValueForExtension, getValuesForExtension, hasExtension, isInitialised, isPopulated, isUsed, removeExtension, setExtensions, setParent
-
-
-
-
Field Detail
-
interfaces
protected List<InterfaceMetaData> interfaces
List of interfaces (uses List to retain positioning).
-
classes
protected List<ClassMetaData> classes
List of classes (uses List to retain positioning).
-
sequences
protected Collection<SequenceMetaData> sequences
Sequence generators.
-
tableGenerators
protected Collection<TableGeneratorMetaData> tableGenerators
Table generators.
-
name
protected final String name
Package name
-
catalog
protected String catalog
Catalog name for all classes in this package
-
schema
protected 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 String getName()
Accessor for the name of the package- Returns:
- package name
-
getCatalog
public String getCatalog()
Accessor for the catalog name for all classes in this package- Returns:
- Catalog name to use.
-
getSchema
public 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(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(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(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(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(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(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(String seqName, 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(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(String catalog)
-
setSchema
public PackageMetaData setSchema(String schema)
-
-