Class InstanceHeaderMapping

  • Direct Known Subclasses:
    EntitySummaryMapping, RelationshipMapping

    public class InstanceHeaderMapping
    extends InstanceAuditHeaderMapping
    Maps the properties of InstanceHeaders between persistence and objects. (Note that this is the first level of mapping that can be instantiated, as it is the first level in which a XTDB ID (GUID) is mapped.)
    • Field Detail

      • RE_IDENTIFIED_FROM_GUID

        public static final String RE_IDENTIFIED_FROM_GUID
      • instanceHeader

        protected org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceHeader instanceHeader
      • xtdbDoc

        protected xtdb.api.XtdbDocument xtdbDoc
    • Constructor Detail

      • InstanceHeaderMapping

        protected InstanceHeaderMapping​(XtdbOMRSRepositoryConnector xtdbConnector,
                                        org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceHeader instanceHeader)
        Construct a mapping from an InstanceAuditHeader (to map to a XTDB representation).
        Parameters:
        xtdbConnector - connectivity to XTDB
        instanceHeader - from which to map
      • InstanceHeaderMapping

        protected InstanceHeaderMapping​(XtdbOMRSRepositoryConnector xtdbConnector,
                                        xtdb.api.XtdbDocument xtdbDoc)
        Construct a mapping from a XTDB map (to map to an Egeria representation).
        Parameters:
        xtdbConnector - connectivity to XTDB
        xtdbDoc - from which to map
    • Method Detail

      • toDoc

        protected xtdb.api.XtdbDocument.Builder toDoc()
        Translate the provided Egeria representation into a XTDB document.
        Returns:
        XtdbDocument.Builder from which to build the document
      • toMap

        public static clojure.lang.IPersistentMap toMap​(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceHeader header)
                                                 throws org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException,
                                                        IOException
        Translate the provided Egeria representation into a XTDB document map.
        Parameters:
        header - to translate
        Returns:
        IPersistentMap representing the XTDB document
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException - on any errors identified within the metadata instance
        IOException - on any error serializing the values
      • fromDoc

        protected void fromDoc()
        Translate the provided XTDB representation into an Egeria representation.
      • fromMap

        protected static void fromMap​(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceHeader ih,
                                      clojure.lang.IPersistentMap doc)
                               throws IOException,
                                      org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException
        Translate the provided XTDB representation into an Egeria representation.
        Parameters:
        ih - into which to map
        doc - from which to map
        Throws:
        IOException - on any issue deserializing values
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException - for any unmapped properties
      • getGuidReference

        public static String getGuidReference​(XtdbOMRSRepositoryConnector xtdbConnector,
                                              org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceHeader ih)
        Translate the provided InstanceHeader information into a XTDB reference to the GUID of the instance.
        Parameters:
        xtdbConnector - connectivity to the repository
        ih - to translate
        Returns:
        String for the XTDB reference
      • getGuidReference

        public static String getGuidReference​(org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceHeader ih)
                                       throws org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException
        Translate the provided InstanceHeader information into a XTDB reference to the GUID of the instance.
        Parameters:
        ih - to translate
        Returns:
        String for the XTDB reference
        Throws:
        org.odpi.openmetadata.repositoryservices.ffdc.exception.InvalidParameterException - on any error translating the GUID
      • trimGuidFromReference

        public static String trimGuidFromReference​(String reference)
        Retrieve only the GUID portion of a XTDB reference.
        Parameters:
        reference - from which to trim the GUID
        Returns:
        String of only the GUID portion of the reference
      • getReference

        protected static String getReference​(String instanceType,
                                             String guid)
        Translate the provided details into a XTDB reference.
        Parameters:
        instanceType - of the instance (from TypeDefCategory name)
        guid - of the instance
        Returns:
        String for the XTDB reference