Class ReadOnlyOMRSMetadataCollection

  • All Implemented Interfaces:
    AuditLoggingComponent

    public class ReadOnlyOMRSMetadataCollection
    extends InMemoryOMRSMetadataCollection
    The ReadOnlyOMRSMetadataCollection represents a metadata repository that supports an in-memory repository whose content is read-only. It is typically populated by open metadata archives.
    • Method Detail

      • addEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail addEntity​(java.lang.String userId,
                                                                                                                                              java.lang.String entityTypeGUID,
                                                                                                                                              org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties initialProperties,
                                                                                                                                              java.util.List<org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Classification> initialClassifications,
                                                                                                                                              org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus initialStatus)
                                                                                                                                       throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Create a new entity and put it in the requested state. The new entity is returned.
        Overrides:
        addEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityTypeGUID - unique identifier (guid) for the new entity's type.
        initialProperties - initial list of properties for the new entity - null means no properties.
        initialClassifications - initial list of classifications for the new entity - null means no classifications.
        initialStatus - initial status - typically DRAFT, PREPARED or ACTIVE.
        Returns:
        EntityDetail showing the new header plus the requested properties and classifications. The entity will not have any relationships at this stage.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • addExternalEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail addExternalEntity​(java.lang.String userId,
                                                                                                                                                      java.lang.String entityTypeGUID,
                                                                                                                                                      java.lang.String externalSourceGUID,
                                                                                                                                                      java.lang.String externalSourceName,
                                                                                                                                                      org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties initialProperties,
                                                                                                                                                      java.util.List<org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Classification> initialClassifications,
                                                                                                                                                      org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus initialStatus)
                                                                                                                                               throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Save a new entity that is sourced from an external technology. The external technology is identified by a GUID and a name. These can be recorded in a Software Server Capability (guid and qualifiedName respectively. The new entity is assigned a new GUID and put in the requested state. The new entity is returned.
        Overrides:
        addExternalEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityTypeGUID - unique identifier (guid) for the new entity's type.
        externalSourceGUID - unique identifier (guid) for the external source.
        externalSourceName - unique name for the external source.
        initialProperties - initial list of properties for the new entity; null means no properties.
        initialClassifications - initial list of classifications for the new entity null means no classifications.
        initialStatus - initial status typically DRAFT, PREPARED or ACTIVE.
        Returns:
        EntityDetail showing the new header plus the requested properties and classifications. The entity will not have any relationships at this stage.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • addEntityProxy

        public void addEntityProxy​(java.lang.String userId,
                                   org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityProxy entityProxy)
                            throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Create an entity proxy in the metadata collection. This is used to store relationships that span metadata repositories.
        Overrides:
        addEntityProxy in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityProxy - details of entity to add.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • updateEntityStatus

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail updateEntityStatus​(java.lang.String userId,
                                                                                                                                                       java.lang.String entityGUID,
                                                                                                                                                       org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus newStatus)
                                                                                                                                                throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Update the status for a specific entity.
        Overrides:
        updateEntityStatus in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - unique identifier (guid) for the requested entity.
        newStatus - new InstanceStatus for the entity.
        Returns:
        EntityDetail showing the current entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • updateEntityProperties

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail updateEntityProperties​(java.lang.String userId,
                                                                                                                                                           java.lang.String entityGUID,
                                                                                                                                                           org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties properties)
                                                                                                                                                    throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Update selected properties in an entity.
        Overrides:
        updateEntityProperties in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - String unique identifier (guid) for the entity.
        properties - a list of properties to change.
        Returns:
        EntityDetail showing the resulting entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • undoEntityUpdate

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail undoEntityUpdate​(java.lang.String userId,
                                                                                                                                                     java.lang.String entityGUID)
                                                                                                                                              throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Undo the last update to an entity and return the previous content.
        Overrides:
        undoEntityUpdate in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - String unique identifier (guid) for the entity.
        Returns:
        EntityDetail showing the resulting entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • deleteEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail deleteEntity​(java.lang.String userId,
                                                                                                                                                 java.lang.String typeDefGUID,
                                                                                                                                                 java.lang.String typeDefName,
                                                                                                                                                 java.lang.String obsoleteEntityGUID)
                                                                                                                                          throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Delete an entity. The entity is soft deleted. This means it is still in the graph but it is no longer returned on queries. All homed relationships to the entity are also soft-deleted and will no longer be usable, while any reference copy relationships to the entity will be purged (and will no longer be accessible in this repository). To completely eliminate the entity from the graph requires a call to the purgeEntity() method after the delete call. The restoreEntity() method will switch an entity back to Active status to restore the entity to normal use; however, this will not restore any of the relationships that were soft-deleted as part of the original deleteEntity() call.
        Overrides:
        deleteEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        typeDefGUID - unique identifier of the type of the entity to delete.
        typeDefName - unique name of the type of the entity to delete.
        obsoleteEntityGUID - String unique identifier (guid) for the entity.
        Returns:
        deleted entity
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • purgeEntity

        public void purgeEntity​(java.lang.String userId,
                                java.lang.String typeDefGUID,
                                java.lang.String typeDefName,
                                java.lang.String deletedEntityGUID)
                         throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Permanently removes a deleted entity from the metadata collection. All relationships to the entity -- both homed and reference copies -- will also be purged to maintain referential integrity within the repository. This request can not be undone.
        Overrides:
        purgeEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        typeDefGUID - unique identifier of the type of the entity to purge.
        typeDefName - unique name of the type of the entity to purge.
        deletedEntityGUID - String unique identifier (guid) for the entity.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • restoreEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail restoreEntity​(java.lang.String userId,
                                                                                                                                                  java.lang.String deletedEntityGUID)
                                                                                                                                           throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Restore the requested entity to the state it was before it was deleted.
        Overrides:
        restoreEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        deletedEntityGUID - String unique identifier (guid) for the entity.
        Returns:
        EntityDetail showing the restored entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • classifyEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail classifyEntity​(java.lang.String userId,
                                                                                                                                                   java.lang.String entityGUID,
                                                                                                                                                   java.lang.String classificationName,
                                                                                                                                                   org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties classificationProperties)
                                                                                                                                            throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Add the requested classification to a specific entity.
        Overrides:
        classifyEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - String unique identifier (guid) for the entity.
        classificationName - String name for the classification.
        classificationProperties - list of properties to set in the classification.
        Returns:
        EntityDetail showing the resulting entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • classifyEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail classifyEntity​(java.lang.String userId,
                                                                                                                                                   java.lang.String entityGUID,
                                                                                                                                                   java.lang.String classificationName,
                                                                                                                                                   java.lang.String externalSourceGUID,
                                                                                                                                                   java.lang.String externalSourceName,
                                                                                                                                                   org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.ClassificationOrigin classificationOrigin,
                                                                                                                                                   java.lang.String classificationOriginGUID,
                                                                                                                                                   org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties classificationProperties)
                                                                                                                                            throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Add the requested classification to a specific entity.
        Overrides:
        classifyEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - String unique identifier (guid) for the entity.
        classificationName - String name for the classification.
        externalSourceGUID - unique identifier (guid) for the external source.
        externalSourceName - unique name for the external source.
        classificationOrigin - source of the classification
        classificationOriginGUID - if the classification is propagated, this is the unique identifier of the entity where
        classificationProperties - list of properties to set in the classification.
        Returns:
        EntityDetail showing the resulting entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • declassifyEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail declassifyEntity​(java.lang.String userId,
                                                                                                                                                     java.lang.String entityGUID,
                                                                                                                                                     java.lang.String classificationName)
                                                                                                                                              throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Remove a specific classification from an entity.
        Overrides:
        declassifyEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - String unique identifier (guid) for the entity.
        classificationName - String name for the classification.
        Returns:
        EntityDetail showing the resulting entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • updateEntityClassification

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail updateEntityClassification​(java.lang.String userId,
                                                                                                                                                               java.lang.String entityGUID,
                                                                                                                                                               java.lang.String classificationName,
                                                                                                                                                               org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties properties)
                                                                                                                                                        throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Update one or more properties in one of an entity's classifications.
        Overrides:
        updateEntityClassification in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - String unique identifier (guid) for the entity.
        classificationName - String name for the classification.
        properties - list of properties for the classification.
        Returns:
        EntityDetail showing the resulting entity header, properties and classifications.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • addRelationship

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship addRelationship​(java.lang.String userId,
                                                                                                                                                    java.lang.String relationshipTypeGUID,
                                                                                                                                                    org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties initialProperties,
                                                                                                                                                    java.lang.String entityOneGUID,
                                                                                                                                                    java.lang.String entityTwoGUID,
                                                                                                                                                    org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus initialStatus)
                                                                                                                                             throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Add a new relationship between two entities to the metadata collection.
        Overrides:
        addRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        relationshipTypeGUID - unique identifier (guid) for the new relationship's type.
        initialProperties - initial list of properties for the new entity - null means no properties.
        entityOneGUID - the unique identifier of one of the entities that the relationship is connecting together.
        entityTwoGUID - the unique identifier of the other entity that the relationship is connecting together.
        initialStatus - initial status - typically DRAFT, PREPARED or ACTIVE.
        Returns:
        Relationship structure with the new header, requested entities and properties.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • addExternalRelationship

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship addExternalRelationship​(java.lang.String userId,
                                                                                                                                                            java.lang.String relationshipTypeGUID,
                                                                                                                                                            java.lang.String externalSourceGUID,
                                                                                                                                                            java.lang.String externalSourceName,
                                                                                                                                                            org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties initialProperties,
                                                                                                                                                            java.lang.String entityOneGUID,
                                                                                                                                                            java.lang.String entityTwoGUID,
                                                                                                                                                            org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus initialStatus)
                                                                                                                                                     throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Save a new relationship that is sourced from an external technology. The external technology is identified by a GUID and a name. These can be recorded in a Software Server Capability (guid and qualifiedName respectively. The new relationship is assigned a new GUID and put in the requested state. The new relationship is returned.
        Overrides:
        addExternalRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        relationshipTypeGUID - unique identifier (guid) for the new relationship's type.
        externalSourceGUID - unique identifier (guid) for the external source.
        externalSourceName - unique name for the external source.
        initialProperties - initial list of properties for the new entity; null means no properties.
        entityOneGUID - the unique identifier of one of the entities that the relationship is connecting together.
        entityTwoGUID - the unique identifier of the other entity that the relationship is connecting together.
        initialStatus - initial status; typically DRAFT, PREPARED or ACTIVE.
        Returns:
        Relationship structure with the new header, requested entities and properties.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • updateRelationshipStatus

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship updateRelationshipStatus​(java.lang.String userId,
                                                                                                                                                             java.lang.String relationshipGUID,
                                                                                                                                                             org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus newStatus)
                                                                                                                                                      throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Update the status of a specific relationship.
        Overrides:
        updateRelationshipStatus in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        relationshipGUID - String unique identifier (guid) for the relationship.
        newStatus - new InstanceStatus for the relationship.
        Returns:
        Resulting relationship structure with the new status set.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • updateRelationshipProperties

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship updateRelationshipProperties​(java.lang.String userId,
                                                                                                                                                                 java.lang.String relationshipGUID,
                                                                                                                                                                 org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceProperties properties)
                                                                                                                                                          throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Update the properties of a specific relationship.
        Overrides:
        updateRelationshipProperties in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        relationshipGUID - String unique identifier (guid) for the relationship.
        properties - list of the properties to update.
        Returns:
        Resulting relationship structure with the new properties set.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • undoRelationshipUpdate

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship undoRelationshipUpdate​(java.lang.String userId,
                                                                                                                                                           java.lang.String relationshipGUID)
                                                                                                                                                    throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Undo the latest change to a relationship (either a change of properties or status).
        Overrides:
        undoRelationshipUpdate in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        relationshipGUID - String unique identifier (guid) for the relationship.
        Returns:
        Relationship structure with the new current header, requested entities and properties.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • deleteRelationship

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship deleteRelationship​(java.lang.String userId,
                                                                                                                                                       java.lang.String typeDefGUID,
                                                                                                                                                       java.lang.String typeDefName,
                                                                                                                                                       java.lang.String obsoleteRelationshipGUID)
                                                                                                                                                throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Delete a specific relationship. This is a soft-delete which means the relationship's status is updated to DELETED and it is no longer available for queries. To remove the relationship permanently from the metadata collection, use purgeRelationship().
        Overrides:
        deleteRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        typeDefGUID - unique identifier of the type of the relationship to delete.
        typeDefName - unique name of the type of the relationship to delete.
        obsoleteRelationshipGUID - String unique identifier (guid) for the relationship.
        Returns:
        deleted relationship
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • purgeRelationship

        public void purgeRelationship​(java.lang.String userId,
                                      java.lang.String typeDefGUID,
                                      java.lang.String typeDefName,
                                      java.lang.String deletedRelationshipGUID)
                               throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Permanently delete the relationship from the repository. There is no means to undo this request.
        Overrides:
        purgeRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        typeDefGUID - unique identifier of the type of the relationship to purge.
        typeDefName - unique name of the type of the relationship to purge.
        deletedRelationshipGUID - String unique identifier (guid) for the relationship.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • restoreRelationship

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship restoreRelationship​(java.lang.String userId,
                                                                                                                                                        java.lang.String deletedRelationshipGUID)
                                                                                                                                                 throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Restore a deleted relationship into the metadata collection. The new status will be ACTIVE and the restored details of the relationship are returned to the caller.
        Overrides:
        restoreRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        deletedRelationshipGUID - String unique identifier (guid) for the relationship.
        Returns:
        Relationship structure with the restored header, requested entities and properties.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • reIdentifyEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail reIdentifyEntity​(java.lang.String userId,
                                                                                                                                                     java.lang.String typeDefGUID,
                                                                                                                                                     java.lang.String typeDefName,
                                                                                                                                                     java.lang.String entityGUID,
                                                                                                                                                     java.lang.String newEntityGUID)
                                                                                                                                              throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Change the guid of an existing entity to a new value. This is used if two different entities are discovered to have the same guid. This is extremely unlikely but not impossible so the open metadata protocol has provision for this.
        Overrides:
        reIdentifyEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        typeDefGUID - the guid of the TypeDef for the entity - used to verify the entity identity.
        typeDefName - the name of the TypeDef for the entity - used to verify the entity identity.
        entityGUID - the existing identifier for the entity.
        newEntityGUID - new unique identifier for the entity.
        Returns:
        entity - new values for this entity, including the new guid.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • reTypeEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail reTypeEntity​(java.lang.String userId,
                                                                                                                                                 java.lang.String entityGUID,
                                                                                                                                                 org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.typedefs.TypeDefSummary currentTypeDefSummary,
                                                                                                                                                 org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.typedefs.TypeDefSummary newTypeDefSummary)
                                                                                                                                          throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Change the type of an existing entity. Typically this action is taken to move an entity's type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be added.) However, the type can be changed to any compatible type and the properties adjusted.
        Overrides:
        reTypeEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - the unique identifier for the entity to change.
        currentTypeDefSummary - the current details of the TypeDef for the entity - used to verify the entity identity
        newTypeDefSummary - details of this entity's new TypeDef.
        Returns:
        entity - new values for this entity, including the new type information.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • reHomeEntity

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail reHomeEntity​(java.lang.String userId,
                                                                                                                                                 java.lang.String entityGUID,
                                                                                                                                                 java.lang.String typeDefGUID,
                                                                                                                                                 java.lang.String typeDefName,
                                                                                                                                                 java.lang.String homeMetadataCollectionId,
                                                                                                                                                 java.lang.String newHomeMetadataCollectionId,
                                                                                                                                                 java.lang.String newHomeMetadataCollectionName)
                                                                                                                                          throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Change the home of an existing entity. This action is taken for example, if the original home repository becomes permanently unavailable, or if the user community updating this entity move to working from a different repository in the open metadata repository cohort.
        Overrides:
        reHomeEntity in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entityGUID - the unique identifier for the entity to change.
        typeDefGUID - the guid of the TypeDef for the entity - used to verify the entity identity.
        typeDefName - the name of the TypeDef for the entity - used to verify the entity identity.
        homeMetadataCollectionId - the existing identifier for this entity's home.
        newHomeMetadataCollectionId - unique identifier for the new home metadata collection/repository.
        newHomeMetadataCollectionName - display name for the new home metadata collection/repository.
        Returns:
        entity - new values for this entity, including the new home information.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • reIdentifyRelationship

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship reIdentifyRelationship​(java.lang.String userId,
                                                                                                                                                           java.lang.String typeDefGUID,
                                                                                                                                                           java.lang.String typeDefName,
                                                                                                                                                           java.lang.String relationshipGUID,
                                                                                                                                                           java.lang.String newRelationshipGUID)
                                                                                                                                                    throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Change the guid of an existing relationship. This is used if two different relationships are discovered to have the same guid. This is extremely unlikely but not impossible so the open metadata protocol has provision for this.
        Overrides:
        reIdentifyRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        typeDefGUID - the guid of the TypeDef for the relationship - used to verify the relationship identity.
        typeDefName - the name of the TypeDef for the relationship - used to verify the relationship identity.
        relationshipGUID - the existing identifier for the relationship.
        newRelationshipGUID - the new unique identifier for the relationship.
        Returns:
        relationship - new values for this relationship, including the new guid.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • reTypeRelationship

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship reTypeRelationship​(java.lang.String userId,
                                                                                                                                                       java.lang.String relationshipGUID,
                                                                                                                                                       org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.typedefs.TypeDefSummary currentTypeDefSummary,
                                                                                                                                                       org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.typedefs.TypeDefSummary newTypeDefSummary)
                                                                                                                                                throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Change the type of an existing relationship. Typically this action is taken to move a relationship's type to either a super type (so the subtype can be deleted) or a new subtype (so additional properties can be added.) However, the type can be changed to any compatible type.
        Overrides:
        reTypeRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        relationshipGUID - the unique identifier for the relationship.
        currentTypeDefSummary - the details of the TypeDef for the relationship - used to verify the relationship identity.
        newTypeDefSummary - details of this relationship's new TypeDef.
        Returns:
        relationship - new values for this relationship, including the new type information.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • reHomeRelationship

        public org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship reHomeRelationship​(java.lang.String userId,
                                                                                                                                                       java.lang.String relationshipGUID,
                                                                                                                                                       java.lang.String typeDefGUID,
                                                                                                                                                       java.lang.String typeDefName,
                                                                                                                                                       java.lang.String homeMetadataCollectionId,
                                                                                                                                                       java.lang.String newHomeMetadataCollectionId,
                                                                                                                                                       java.lang.String newHomeMetadataCollectionName)
                                                                                                                                                throws org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException
        Change the home of an existing relationship. This action is taken for example, if the original home repository becomes permanently unavailable, or if the user community updating this relationship move to working from a different repository in the open metadata repository cohort.
        Overrides:
        reHomeRelationship in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        relationshipGUID - the unique identifier for the relationship.
        typeDefGUID - the guid of the TypeDef for the relationship - used to verify the relationship identity.
        typeDefName - the name of the TypeDef for the relationship - used to verify the relationship identity.
        homeMetadataCollectionId - the existing identifier for this relationship's home.
        newHomeMetadataCollectionId - unique identifier for the new home metadata collection/repository.
        newHomeMetadataCollectionName - display name for the new home metadata collection/repository.
        Returns:
        relationship - new values for this relationship, including the new home information.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.FunctionNotSupportedException - the repository does not support maintenance of metadata.
      • saveEntityReferenceCopy

        public void saveEntityReferenceCopy​(java.lang.String userId,
                                            org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail entity)
                                     throws org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException,
                                            org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException,
                                            org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException,
                                            org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException,
                                            org.odpi.openmetadata.repositoryservices.ffdc.exception.HomeEntityException,
                                            org.odpi.openmetadata.repositoryservices.ffdc.exception.EntityConflictException,
                                            org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidEntityException,
                                            org.odpi.openmetadata.repositoryservices.ffdc.exception.UserNotAuthorizedException
        Save the entity as a reference copy. The id of the home metadata collection is already set up in the entity.
        Overrides:
        saveEntityReferenceCopy in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting server.
        entity - details of the entity to save.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException - the entity is null.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException - there is a problem communicating with the metadata repository where the metadata collection is stored.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException - the requested type is not known, or not supported in the metadata repository hosting the metadata collection.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException - one or more of the requested properties are not defined, or have different characteristics in the TypeDef for this entity's type.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.HomeEntityException - the entity belongs to the local repository so creating a reference copy would be invalid.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.EntityConflictException - the new entity conflicts with an existing entity.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidEntityException - the new entity has invalid contents.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.UserNotAuthorizedException - the userId is not permitted to perform this operation.
      • saveClassificationReferenceCopy

        public void saveClassificationReferenceCopy​(java.lang.String userId,
                                                    org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityDetail entity,
                                                    org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Classification classification)
                                             throws org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException,
                                                    org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException,
                                                    org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException,
                                                    org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException
        Save the classification as a reference copy. The id of the home metadata collection is already set up in the classification. The entity may be either a locally homed entity or a reference copy.
        Overrides:
        saveClassificationReferenceCopy in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entity - entity that the classification is attached to.
        classification - classification to save.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException - one of the parameters is invalid or null.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException - there is a problem communicating with the metadata repository where the metadata collection is stored.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException - one or more of the requested properties are not defined, or have different characteristics in the TypeDef for this classification type.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException - the requested type is not known, or not supported in the metadata repository hosting the metadata collection.
      • saveClassificationReferenceCopy

        public void saveClassificationReferenceCopy​(java.lang.String userId,
                                                    org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.EntityProxy entity,
                                                    org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Classification classification)
                                             throws org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException,
                                                    org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException,
                                                    org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException,
                                                    org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException
        Save the classification as a reference copy. The id of the home metadata collection is already set up in the classification. The entity may be either a locally homed entity or a reference copy.
        Overrides:
        saveClassificationReferenceCopy in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting user.
        entity - entity that the classification is attached to.
        classification - classification to save.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException - one of the parameters is invalid or null.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException - there is a problem communicating with the metadata repository where the metadata collection is stored.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException - one or more of the requested properties are not defined, or have different characteristics in the TypeDef for this classification type.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException - the requested type is not known, or not supported in the metadata repository hosting the metadata collection.
      • saveRelationshipReferenceCopy

        public void saveRelationshipReferenceCopy​(java.lang.String userId,
                                                  org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.Relationship relationship)
                                           throws org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.EntityNotKnownException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.HomeRelationshipException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.RelationshipConflictException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidRelationshipException,
                                                  org.odpi.openmetadata.repositoryservices.ffdc.exception.UserNotAuthorizedException
        Save the relationship as a reference copy. The id of the home metadata collection is already set up in the relationship.
        Overrides:
        saveRelationshipReferenceCopy in class InMemoryOMRSMetadataCollection
        Parameters:
        userId - unique identifier for requesting server.
        relationship - relationship to save.
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException - the relationship is null.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.RepositoryErrorException - there is a problem communicating with the metadata repository where the metadata collection is stored.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.TypeErrorException - the requested type is not known, or not supported in the metadata repository hosting the metadata collection.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.EntityNotKnownException - one of the entities identified by the relationship is not found in the metadata collection.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.PropertyErrorException - one or more of the requested properties are not defined, or have different characteristics in the TypeDef for this relationship's type.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.HomeRelationshipException - the relationship belongs to the local repository so creating a reference copy would be invalid.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.RelationshipConflictException - the new relationship conflicts with an existing relationship.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidRelationshipException - the new relationship has invalid contents.
        org.odpi.openmetadata.repositoryservices.ffdc.exception.UserNotAuthorizedException - the userId is not permitted to perform this operation.