Class SchemaAttributeHandler<SCHEMA_ATTRIBUTE,​SCHEMA_TYPE>


  • public class SchemaAttributeHandler<SCHEMA_ATTRIBUTE,​SCHEMA_TYPE>
    extends ReferenceableHandler<B>
    SchemaAttributeHandler manages Schema Attribute objects. It runs server-side in the OMAG Server Platform and retrieves SchemaElement entities through the OMRSRepositoryConnector. This handler does not support effectivity dates but probably should.
    • Constructor Detail

      • SchemaAttributeHandler

        public SchemaAttributeHandler​(OpenMetadataAPIGenericConverter<SCHEMA_ATTRIBUTE> schemaAttributeConverter,
                                      Class<SCHEMA_ATTRIBUTE> schemaAttributeBeanClass,
                                      OpenMetadataAPIGenericConverter<SCHEMA_TYPE> schemaTypeConverter,
                                      Class<SCHEMA_TYPE> schemaTypeBeanClass,
                                      String serviceName,
                                      String serverName,
                                      InvalidParameterHandler invalidParameterHandler,
                                      RepositoryHandler repositoryHandler,
                                      OMRSRepositoryHelper repositoryHelper,
                                      String localServerUserId,
                                      OpenMetadataServerSecurityVerifier securityVerifier,
                                      List<String> supportedZones,
                                      List<String> defaultZones,
                                      List<String> publishZones,
                                      AuditLog auditLog)
        Construct the handler with information needed to work with B objects.
        Parameters:
        schemaAttributeConverter - specific converter for the SCHEMA_ATTRIBUTE bean class
        schemaAttributeBeanClass - name of bean class that is represented by the generic class SCHEMA_ATTRIBUTE
        schemaTypeConverter - specific converter for the SCHEMA_TYPE bean class
        schemaTypeBeanClass - name of bean class that is represented by the generic class SCHEMA_TYPE
        serviceName - name of this service
        serverName - name of the local server
        invalidParameterHandler - handler for managing parameter errors
        repositoryHandler - manages calls to the repository services
        repositoryHelper - provides utilities for manipulating the repository services objects
        localServerUserId - userId for this server
        securityVerifier - open metadata security services verifier
        supportedZones - list of zones that the access service is allowed to serve B instances from.
        defaultZones - list of zones that the access service should set in all new B instances.
        publishZones - list of zones that the access service sets up in published B instances.
        auditLog - destination for audit log events.
    • Method Detail

      • createSchemaAttributeFromTemplate

        public String createSchemaAttributeFromTemplate​(String userId,
                                                        String externalSourceGUID,
                                                        String externalSourceName,
                                                        String parentElementGUID,
                                                        String parentElementGUIDParameterName,
                                                        String templateGUID,
                                                        String qualifiedName,
                                                        String displayName,
                                                        String description,
                                                        Date effectiveTime,
                                                        String methodName)
                                                 throws InvalidParameterException,
                                                        UserNotAuthorizedException,
                                                        PropertyServerException
        Create a new metadata element to represent a schema attribute using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new schema attribute.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the caller
        externalSourceName - unique name of software server capability representing the caller
        parentElementGUID - element to connect this schema attribute to
        parentElementGUIDParameterName - parameter supplying parentElementGUID
        templateGUID - unique identifier of the metadata element to copy
        qualifiedName - unique name for the schema attribute - used in other configuration
        displayName - short display name for the schema attribute
        description - description of the schema attribute
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        unique identifier of the new metadata element
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createNestedSchemaAttribute

        public String createNestedSchemaAttribute​(String userId,
                                                  String externalSourceGUID,
                                                  String externalSourceName,
                                                  String parentElementGUID,
                                                  String parentElementGUIDParameterName,
                                                  String qualifiedName,
                                                  String qualifiedNameParameterName,
                                                  SchemaAttributeBuilder schemaAttributeBuilder,
                                                  Date effectiveTime,
                                                  String methodName)
                                           throws InvalidParameterException,
                                                  UserNotAuthorizedException,
                                                  PropertyServerException
        Create a new schema attribute with its type attached.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the caller
        externalSourceName - unique name of software server capability representing the caller
        parentElementGUID - unique identifier of the metadata element to connect the new schema attribute to
        parentElementGUIDParameterName - parameter name supplying parentElementGUID
        qualifiedName - unique identifier for this schema type
        qualifiedNameParameterName - name of parameter supplying the qualified name
        schemaAttributeBuilder - builder containing the properties of the schema type
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        unique identifier of the new schema attribute already linked to its parent
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createNestedSchemaAttribute

        public String createNestedSchemaAttribute​(String userId,
                                                  String externalSourceGUID,
                                                  String externalSourceName,
                                                  String parentElementGUID,
                                                  String parentElementGUIDParameterName,
                                                  String qualifiedName,
                                                  String qualifiedNameParameterName,
                                                  String displayName,
                                                  String description,
                                                  String externalSchemaTypeGUID,
                                                  String dataType,
                                                  String defaultValue,
                                                  String fixedValue,
                                                  String validValuesSetGUID,
                                                  String formula,
                                                  boolean isDeprecated,
                                                  int elementPosition,
                                                  int minCardinality,
                                                  int maxCardinality,
                                                  boolean allowsDuplicateValues,
                                                  boolean orderedValues,
                                                  String defaultValueOverride,
                                                  int sortOrder,
                                                  int minimumLength,
                                                  int length,
                                                  int significantDigits,
                                                  boolean isNullable,
                                                  String nativeJavaClass,
                                                  List<String> aliases,
                                                  Map<String,​String> additionalProperties,
                                                  String typeName,
                                                  Map<String,​Object> extendedProperties,
                                                  Date effectiveTime,
                                                  String methodName)
                                           throws InvalidParameterException,
                                                  UserNotAuthorizedException,
                                                  PropertyServerException
        Create a new schema attribute with its type attached that is nested inside a complex schema type or a schema attribute.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the caller
        externalSourceName - unique name of software server capability representing the caller
        parentElementGUID - unique identifier of the metadata element to connect the new schema attribute to
        parentElementGUIDParameterName - parameter name supplying parentElementGUID
        qualifiedName - unique identifier for this schema type
        qualifiedNameParameterName - name of parameter supplying the qualified name
        displayName - the stored display name property for the attribute
        description - the stored description property associated with the attribute
        externalSchemaTypeGUID - unique identifier of a schema Type that provides the type. If null, a private schema type is used
        dataType - data type name - for stored values
        defaultValue - string containing default value - for stored values
        fixedValue - string containing a fixed value - for a literal
        validValuesSetGUID - unique identifier of a valid value set that lists the valid values for this schema
        formula - String formula - for derived values
        isDeprecated - is this table deprecated?
        elementPosition - the position of this attribute in its parent type.
        minCardinality - minimum number of repeating instances allowed for this attribute - typically 1
        maxCardinality - the maximum number of repeating instances allowed for this column - typically 1
        allowsDuplicateValues - whether the same value can be used by more than one instance of this attribute
        orderedValues - whether the attribute instances are arranged in an order
        sortOrder - the order that the attribute instances are arranged in - if any
        minimumLength - the minimum length of the data
        length - the length of the data field
        significantDigits - number of significant digits to the right of decimal point
        isNullable - whether the field is nullable or not
        nativeJavaClass - equivalent Java class implementation
        defaultValueOverride - default value for this column
        aliases - a list of alternative names for the attribute
        additionalProperties - any arbitrary properties not part of the type system
        typeName - name of the type that is a subtype of DeployedDatabaseSchema - or null to create standard type
        extendedProperties - properties from any subtype
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        unique identifier of the new schema attribute already linked to its parent
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createNestedSchemaAttribute

        public String createNestedSchemaAttribute​(String userId,
                                                  String externalSourceGUID,
                                                  String externalSourceName,
                                                  String parentElementGUID,
                                                  String parentElementGUIDParameterName,
                                                  String parentElementTypeName,
                                                  String parentAttributeRelationshipTypeGUID,
                                                  String parentAttributeRelationshipTypeName,
                                                  String qualifiedName,
                                                  String qualifiedNameParameterName,
                                                  SchemaAttributeBuilder schemaAttributeBuilder,
                                                  String methodName)
                                           throws InvalidParameterException,
                                                  UserNotAuthorizedException,
                                                  PropertyServerException
        Create a new schema attribute with its type attached.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the caller
        externalSourceName - unique name of software server capability representing the caller
        parentElementGUID - unique identifier of the metadata element to connect the new schema attribute to
        parentElementGUIDParameterName - parameter name supplying parentElementGUID
        parentElementTypeName - type of the parent element - may be a schema attribute or a schema type
        parentAttributeRelationshipTypeGUID - unique identifier of the relationship from the new schema type to the parent
        parentAttributeRelationshipTypeName - unique name of the relationship from the new schema type to the parent
        qualifiedName - unique identifier for this schema type
        qualifiedNameParameterName - name of parameter supplying the qualified name
        schemaAttributeBuilder - builder containing the properties of the schema type
        methodName - calling method
        Returns:
        unique identifier of the new schema attribute already linked to its parent
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • getSchemaAttributesForComplexSchemaType

        public List<SCHEMA_ATTRIBUTE> getSchemaAttributesForComplexSchemaType​(String userId,
                                                                              String schemaTypeGUID,
                                                                              String guidParameterName,
                                                                              String requiredClassificationName,
                                                                              String omittedClassificationName,
                                                                              int startFrom,
                                                                              int pageSize,
                                                                              Date effectiveTime,
                                                                              String methodName)
                                                                       throws InvalidParameterException,
                                                                              PropertyServerException,
                                                                              UserNotAuthorizedException
        Returns a list of schema attributes that are linked to a ComplexSchemaType via the AttributeForSchema relationship. It validates the unique identifier of the complex schema type, and the visibility/security of any attached asset using the supported zones for this component. Then begins to extract the schema attributes. Exceptions occur if a schema attribute does not have a type.
        Parameters:
        userId - String userId of user making request.
        schemaTypeGUID - String unique id for containing schema type.
        guidParameterName - String name of the parameter supplying the guid.
        requiredClassificationName - String the name of the classification that must be on the schema attribute or linked schema type entity.
        omittedClassificationName - String the name of a classification that must not be on the schema attribute or linked schema type entity.
        startFrom - int starting position for first returned element.
        pageSize - int maximum number of elements to return on the call.
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        a schema attributes response
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • getSchemaAttributesForComplexSchemaType

        public List<SCHEMA_ATTRIBUTE> getSchemaAttributesForComplexSchemaType​(String userId,
                                                                              String schemaTypeGUID,
                                                                              String schemaTypeGUIDParameterName,
                                                                              String schemaAttributeTypeName,
                                                                              String requiredClassificationName,
                                                                              String omittedClassificationName,
                                                                              List<String> serviceSupportedZones,
                                                                              int startFrom,
                                                                              int pageSize,
                                                                              Date effectiveTime,
                                                                              String methodName)
                                                                       throws InvalidParameterException,
                                                                              PropertyServerException,
                                                                              UserNotAuthorizedException
        Returns a list of schema attributes that are linked to a ComplexSchemaType via the AttributeForSchema relationship. It validates the unique identifier of the complex schema type, and the visibility/security of any attached asset using the supplied supported zones (needed for the calls from the OCF Metadata REST Services). Then it begins to extract the schema attributes. Exceptions occur if a schema attribute does not have a type.
        Parameters:
        userId - String userId of user making request.
        schemaTypeGUID - String unique id for containing schema type.
        schemaTypeGUIDParameterName - String name of the parameter supplying the guid.
        requiredClassificationName - String the name of the classification that must be on the schema attribute or linked schema type entity.
        omittedClassificationName - String the name of a classification that must not be on the schema attribute or linked schema type entity.
        serviceSupportedZones - list of zone names for calling service v * @param startFrom int starting position for first returned element.
        pageSize - int maximum number of elements to return on the call.
        methodName - calling method
        Returns:
        a schema attributes response
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • getAttachedSchemaAttributes

        public List<SCHEMA_ATTRIBUTE> getAttachedSchemaAttributes​(String userId,
                                                                  String parentElementGUID,
                                                                  String parentElementGUIDParameterName,
                                                                  String schemaAttributeTypeName,
                                                                  int startFrom,
                                                                  int pageSize,
                                                                  Date effectiveTime,
                                                                  String methodName)
                                                           throws InvalidParameterException,
                                                                  PropertyServerException,
                                                                  UserNotAuthorizedException
        Returns a list of schema attributes that are linked to a parent schema element. This may be a complex schema type or a schema attribute. It is necessary to find out the type of the parent schema element to be sure which type of retrieval is needed.
        Parameters:
        userId - String userId of user making request.
        parentElementGUID - String unique id for parent schema element.
        parentElementGUIDParameterName - String name of the parameter supplying the guid.
        schemaAttributeTypeName - sub type of schema attribute or null
        startFrom - int starting position for first returned element.
        pageSize - int maximum number of elements to return on the call.
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        a schema attributes response
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • getNestedSchemaAttributes

        public List<SCHEMA_ATTRIBUTE> getNestedSchemaAttributes​(String userId,
                                                                String schemaAttributeGUID,
                                                                String schemaAttributeGUIDParameterName,
                                                                int startFrom,
                                                                int pageSize,
                                                                Date effectiveTime,
                                                                String methodName)
                                                         throws InvalidParameterException,
                                                                PropertyServerException,
                                                                UserNotAuthorizedException
        Returns a list of schema attributes that are linked to a schema attribute via the NestedSchemaAttribute relationship. It validates the unique identifier of the parent schema attribute, and the visibility/security of any attached asset using the supplied supported zones (needed for the calls from the OCF Metadata REST Services). Then it begins to extract the schema attributes. Exceptions occur if a schema attribute does not have a type.
        Parameters:
        userId - String userId of user making request.
        schemaAttributeGUID - String unique id for containing schema attribute.
        schemaAttributeGUIDParameterName - String name of the parameter supplying the guid.
        startFrom - int starting position for first returned element.
        pageSize - int maximum number of elements to return on the call.
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        a schema attributes response
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • getNestedSchemaAttributes

        public List<SCHEMA_ATTRIBUTE> getNestedSchemaAttributes​(String userId,
                                                                String schemaAttributeGUID,
                                                                String schemaAttributeGUIDParameterName,
                                                                String schemaAttributeTypeName,
                                                                List<String> serviceSupportedZones,
                                                                int startFrom,
                                                                int pageSize,
                                                                Date effectiveTime,
                                                                String methodName)
                                                         throws InvalidParameterException,
                                                                PropertyServerException,
                                                                UserNotAuthorizedException
        Returns a list of schema attributes that are linked to a schema attribute via the NestedSchemaAttribute relationship. It validates the unique identifier of the parent schema attribute, and the visibility/security of any attached asset using the supplied supported zones (needed for the calls from the OCF Metadata REST Services). Then it begins to extract the schema attributes. Exceptions occur if a schema attribute does not have a type.
        Parameters:
        userId - String userId of user making request.
        schemaAttributeGUID - String unique id for containing schema attribute.
        schemaAttributeGUIDParameterName - String name of the parameter supplying the guid.
        schemaAttributeTypeName - subtype of schema attribute (or null)
        serviceSupportedZones - list of zone names for calling service
        startFrom - int starting position for first returned element.
        pageSize - int maximum number of elements to return on the call.
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        a schema attributes response
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • getSchemaAttribute

        public SCHEMA_ATTRIBUTE getSchemaAttribute​(String userId,
                                                   String schemaAttributeGUID,
                                                   String schemaAttributeGUIDParameterName,
                                                   String expectedTypeName,
                                                   String requiredClassificationName,
                                                   String omittedClassificationName,
                                                   Date effectiveTime,
                                                   String methodName)
                                            throws InvalidParameterException,
                                                   PropertyServerException,
                                                   UserNotAuthorizedException
        Retrieve a specific schema attribute by GUID. It is only returned if the guid is known, the entity is of the correct type, the classifications are as expected and any asset it is connected to is both visible via the zones setting and the security verifier allows the update.
        Parameters:
        userId - calling userId
        schemaAttributeGUID - unique identifier of schema attribute
        schemaAttributeGUIDParameterName - parameter passing the schemaAttributeGUID
        expectedTypeName - type or subtype of schema attribute
        requiredClassificationName - a classification that must be either on the schema attribute or its type.
        omittedClassificationName - a classification that must NOT be on either the schema attribute or its type.
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        guid of new schema
        Throws:
        InvalidParameterException - the guid or bean properties are invalid
        UserNotAuthorizedException - user not authorized to issue this request
        PropertyServerException - problem accessing the property server
      • getSchemaAttributesByName

        public List<SCHEMA_ATTRIBUTE> getSchemaAttributesByName​(String userId,
                                                                String typeGUID,
                                                                String typeName,
                                                                String name,
                                                                String requiredClassificationName,
                                                                String omittedClassificationName,
                                                                int elementStart,
                                                                int maxElements,
                                                                Date effectiveTime,
                                                                String methodName)
                                                         throws InvalidParameterException,
                                                                PropertyServerException,
                                                                UserNotAuthorizedException
        Returns a list of specifically typed schema attributes with matching names - either display names or qualified names
        Parameters:
        userId - String userId of user making request.
        typeGUID - String unique identifier of type of schema attribute required.
        typeName - String unique name of type of schema attribute required.
        name - String name (qualified or display name) of schema attribute.
        requiredClassificationName - String name of classification that must be present
        omittedClassificationName - String name of classification that must not be present
        elementStart - int starting position for first returned element.
        maxElements - int maximum number of elements to return on the call.
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        a schema attributes response
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • getSchemaAttributesByName

        public List<SCHEMA_ATTRIBUTE> getSchemaAttributesByName​(String userId,
                                                                String typeGUID,
                                                                String typeName,
                                                                String name,
                                                                String requiredClassificationName,
                                                                String omittedClassificationName,
                                                                List<String> serviceSupportedZones,
                                                                int startFrom,
                                                                int pageSize,
                                                                Date effectiveTime,
                                                                String methodName)
                                                         throws InvalidParameterException,
                                                                PropertyServerException,
                                                                UserNotAuthorizedException
        Returns a list of specifically typed schema attributes with matching names - either display names or qualified names
        Parameters:
        userId - String userId of user making request
        typeGUID - String unique identifier of type of schema attribute required
        typeName - String unique name of type of schema attribute required
        name - String name (qualified or display name) of schema attribute
        requiredClassificationName - String name of classification that must be present
        omittedClassificationName - String name of classification that must not be present
        serviceSupportedZones - zones that assets must be;ong in to be visible
        startFrom - int starting position for first returned element
        pageSize - int maximum number of elements to return on the call
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        a schema attributes response
        Throws:
        InvalidParameterException - - the GUID is not recognized or the paging values are invalid or
        PropertyServerException - - there is a problem retrieving the asset properties from the property server or
        UserNotAuthorizedException - - the requesting user is not authorized to issue this request.
      • findSchemaAttributes

        public List<SCHEMA_ATTRIBUTE> findSchemaAttributes​(String userId,
                                                           String searchString,
                                                           String searchStringParameterName,
                                                           String resultTypeGUID,
                                                           String resultTypeName,
                                                           String requiredClassificationName,
                                                           String omittedClassificationName,
                                                           int startFrom,
                                                           int pageSize,
                                                           Date effectiveTime,
                                                           String methodName)
                                                    throws InvalidParameterException,
                                                           UserNotAuthorizedException,
                                                           PropertyServerException
        Retrieve the list of database table metadata elements that contain the search string. The search string is treated as a regular expression.
        Parameters:
        userId - the searchString of the calling user.
        searchString - searchString of endpoint. This may include wild card characters.
        searchStringParameterName - name of parameter providing search string
        resultTypeGUID - unique identifier of the type that the results should match with
        resultTypeName - unique value of the type that the results should match with
        requiredClassificationName - String the name of the classification that must be on the entity.
        omittedClassificationName - String the name of a classification that must not be on the entity.
        startFrom - index of the list ot start from (0 for start)
        pageSize - maximum number of elements to return.
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        methodName - calling method
        Returns:
        list of matching schema attribute elements
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • updateSchemaAttribute

        public void updateSchemaAttribute​(String userId,
                                          String externalSourceGUID,
                                          String externalSourceName,
                                          String schemaAttributeGUID,
                                          String schemaAttributeGUIDParameterName,
                                          String qualifiedName,
                                          String qualifiedNameParameterName,
                                          String displayName,
                                          String description,
                                          String externalSchemaTypeGUID,
                                          String dataType,
                                          String defaultValue,
                                          String fixedValue,
                                          String validValuesSetGUID,
                                          String formula,
                                          boolean isDeprecated,
                                          int elementPosition,
                                          int minCardinality,
                                          int maxCardinality,
                                          boolean allowsDuplicateValues,
                                          boolean orderedValues,
                                          String defaultValueOverride,
                                          int sortOrder,
                                          int minimumLength,
                                          int length,
                                          int significantDigits,
                                          boolean isNullable,
                                          String nativeJavaClass,
                                          List<String> aliases,
                                          Map<String,​String> additionalProperties,
                                          String typeName,
                                          Map<String,​Object> extendedProperties,
                                          boolean isMergeUpdate,
                                          String methodName)
                                   throws InvalidParameterException,
                                          UserNotAuthorizedException,
                                          PropertyServerException
        Update the properties in a schema attribute.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the caller
        externalSourceName - unique name of software server capability representing the caller
        schemaAttributeGUID - unique identifier of the metadata element to connect the new schema attribute to
        schemaAttributeGUIDParameterName - parameter name supplying schemaAttributeGUID
        qualifiedName - unique identifier for this schema type
        qualifiedNameParameterName - name of parameter supplying the qualified name
        displayName - the stored display name property for the database table
        description - the stored description property associated with the database table
        externalSchemaTypeGUID - unique identifier of an external schema identifier
        dataType - data type name - for stored values
        defaultValue - string containing default value - for stored values
        fixedValue - string containing fixed value - for literals
        validValuesSetGUID - unique identifier for a valid values set to support
        formula - String formula - for derived values
        isDeprecated - is this table deprecated?
        elementPosition - the position of this column in its parent table.
        minCardinality - minimum number of repeating instances allowed for this column - typically 1
        maxCardinality - the maximum number of repeating instances allowed for this column - typically 1
        allowsDuplicateValues - whether the same value can be used by more than one instance of this attribute
        orderedValues - whether the attribute instances are arranged in an order
        sortOrder - the order that the attribute instances are arranged in - if any
        minimumLength - the minimum length of the data
        length - the length of the data field
        significantDigits - number of significant digits to the right of decimal point
        isNullable - whether the field is nullable or not
        nativeJavaClass - equivalent Java class implementation
        defaultValueOverride - default value for this column
        aliases - a list of alternative names for the attribute
        additionalProperties - any arbitrary properties not part of the type system
        extendedProperties - properties from any subtype
        isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • updateSchemaAttribute

        public void updateSchemaAttribute​(String userId,
                                          String externalSourceGUID,
                                          String externalSourceName,
                                          String schemaAttributeGUID,
                                          String schemaAttributeGUIDParameterName,
                                          InstanceProperties instanceProperties,
                                          boolean isMergeUpdate,
                                          String methodName)
                                   throws InvalidParameterException,
                                          PropertyServerException,
                                          UserNotAuthorizedException
        Update a schema attribute
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the caller
        externalSourceName - unique name of software server capability representing the caller
        schemaAttributeGUID - unique identifier of schema attribute
        schemaAttributeGUIDParameterName - parameter supplying schemaAttributeGUID
        instanceProperties - the schema attribute's properties
        isMergeUpdate - should the properties be merged with existing properties of replace them?
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • removeSchemaTypes

        public void removeSchemaTypes​(String userId,
                                      String externalSourceGUID,
                                      String externalSourceName,
                                      String schemaAttributeGUID,
                                      String schemaAttributeGUIDParameterName,
                                      String methodName)
                               throws InvalidParameterException,
                                      PropertyServerException,
                                      UserNotAuthorizedException
        Remove any links to schema types
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the caller
        externalSourceName - unique name of software server capability representing the caller
        schemaAttributeGUID - unique identifier of schema attribute
        schemaAttributeGUIDParameterName - parameter supplying schemaAttributeGUID
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • setupQueryTargetRelationship

        public void setupQueryTargetRelationship​(String userId,
                                                 String externalSourceGUID,
                                                 String externalSourceName,
                                                 String schemaElementGUID,
                                                 String schemaElementGUIDParameterName,
                                                 String schemaElementTypeName,
                                                 String queryId,
                                                 String query,
                                                 String queryTargetGUID,
                                                 String queryTargetGUIDParameterName,
                                                 String methodName)
                                          throws InvalidParameterException,
                                                 UserNotAuthorizedException,
                                                 PropertyServerException
        Create a new query relationship for a derived schema element.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the DBMS
        externalSourceName - unique name of software server capability representing the DBMS
        schemaElementGUID - unique identifier of the schema element that this query supports
        schemaElementGUIDParameterName - parameter name for schemaElementGUID
        schemaElementTypeName - name of type for schema element
        queryId - identifier for the query - used as a placeholder in the formula (stored in the column's CalculatedValue classification)
        query - the query that is made on the targetGUID
        queryTargetGUID - the unique identifier of the target (this is a schema element - typically a schema attribute)
        queryTargetGUIDParameterName - parameter supplying queryTargetGUID
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • updateQueryTargetRelationship

        public void updateQueryTargetRelationship​(String userId,
                                                  String externalSourceGUID,
                                                  String externalSourceName,
                                                  String schemaElementGUID,
                                                  String schemaElementGUIDParameterName,
                                                  String schemaElementTypeName,
                                                  String queryId,
                                                  String query,
                                                  String queryTargetGUID,
                                                  String queryTargetGUIDParameterName,
                                                  String methodName)
                                           throws InvalidParameterException,
                                                  UserNotAuthorizedException,
                                                  PropertyServerException
        Update the query properties for a query relationship for a derived schema element.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the DBMS
        externalSourceName - unique name of software server capability representing the DBMS
        schemaElementGUID - unique identifier of the schema element that this query supports
        schemaElementGUIDParameterName - parameter name for schemaElementGUID
        schemaElementTypeName - name of type for schema element
        queryId - identifier for the query - used as a placeholder in the formula (stored in the column's CalculatedValue classification)
        query - the query that is made on the targetGUID
        queryTargetGUID - the unique identifier of the target (this is a schema element - typically a schema attribute)
        queryTargetGUIDParameterName - parameter supplying queryTargetGUID
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • clearQueryTargetRelationship

        public void clearQueryTargetRelationship​(String userId,
                                                 String externalSourceGUID,
                                                 String externalSourceName,
                                                 String schemaElementGUID,
                                                 String schemaElementGUIDParameterName,
                                                 String schemaElementTypeName,
                                                 String queryTargetGUID,
                                                 String queryTargetGUIDParameterName,
                                                 String methodName)
                                          throws InvalidParameterException,
                                                 UserNotAuthorizedException,
                                                 PropertyServerException
        Update the query properties for a query relationship for a derived schema element.
        Parameters:
        userId - calling user
        externalSourceGUID - unique identifier of software server capability representing the DBMS
        externalSourceName - unique name of software server capability representing the DBMS
        schemaElementGUID - unique identifier of the schema element that this query supports
        schemaElementGUIDParameterName - parameter name for schemaElementGUID
        schemaElementTypeName - name of type for schema element
        queryTargetGUID - the unique identifier of the target (this is a schema element - typically a schema attribute)
        queryTargetGUIDParameterName - parameter supplying queryTargetGUID
        methodName - calling method
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)