Class ValidMetadataRESTServices

java.lang.Object
org.odpi.openmetadata.tokencontroller.TokenController
org.odpi.openmetadata.viewservices.validmetadata.server.ValidMetadataRESTServices

public class ValidMetadataRESTServices extends TokenController
The ValidMetadataRESTServices provides the server-side implementation of the Valid Metadata Open Metadata View Service (OMVS).
  • Constructor Details

    • ValidMetadataRESTServices

      public ValidMetadataRESTServices()
      Default constructor
  • Method Details

    • setUpValidMetadataValue

      public VoidResponse setUpValidMetadataValue(String serverName, String typeName, String propertyName, ValidMetadataValue requestBody)
      Create or update the valid value for a particular open metadata property name. If the typeName is null, this valid value applies to properties of this name from all types. The valid value is stored in the preferredValue property. If a valid value is already set up for this property (with overlapping effective dates) then the valid value is updated.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      requestBody - preferred value to use in the open metadata types plus additional descriptive values.
      Returns:
      void or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • setUpValidMetadataMapName

      public VoidResponse setUpValidMetadataMapName(String serverName, String typeName, String propertyName, ValidMetadataValue requestBody)
      Create or update the valid value for a name that can be stored in a particular open metadata property name. This property is of type map from name to string. The valid value is stored in the preferredValue property of validMetadataValue. If the typeName is null, this valid value applies to properties of this name from any open metadata type. If a valid value is already set up for this property (with overlapping effective dates) then the valid value is updated.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      requestBody - preferred value to use in the open metadata types plus additional descriptive values.
      Returns:
      void or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • setUpValidMetadataMapValue

      public VoidResponse setUpValidMetadataMapValue(String serverName, String typeName, String propertyName, String mapName, ValidMetadataValue requestBody)
      Create or update the valid value for a name that can be stored in a particular open metadata property name. This property is of type map from name to string. The valid value is stored in the preferredValue property of validMetadataValue. If the typeName is null, this valid value applies to properties of this name from any open metadata type. If a valid value is already set up for this property (with overlapping effective dates) then the valid value is updated.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      mapName - name in the map that this valid value applies. If null then the value can be used for any name in the map.
      requestBody - preferred value to use in the open metadata types plus additional descriptive values.
      Returns:
      void or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • clearValidMetadataValue

      public VoidResponse clearValidMetadataValue(String serverName, String typeName, String propertyName, String preferredValue, NullRequestBody requestBody)
      Remove a valid value for a property.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      preferredValue - specific valid value to remove
      requestBody - null request body
      Returns:
      void or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • clearValidMetadataMapName

      public VoidResponse clearValidMetadataMapName(String serverName, String typeName, String propertyName, String preferredValue, NullRequestBody requestBody)
      Remove a valid map name value for a property. The match is done on preferred name.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      preferredValue - specific valid value to remove
      requestBody - null request body
      Returns:
      void or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • clearValidMetadataMapValue

      public VoidResponse clearValidMetadataMapValue(String serverName, String typeName, String propertyName, String mapName, String preferredValue, NullRequestBody requestBody)
      Remove a valid map name value for a property. The match is done on preferred name.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      mapName - name in the map that this valid value applies. If null then the value can be used for any name in the map.
      preferredValue - specific valid value to remove
      requestBody - null request body
      Returns:
      void or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • validateMetadataValue

      public BooleanResponse validateMetadataValue(String serverName, String typeName, String propertyName, String actualValue)
      Validate whether the value found in an open metadata property is valid.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      actualValue - value stored in the property - if this is null, true is only returned if null is set up as a valid value.
      Returns:
      boolean flag - true if the value is one of the defined valid values or there are no valid values set up for the property (and so any value is value) or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • validateMetadataMapName

      public BooleanResponse validateMetadataMapName(String serverName, String typeName, String propertyName, String actualValue)
      Validate whether the name found in an open metadata map property is valid.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      actualValue - value stored in the property - if this is null, true is only returned if null is set up as a valid value.
      Returns:
      boolean flag - true if the value is one of the defined valid values or there are no valid values set up for the property (and so any value is value) or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • validateMetadataMapValue

      public BooleanResponse validateMetadataMapValue(String serverName, String typeName, String propertyName, String mapName, String actualValue)
      Validate whether the name found in an open metadata map property is valid.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      mapName - name in the map that this valid value applies. If null then the value can be used for any name in the map.
      actualValue - value stored in the property - if this is null, true is only returned if null is set up as a valid value.
      Returns:
      boolean flag - true if the value is one of the defined valid values or there are no valid values set up for the property (and so any value is value) or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • getValidMetadataValue

      public ValidMetadataValueResponse getValidMetadataValue(String serverName, String typeName, String propertyName, String preferredValue)
      Retrieve details of a specific valid value for a property.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      preferredValue - valid value to match
      Returns:
      specific valid value definition or none if there is no definition stored or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • getValidMetadataMapName

      public ValidMetadataValueResponse getValidMetadataMapName(String serverName, String typeName, String propertyName, String preferredValue)
      Retrieve details of a specific valid name for a map property.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      preferredValue - valid value to match
      Returns:
      specific valid value definition or none if there is no definition stored or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • getValidMetadataMapValue

      public ValidMetadataValueResponse getValidMetadataMapValue(String serverName, String typeName, String propertyName, String mapName, String preferredValue)
      Retrieve details of a specific valid value for a map name.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      mapName - name in the map that this valid value applies. If null then the value can be used for any name in the map.
      preferredValue - valid value to match
      Returns:
      specific valid value definition or none if there is no definition stored or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • getValidMetadataValues

      public ValidMetadataValueDetailListResponse getValidMetadataValues(String serverName, String typeName, String propertyName, int startFrom, int pageSize)
      Retrieve all the valid values for the requested property.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of valid values defined for the property or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • getConsistentMetadataValues

      public ValidMetadataValueListResponse getConsistentMetadataValues(String serverName, String typeName, String propertyName, String mapName, String preferredValue, int startFrom, int pageSize)
      Retrieve all the consistent valid values for the requested property.
      Parameters:
      serverName - name of server instance to route request to
      typeName - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName - name of property that this valid value applies
      mapName - optional name of map key that this valid value applies
      preferredValue - the value to match against
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of valid values defined for the property or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • setConsistentMetadataValues

      public VoidResponse setConsistentMetadataValues(String serverName, String typeName1, String propertyName1, String mapName1, String preferredValue1, String typeName2, String propertyName2, String mapName2, String preferredValue2, NullRequestBody requestBody)
      Set up consistent metadata values relationship between the two property values.
      Parameters:
      serverName - name of server instance to route request to
      typeName1 - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName1 - name of property that this valid value applies
      mapName1 - optional name of map key that this valid value applies
      preferredValue1 - the value to match against
      typeName2 - type name if this is valid value is specific for a type, or null if this valid value if for the property name for all types
      propertyName2 - name of property that this valid value applies
      mapName2 - optional name of map key that this valid value applies
      preferredValue2 - the value to match against
      requestBody - null request body
      Returns:
      void or InvalidParameterException the property name is null or not known. UserNotAuthorizedException the service is not able to create/access the element PropertyServerException there is a problem accessing the metadata store
    • getAllTypes

      public TypeDefGalleryResponse getAllTypes(String serverName)
      Returns the list of different types of metadata organized into two groups. The first are the attribute type definitions (AttributeTypeDefs). These provide types for properties in full type definitions. Full type definitions (TypeDefs) describe types for entities, relationships and classifications.
      Parameters:
      serverName - unique identifier for requested server.
      Returns:
      TypeDefGalleryResponse: List of different categories of type definitions or RepositoryErrorException there is a problem communicating with the metadata repository or UserNotAuthorizedException the userId is not permitted to perform this operation.
    • getTypeDefsByCategory

      public TypeDefListResponse getTypeDefsByCategory(String serverName, OpenMetadataTypeDefCategory category)
      Returns all the TypeDefs for a specific category.
      Parameters:
      serverName - unique identifier for requested server.
      category - find parameters used to limit the returned results.
      Returns:
      TypeDefListResponse: TypeDefs list or InvalidParameterException the TypeDefCategory is null or RepositoryErrorException there is a problem communicating with the metadata repository or UserNotAuthorizedException the userId is not permitted to perform this operation.
    • getSubTypes

      public TypeDefListResponse getSubTypes(String serverName, String typeName)
      Returns all the TypeDefs for a specific subtype. If a null result is returned it means the type has no subtypes.
      Parameters:
      serverName - unique identifier for requested server.
      typeName - name of type to retrieve against.
      Returns:
      TypeDefListResponse: TypeDefs list or InvalidParameterException the typeName is null or RepositoryErrorException there is a problem communicating with the metadata repository or UserNotAuthorizedException the userId is not permitted to perform this operation.
    • getValidRelationshipTypes

      public TypeDefListResponse getValidRelationshipTypes(String serverName, String typeName)
      Returns all the TypeDefs for relationships that can be attached to the requested entity type.
      Parameters:
      serverName - unique identifier for requested server.
      typeName - name of entity type to retrieve against.
      Returns:
      TypeDefsGalleryResponse: A list of types or InvalidParameterException all attributes of the external id are null or RepositoryErrorException there is a problem communicating with the metadata repository or UserNotAuthorizedException the userId is not permitted to perform this operation.
    • getValidClassificationTypes

      public TypeDefListResponse getValidClassificationTypes(String serverName, String typeName)
      Returns all the TypeDefs for classifications that can be attached to the requested entity type.
      Parameters:
      serverName - unique identifier for requested server.
      typeName - name of type to retrieve against.
      Returns:
      TypeDefsGalleryResponse: A list of types or InvalidParameterException all attributes of the external id are null or RepositoryErrorException there is a problem communicating with the metadata repository or UserNotAuthorizedException the userId is not permitted to perform this operation.
    • getTypeDefByName

      public TypeDefResponse getTypeDefByName(String serverName, String name)
      Return the TypeDef identified by the unique name.
      Parameters:
      serverName - unique identifier for requested server.
      name - String name of the TypeDef.
      Returns:
      TypeDefResponse: TypeDef structure describing its category and properties or InvalidParameterException the name is null or RepositoryErrorException there is a problem communicating with the metadata repository where the metadata collection is stored or TypeDefNotKnownException the requested TypeDef is not found in the metadata collection or UserNotAuthorizedException the userId is not permitted to perform this operation.