Class ValidMetadataOMVSResource

java.lang.Object
org.odpi.openmetadata.viewservices.validmetadata.server.spring.ValidMetadataOMVSResource

@RestController @RequestMapping("/servers/{serverName}/api/open-metadata/valid-metadata") public class ValidMetadataOMVSResource extends Object
The ValidMetadataOMVSResource provides part of the server-side implementation of the Valid Metadata OMVS. =
  • Constructor Details

    • ValidMetadataOMVSResource

      public ValidMetadataOMVSResource()
      Default constructor
  • Method Details

    • setUpValidMetadataValue

      @PostMapping(path="/setup-value/{propertyName}") public VoidResponse setUpValidMetadataValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestBody 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

      @PostMapping(path="/setup-map-name/{propertyName}") public VoidResponse setUpValidMetadataMapName(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestBody 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 mapName 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

      @PostMapping(path="/setup-map-value/{propertyName}/{mapName}") public VoidResponse setUpValidMetadataMapValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @PathVariable String mapName, @RequestBody ValidMetadataValue validMetadataValue)
      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.
      validMetadataValue - 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

      @PostMapping(path="/clear-value/{propertyName}") public VoidResponse clearValidMetadataValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam(required=false) String preferredValue, @RequestBody(required=false) 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

      @PostMapping(path="/clear-map-name/{propertyName}") public VoidResponse clearValidMetadataMapName(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam(required=false) String mapName, @RequestBody(required=false) NullRequestBody requestBody)
      Remove a valid map name value for a property. The match is done on mapName.
      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 - 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

      @PostMapping(path="/clear-map-value/{propertyName}/{mapName}") public VoidResponse clearValidMetadataMapValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @PathVariable String mapName, @RequestParam(required=false) String preferredValue, @RequestBody(required=false) 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

      @GetMapping(path="/validate-value/{propertyName}") public BooleanResponse validateMetadataValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam 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

      @GetMapping(path="/validate-map-name/{propertyName}") public BooleanResponse validateMetadataMapName(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam String mapName)
      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 - 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

      @GetMapping(path="/validate-map-value/{propertyName}/{mapName}") public BooleanResponse validateMetadataMapValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @PathVariable String mapName, @RequestParam 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

      @GetMapping(path="/get-value/{propertyName}") public ValidMetadataValueResponse getValidMetadataValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam 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

      @GetMapping(path="/get-map-name/{propertyName}") public ValidMetadataValueResponse getValidMetadataMapName(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam String mapName)
      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
      mapName - 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

      @GetMapping(path="/get-map-value/{propertyName}/{mapName}") public ValidMetadataValueResponse getValidMetadataMapValue(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @PathVariable String mapName, @RequestParam 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

      @GetMapping(path="/get-valid-metadata-values/{propertyName}") public ValidMetadataValueDetailListResponse getValidMetadataValues(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam int startFrom, @RequestParam 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

      @GetMapping(path="/{propertyName}/consistent-metadata-values") public ValidMetadataValueListResponse getConsistentMetadataValues(@PathVariable String serverName, @RequestParam(required=false) String typeName, @PathVariable String propertyName, @RequestParam(required=false) String mapName, @RequestParam String preferredValue, @RequestParam int startFrom, @RequestParam 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

      @PostMapping(path="/{propertyName1}/consistent-metadata-values/{propertyName2}") public VoidResponse setConsistentMetadataValues(@PathVariable String serverName, @RequestParam(required=false) String typeName1, @PathVariable String propertyName1, @RequestParam(required=false) String mapName1, @RequestParam String preferredValue1, @RequestParam(required=false) String typeName2, @PathVariable String propertyName2, @RequestParam(required=false) String mapName2, @RequestParam String preferredValue2, @RequestBody(required=false) 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

      @GetMapping(path="/open-metadata-types") public TypeDefGalleryResponse getAllTypes(@PathVariable 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 attributes 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.
    • getEntityDefs

      @GetMapping(path="/open-metadata-types/entity-defs") public TypeDefListResponse getEntityDefs(@PathVariable String serverName)
      Returns all the entity type definitions.
      Parameters:
      serverName - unique identifier for requested server.
      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.
    • getRelationshipDefs

      @GetMapping(path="/open-metadata-types/relationship-defs") public TypeDefListResponse getRelationshipDefs(@PathVariable String serverName)
      Returns all the relationship type definitions.
      Parameters:
      serverName - unique identifier for requested server.
      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.
    • getClassificationDefs

      @GetMapping(path="/open-metadata-types/classification-defs") public TypeDefListResponse getClassificationDefs(@PathVariable String serverName)
      Returns all the classification type definitions.
      Parameters:
      serverName - unique identifier for requested server.
      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

      @GetMapping(path="/open-metadata-types/sub-types/{typeName}") public TypeDefListResponse getSubTypes(@PathVariable String serverName, @PathVariable 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:
      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.
    • getValidRelationshipTypes

      @GetMapping(path="/open-metadata-types/{typeName}/attached-relationships") public TypeDefListResponse getValidRelationshipTypes(@PathVariable String serverName, @PathVariable 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

      @GetMapping(path="/open-metadata-types/{typeName}/attached-classifications") public TypeDefListResponse getValidClassificationTypes(@PathVariable String serverName, @PathVariable 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

      @GetMapping(path="/open-metadata-types/name/{name}") public TypeDefResponse getTypeDefByName(@PathVariable String serverName, @PathVariable 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.