Class DynamicArchiveService.ArchiveDestination
java.lang.Object
org.odpi.openmetadata.adapters.connectors.dynamicarchivers.DynamicArchiveService.ArchiveDestination
- All Implemented Interfaces:
OpenMetadataArchiveBuilder
,OpenMetadataArchiveCache
- Enclosing class:
- DynamicArchiveService
protected class DynamicArchiveService.ArchiveDestination
extends Object
implements OpenMetadataArchiveBuilder, OpenMetadataArchiveCache
Details of one of the archive destination that this archive service is managing. It is able to support an archive that builds in memory and
is written out in one go - or one that stores one element at a time.
-
Constructor Summary
ModifierConstructorDescriptionprotected
Simple constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addClassification
(ClassificationEntityExtension classification) Add a new classification to the archive.void
addClassificationDef
(ClassificationDef classificationDef) Add a new ClassificationDef to the archive.void
addCollectionDef
(CollectionDef collectionDef) Add a new CollectionDef to the archive.void
addEntity
(EntityDetail entity) Add a new entity to the archive.void
addEntityDef
(EntityDef entityDef) Add a new EntityDef to the archive.void
addEnumDef
(EnumDef enumDef) Add a new EnumDef to the archive.void
addPrimitiveDef
(PrimitiveDef primitiveDef) Add a new PrimitiveDef to the archive.void
addRelationship
(Relationship relationship) Add a new relationship to the archive.void
addRelationshipDef
(RelationshipDef relationshipDef) Add a new RelationshipDef to the archive.void
addTypeDefPatch
(TypeDefPatch typeDefPatch) Add a new patch to the archive.Return the archive properties as will appear in the archive.getClassification
(String entityGUID, String classificationName) Retrieve a classification extension from the archive.getClassificationDef
(String classificationDef) Retrieve the relationshipDef or null if it is not defined.getCollectionDef
(String collectionDefName) Retrieve a CollectionDef from the archive.Retrieve an entity from the archive.getEntityDef
(String entityDefName) Retrieve the entityDef or null if it is not defined.getEnumDef
(String enumDefName) Get an existing EnumDef from the archive.Once the content of the archive has been added to the archive builder, an archive object can be retrieved.getPatchForType
(String typeName) Create a skeleton patch for a TypeDefPatch.getPrimitiveDef
(String primitiveDefName) Retrieve a PrimitiveDef from the archive.getRelationship
(String guid) Retrieve a relationship from the archive.getRelationshipDef
(String relationshipDefName) Retrieve the relationshipDef or null if it is not defined.getTypeDefByName
(String typeName) Return the requested type definition if known.queryClassification
(String entityGUID, String classificationName) Retrieve a classification extension from the archive.queryEntity
(String guid) Retrieve an entity from the archive.queryRelationship
(String guid) Retrieve a relationship from the archive.void
setArchiveProperties
(String archiveGUID, String archiveName, String archiveDescription, OpenMetadataArchiveType archiveType, String archiveVersion, String originatorName, String originatorLicense, Date creationDate, List<OpenMetadataArchive> dependsOnArchives) Set up archive header.
-
Constructor Details
-
ArchiveDestination
Simple constructor.- Parameters:
store
- connector to the store
-
-
Method Details
-
getOpenMetadataArchive
Once the content of the archive has been added to the archive builder, an archive object can be retrieved.- Specified by:
getOpenMetadataArchive
in interfaceOpenMetadataArchiveCache
- Returns:
- open metadata archive object with all the supplied content in it.
-
setArchiveProperties
public void setArchiveProperties(String archiveGUID, String archiveName, String archiveDescription, OpenMetadataArchiveType archiveType, String archiveVersion, String originatorName, String originatorLicense, Date creationDate, List<OpenMetadataArchive> dependsOnArchives) Set up archive header. It passes parameters used to build the open metadata archive's property header including the default license string. This determines the license and copyright for all instances in the archive that do not have their own explicit license string. The default license string will be inserted into each instance with a null license when it is loaded into an open metadata repository.- Specified by:
setArchiveProperties
in interfaceOpenMetadataArchiveBuilder
- Parameters:
archiveGUID
- unique identifier for this open metadata archive.archiveName
- name of the open metadata archive.archiveDescription
- description of the open metadata archive.archiveType
- enum describing the type of archive this is.archiveVersion
- descriptive name for the version of the archive.originatorName
- name of the originator (person or organization) of the archive.originatorLicense
- default license string for content.creationDate
- data that this archive was created.dependsOnArchives
- list of archives that this archive depends on (null for no dependencies).
-
getArchiveProperties
Return the archive properties as will appear in the archive. Null is returned if archive properties not set up.- Specified by:
getArchiveProperties
in interfaceOpenMetadataArchiveBuilder
- Returns:
- property bean
-
addPrimitiveDef
Add a new PrimitiveDef to the archive.- Specified by:
addPrimitiveDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
primitiveDef
- type to add nulls are ignored
-
getPrimitiveDef
Retrieve a PrimitiveDef from the archive.- Specified by:
getPrimitiveDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
primitiveDefName
- primitive to retrieve- Returns:
- PrimitiveDef type
-
addCollectionDef
Add a new CollectionDef to the archive.- Specified by:
addCollectionDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
collectionDef
- type to add
-
getCollectionDef
Retrieve a CollectionDef from the archive.- Specified by:
getCollectionDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
collectionDefName
- type to retrieve- Returns:
- CollectionDef type
-
addEnumDef
Add a new EnumDef to the archive.- Specified by:
addEnumDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
enumDef
- type to add
-
getEnumDef
Get an existing EnumDef from the archive.- Specified by:
getEnumDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
enumDefName
- type to retrieve- Returns:
- EnumDef object
-
addClassificationDef
Add a new ClassificationDef to the archive.- Specified by:
addClassificationDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
classificationDef
- type to add
-
addEntityDef
Add a new EntityDef to the archive.- Specified by:
addEntityDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
entityDef
- type to add
-
getEntityDef
Retrieve the entityDef or null if it is not defined.- Specified by:
getEntityDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
entityDefName
- name of the entity- Returns:
- the retrieved entity def
-
getRelationshipDef
Retrieve the relationshipDef or null if it is not defined.- Specified by:
getRelationshipDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
relationshipDefName
- name of the relationship- Returns:
- the retrieved relationship def
-
getClassificationDef
Retrieve the relationshipDef or null if it is not defined.- Specified by:
getClassificationDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
classificationDef
- name of the classification- Returns:
- the retrieved classification def
-
addRelationshipDef
Add a new RelationshipDef to the archive.- Specified by:
addRelationshipDef
in interfaceOpenMetadataArchiveBuilder
- Parameters:
relationshipDef
- type to add
-
getPatchForType
Create a skeleton patch for a TypeDefPatch.- Specified by:
getPatchForType
in interfaceOpenMetadataArchiveBuilder
- Parameters:
typeName
- name of type- Returns:
- TypeDefPatch
-
addTypeDefPatch
Add a new patch to the archive.- Specified by:
addTypeDefPatch
in interfaceOpenMetadataArchiveBuilder
- Parameters:
typeDefPatch
- patch
-
getTypeDefByName
Return the requested type definition if known.- Specified by:
getTypeDefByName
in interfaceOpenMetadataArchiveBuilder
- Parameters:
typeName
- name ot type- Returns:
- type definition
-
addEntity
Add a new entity to the archive.- Specified by:
addEntity
in interfaceOpenMetadataArchiveBuilder
- Parameters:
entity
- instance to add
-
getEntity
Retrieve an entity from the archive.- Specified by:
getEntity
in interfaceOpenMetadataArchiveBuilder
- Parameters:
guid
- unique identifier- Returns:
- requested entity
-
queryEntity
Retrieve an entity from the archive.- Specified by:
queryEntity
in interfaceOpenMetadataArchiveBuilder
- Parameters:
guid
- unique identifier- Returns:
- requested entity
-
addRelationship
Add a new relationship to the archive.- Specified by:
addRelationship
in interfaceOpenMetadataArchiveBuilder
- Parameters:
relationship
- instance to add
-
getRelationship
Retrieve a relationship from the archive.- Specified by:
getRelationship
in interfaceOpenMetadataArchiveBuilder
- Parameters:
guid
- unique identifier- Returns:
- requested relationship
-
queryRelationship
Retrieve a relationship from the archive.- Specified by:
queryRelationship
in interfaceOpenMetadataArchiveBuilder
- Parameters:
guid
- unique identifier- Returns:
- requested relationship
-
addClassification
Add a new classification to the archive.- Specified by:
addClassification
in interfaceOpenMetadataArchiveBuilder
- Parameters:
classification
- instance to add
-
getClassification
public ClassificationEntityExtension getClassification(String entityGUID, String classificationName) Retrieve a classification extension from the archive.- Specified by:
getClassification
in interfaceOpenMetadataArchiveBuilder
- Parameters:
entityGUID
- unique identifier of entityclassificationName
- name of the classification- Returns:
- requested classification extension
-
queryClassification
public ClassificationEntityExtension queryClassification(String entityGUID, String classificationName) Retrieve a classification extension from the archive.- Specified by:
queryClassification
in interfaceOpenMetadataArchiveBuilder
- Parameters:
entityGUID
- unique identifier of entityclassificationName
- name of the classification- Returns:
- requested classification extension
-