java.lang.Object
org.odpi.openmetadata.accessservices.datamanager.server.spring.DatabaseManagerResource

@RestController @RequestMapping("/servers/{serverName}/open-metadata/access-services/data-manager/users/{userId}") public class DatabaseManagerResource extends Object
DatabaseManagerRESTServices is the server-side implementation of the Data Manager OMAS's support for relational databases. It matches the DatabaseManagerClient.
  • Constructor Details

    • DatabaseManagerResource

      public DatabaseManagerResource()
      Default constructor
  • Method Details

    • createDatabase

      @PostMapping(path="/databases") public GUIDResponse createDatabase(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a database.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - properties to store
      Returns:
      unique identifier of the new metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseFromTemplate

      @PostMapping(path="/databases/from-template/{templateGUID}") public GUIDResponse createDatabaseFromTemplate(@PathVariable String serverName, @PathVariable String userId, @PathVariable String templateGUID, @RequestBody TemplateRequestBody requestBody)
      Create a new metadata element to represent a database using an existing metadata element as a template.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      templateGUID - unique identifier of the metadata element to copy
      requestBody - properties that override the template
      Returns:
      unique identifier of the new metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • updateDatabase

      @PostMapping(path="/databases/{databaseGUID}") public VoidResponse updateDatabase(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseGUID, @RequestParam(required=false) boolean isMergeUpdate, @RequestBody ReferenceableRequestBody requestBody)
      Update the metadata element representing a database.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseGUID - unique identifier of the metadata element to update
      isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
      requestBody - new properties for this element
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • publishDatabase

      @PostMapping(path="/databases/{databaseGUID}/publish") public VoidResponse publishDatabase(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseGUID, @RequestBody(required=false) ClassificationRequestBody requestBody)
      Update the zones for the database asset so that it becomes visible to consumers. (The zones are set to the list of zones in the publishedZones option configured for each instance of the Data Manager OMAS).
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseGUID - unique identifier of the metadata element to publish
      requestBody - classification request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • withdrawDatabase

      @PostMapping(path="/databases/{databaseGUID}/withdraw") public VoidResponse withdrawDatabase(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseGUID, @RequestBody(required=false) ClassificationRequestBody requestBody)
      Update the zones for the database asset so that it is no longer visible to consumers. (The zones are set to the list of zones in the defaultZones option configured for each instance of the Data Manager OMAS. This is the setting when the database is first created).
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseGUID - unique identifier of the metadata element to withdraw
      requestBody - classification request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • removeDatabase

      @PostMapping(path="/databases/{databaseGUID}/delete") public VoidResponse removeDatabase(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody)
      Remove the metadata element representing a database.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseGUID - unique identifier of the metadata element to remove
      requestBody - empty request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • findDatabases

      @PostMapping(path="/databases/by-search-string") public DatabasesResponse findDatabases(@PathVariable String serverName, @PathVariable String userId, @RequestBody SearchStringRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database metadata elements that contain the search string. The search string is treated as a regular expression.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - string to find in the properties
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabasesByName

      @PostMapping(path="/databases/by-name") public DatabasesResponse getDatabasesByName(@PathVariable String serverName, @PathVariable String userId, @RequestBody NameRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - name to search for
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabasesForDatabaseManager

      @GetMapping(path="/database-managers/{databaseManagerGUID}/{databaseManagerName}/databases") public DatabasesResponse getDatabasesForDatabaseManager(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseManagerGUID, @PathVariable String databaseManagerName, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of databases created by this database manager.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseManagerGUID - unique identifier of software server capability representing the owning DBMS
      databaseManagerName - unique name of software server capability representing the owning DBMS
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseByGUID

      @GetMapping(path="/databases/{guid}") public DatabaseResponse getDatabaseByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String guid)
      Retrieve the database metadata element with the supplied unique identifier.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      guid - unique identifier of the requested metadata element
      Returns:
      matching metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseSchema

      @PostMapping(path="/databases/schemas") public GUIDResponse createDatabaseSchema(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a database schema.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - properties about the database schema
      Returns:
      unique identifier of the new database schema or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseSchemaFromTemplate

      @PostMapping(path="/databases/schemas/from-template/{templateGUID}") public GUIDResponse createDatabaseSchemaFromTemplate(@PathVariable String serverName, @PathVariable String userId, @PathVariable String templateGUID, @RequestBody TemplateRequestBody requestBody)
      Create a new metadata element to represent a database schema using an existing metadata element as a template.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      templateGUID - unique identifier of the metadata element to copy
      requestBody - properties that override the template
      Returns:
      unique identifier of the new database schema or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • updateDatabaseSchema

      @PostMapping(path="/databases/schemas/{databaseSchemaGUID}") public VoidResponse updateDatabaseSchema(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseSchemaGUID, @RequestParam(required=false) boolean isMergeUpdate, @RequestBody ReferenceableRequestBody requestBody)
      Update the metadata element representing a database schema.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseSchemaGUID - unique identifier of the metadata element to update
      isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
      requestBody - new properties for the metadata element
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • publishDatabaseSchema

      @PostMapping(path="/databases/schemas/{databaseSchemaGUID}/publish") public VoidResponse publishDatabaseSchema(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseSchemaGUID, @RequestBody(required=false) ClassificationRequestBody requestBody)
      Update the zones for the database asset so that it becomes visible to consumers. (The zones are set to the list of zones in the publishedZones option configured for each instance of the Data Manager OMAS).
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseSchemaGUID - unique identifier of the metadata element to publish
      requestBody - classification request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • withdrawDatabaseSchema

      @PostMapping(path="/databases/schemas/{databaseSchemaGUID}/withdraw") public VoidResponse withdrawDatabaseSchema(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseSchemaGUID, @RequestBody(required=false) ClassificationRequestBody requestBody)
      Update the zones for the database asset so that it is no longer visible to consumers. (The zones are set to the list of zones in the defaultZones option configured for each instance of the Data Manager OMAS. This is the setting when the database is first created).
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseSchemaGUID - unique identifier of the metadata element to withdraw
      requestBody - classification request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • removeDatabaseSchema

      @PostMapping(path="/databases/schemas/{databaseSchemaGUID}/delete") public VoidResponse removeDatabaseSchema(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseSchemaGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody)
      Remove the metadata element representing a database schema.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseSchemaGUID - unique identifier of the metadata element to remove
      requestBody - external source request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • findDatabaseSchemas

      @PostMapping(path="/databases/schemas/by-search-string") public DatabaseSchemasResponse findDatabaseSchemas(@PathVariable String serverName, @PathVariable String userId, @RequestBody SearchStringRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database schema metadata elements that contain the search string. The search string is treated as a regular expression.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - string to find in the properties
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getSchemasForDatabase

      @GetMapping(path="/databases/{databaseGUID}/schemas") public DatabaseSchemasResponse getSchemasForDatabase(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Return the list of schemas associated with a database.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseGUID - unique identifier of the database to query
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of metadata elements describing the schemas associated with the requested database or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseSchemasByName

      @PostMapping(path="/databases/schemas/by-name") public DatabaseSchemasResponse getDatabaseSchemasByName(@PathVariable String serverName, @PathVariable String userId, @RequestBody NameRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database schema metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - name to search for
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseSchemaByGUID

      @GetMapping(path="/databases/schemas/{guid}") public DatabaseSchemaResponse getDatabaseSchemaByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String guid)
      Retrieve the database schema metadata element with the supplied unique identifier.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      guid - unique identifier of the requested metadata element
      Returns:
      requested metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseSchemaType

      @PostMapping(path="/databases/schema-type") public GUIDResponse createDatabaseSchemaType(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a database top-level schema type used to attach tables and views to the database/database schema.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - qualified name of the schema type - suggest "SchemaOf:" + asset's qualified name
      Returns:
      unique identifier of the database schema type or InvalidParameterException the bean properties are invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
    • attachSchemaTypeToDatabaseAsset

      @PostMapping(path="/databases/{databaseAssetGUID}/schema-type/{schemaTypeGUID}") public VoidResponse attachSchemaTypeToDatabaseAsset(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseAssetGUID, @PathVariable String schemaTypeGUID, @RequestBody(required=false) RelationshipRequestBody requestBody)
      Link the schema type and asset. This is called from outside the AssetHandler. The databaseAssetGUID is checked to ensure the asset exists and updates are allowed. If there is already a schema attached, it is deleted.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseAssetGUID - unique identifier of the asset to connect the schema to
      schemaTypeGUID - identifier for schema Type object
      requestBody - null request body
      Returns:
      void or InvalidParameterException the bean properties are invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
    • createDatabaseTable

      @PostMapping(path="/databases/tables") public GUIDResponse createDatabaseTable(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a database table.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - properties for the database table
      Returns:
      unique identifier of the new metadata element for the database table or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseTableFromTemplate

      @PostMapping(path="/databases/tables/from-template/{templateGUID}") public GUIDResponse createDatabaseTableFromTemplate(@PathVariable String serverName, @PathVariable String userId, @PathVariable String templateGUID, @RequestBody TemplateRequestBody requestBody)
      Create a new metadata element to represent a database table using an existing metadata element as a template.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      templateGUID - unique identifier of the metadata element to copy
      requestBody - properties that override the template
      Returns:
      unique identifier of the new database table or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseTableForSchemaType

      @PostMapping(path="/databases/schema-type/tables") public GUIDResponse createDatabaseTableForSchemaType(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a database table.
      Parameters:
      serverName - name of the service to route the request to
      userId - calling user
      requestBody - properties for the database table
      Returns:
      unique identifier of the new metadata element for the database table or 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)
    • updateDatabaseTable

      @PostMapping(path="/databases/tables/{databaseTableGUID}") public VoidResponse updateDatabaseTable(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseTableGUID, @RequestParam(required=false) boolean isMergeUpdate, @RequestBody ReferenceableRequestBody requestBody)
      Update the metadata element representing a database table.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseTableGUID - unique identifier of the database table to update
      isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
      requestBody - new properties for the database table
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • removeDatabaseTable

      @PostMapping(path="/databases/tables/{databaseTableGUID}/delete") public VoidResponse removeDatabaseTable(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseTableGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody)
      Remove the metadata element representing a database table.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseTableGUID - unique identifier of the metadata element to remove
      requestBody - empty request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • findDatabaseTables

      @PostMapping(path="/databases/tables/by-search-string") public DatabaseTablesResponse findDatabaseTables(@PathVariable String serverName, @PathVariable String userId, @RequestBody SearchStringRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database table metadata elements that contain the search string. The search string is treated as a regular expression.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - string to find in the properties
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getTablesForDatabaseAsset

      @GetMapping(path="/databases/{databaseAssetGUID}/tables") public DatabaseTablesResponse getTablesForDatabaseAsset(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseAssetGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database tables associated with a database or database schema.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseAssetGUID - unique identifier of the database or database schema of interest
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of associated metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseTablesByName

      @PostMapping(path="/databases/tables/by-name") public DatabaseTablesResponse getDatabaseTablesByName(@PathVariable String serverName, @PathVariable String userId, @RequestBody NameRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database table metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - name to search for
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseTableByGUID

      @GetMapping(path="/databases/tables/{guid}") public DatabaseTableResponse getDatabaseTableByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String guid)
      Retrieve the database table metadata element with the supplied unique identifier.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      guid - unique identifier of the requested metadata element
      Returns:
      matching metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseView

      @PostMapping(path="/databases/tables/views") public GUIDResponse createDatabaseView(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a database view.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - properties for the new view
      Returns:
      unique identifier of the new metadata element for the database view or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseViewFromTemplate

      @PostMapping(path="/databases/tables/views/from-template/{templateGUID}") public GUIDResponse createDatabaseViewFromTemplate(@PathVariable String serverName, @PathVariable String userId, @PathVariable String templateGUID, @RequestBody TemplateRequestBody requestBody)
      Create a new metadata element to represent a database view using an existing metadata element as a template.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      templateGUID - unique identifier of the metadata element to copy
      requestBody - properties that override the template
      Returns:
      unique identifier of the new metadata element for the database view or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseViewForSchemaType

      @PostMapping(path="/databases/schema-type/tables/views") public GUIDResponse createDatabaseViewForSchemaType(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a database view.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - properties for the new view
      Returns:
      unique identifier of the new metadata element for the database view or 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)
    • updateDatabaseView

      @PostMapping(path="/databases/tables/views/{databaseViewGUID}") public VoidResponse updateDatabaseView(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseViewGUID, @RequestParam(required=false) boolean isMergeUpdate, @RequestBody ReferenceableRequestBody requestBody)
      Update the metadata element representing a database table.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseViewGUID - unique identifier of the database view to update
      isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
      requestBody - properties for the new database view
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • removeDatabaseView

      @PostMapping(path="/databases/tables/views/{databaseViewGUID}/delete") public VoidResponse removeDatabaseView(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseViewGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody)
      Remove the metadata element representing a database table.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseViewGUID - unique identifier of the metadata element to remove
      requestBody - external source request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • findDatabaseViews

      @PostMapping(path="/databases/tables/views/by-search-string") public DatabaseViewsResponse findDatabaseViews(@PathVariable String serverName, @PathVariable String userId, @RequestBody SearchStringRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database view metadata elements that contain the search string. The search string is treated as a regular expression.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - string to find in the properties
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getViewsForDatabaseAsset

      @GetMapping(path="/databases/{databaseAssetGUID}/tables/views") public DatabaseViewsResponse getViewsForDatabaseAsset(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseAssetGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database views associated with a database or database schema.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseAssetGUID - unique identifier of the database or database schema of interest
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of associated metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseViewsByName

      @PostMapping(path="/databases/tables/views/by-name") public DatabaseViewsResponse getDatabaseViewsByName(@PathVariable String serverName, @PathVariable String userId, @RequestBody NameRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database view metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - name to search for
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseViewByGUID

      @GetMapping(path="/databases/tables/views/{guid}") public DatabaseViewResponse getDatabaseViewByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String guid)
      Retrieve the database view metadata element with the supplied unique identifier.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      guid - unique identifier of the requested metadata element
      Returns:
      matching metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseColumn

      @PostMapping(path="/databases/tables/columns") public GUIDResponse createDatabaseColumn(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a database column.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - properties for the new column
      Returns:
      unique identifier of the new metadata element for the database column or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • createDatabaseColumnFromTemplate

      @PostMapping(path="/databases/tables/columns/from-template/{templateGUID}") public GUIDResponse createDatabaseColumnFromTemplate(@PathVariable String serverName, @PathVariable String userId, @PathVariable String templateGUID, @RequestBody TemplateRequestBody requestBody)
      Create a new metadata element to represent a database column using an existing metadata element as a template.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      templateGUID - unique identifier of the metadata element to copy
      requestBody - properties that override the template
      Returns:
      unique identifier of the new metadata element for the database column InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • updateDatabaseColumn

      @PostMapping(path="/databases/tables/columns/{databaseColumnGUID}") public VoidResponse updateDatabaseColumn(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseColumnGUID, @RequestParam(required=false) boolean isMergeUpdate, @RequestBody ReferenceableRequestBody requestBody)
      Update the metadata element representing a database column.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseColumnGUID - unique identifier of the metadata element to update
      isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
      requestBody - new properties for the metadata element
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • removeDatabaseColumn

      @PostMapping(path="/databases/tables/columns/{databaseColumnGUID}/delete") public VoidResponse removeDatabaseColumn(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseColumnGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody)
      Remove the metadata element representing a database column.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseColumnGUID - unique identifier of the metadata element to remove
      requestBody - external source request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • findDatabaseColumns

      @PostMapping(path="/databases/tables/columns/by-search-string") public DatabaseColumnsResponse findDatabaseColumns(@PathVariable String serverName, @PathVariable String userId, @RequestBody SearchStringRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database column metadata elements that contain the search string. The search string is treated as a regular expression.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - string to find in the properties
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getColumnsForDatabaseTable

      @GetMapping(path="/databases/tables/{databaseTableGUID}/columns") public DatabaseColumnsResponse getColumnsForDatabaseTable(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseTableGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of column for a database table (or view)
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseTableGUID - unique identifier of the database table of interest
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseColumnsByName

      @PostMapping(path="/databases/tables/columns/by-name") public DatabaseColumnsResponse getDatabaseColumnsByName(@PathVariable String serverName, @PathVariable String userId, @RequestBody NameRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of database column metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - name to search for
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • getDatabaseColumnByGUID

      @GetMapping(path="/databases/tables/columns/{guid}") public DatabaseColumnResponse getDatabaseColumnByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String guid)
      Retrieve the database column metadata element with the supplied unique identifier.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      guid - unique identifier of the requested metadata element
      Returns:
      matching metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • setPrimaryKeyOnColumn

      @PostMapping(path="/databases/tables/columns/{databaseColumnGUID}/primary-key") public VoidResponse setPrimaryKeyOnColumn(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseColumnGUID, @RequestBody ClassificationRequestBody requestBody)
      Classify a column in a database table as the primary key. This means each row has a different value in this column, and it can be used to uniquely identify the column.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseColumnGUID - unique identifier if the primary key column
      requestBody - properties to store
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • removePrimaryKeyFromColumn

      @PostMapping(path="/databases/tables/columns/{databaseColumnGUID}/primary-key/delete") public VoidResponse removePrimaryKeyFromColumn(@PathVariable String serverName, @PathVariable String userId, @PathVariable String databaseColumnGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody)
      Remove the classification that this column is a primary key.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      databaseColumnGUID - unique identifier if the primary key column
      requestBody - external source request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • addForeignKeyRelationship

      @PostMapping(path="/databases/tables/columns/{foreignKeyColumnGUID}/foreign-key/{primaryKeyColumnGUID}") public VoidResponse addForeignKeyRelationship(@PathVariable String serverName, @PathVariable String userId, @PathVariable String primaryKeyColumnGUID, @PathVariable String foreignKeyColumnGUID, @RequestBody RelationshipRequestBody requestBody)
      Create a foreign relationship between two columns. One of the columns holds the primary key of the other to form a link.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      primaryKeyColumnGUID - unique identifier of the column containing the primary key
      foreignKeyColumnGUID - unique identifier of the column containing the primary key from the other table
      requestBody - properties about the foreign key relationship
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
    • removeForeignKeyRelationship

      @PostMapping(path="/databases/tables/columns/{foreignKeyColumnGUID}/foreign-key/{primaryKeyColumnGUID}/delete") public VoidResponse removeForeignKeyRelationship(@PathVariable String serverName, @PathVariable String userId, @PathVariable String primaryKeyColumnGUID, @PathVariable String foreignKeyColumnGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody)
      Remove the foreign key relationship for the requested columns.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      primaryKeyColumnGUID - unique identifier of the column that is the linked primary key
      foreignKeyColumnGUID - unique identifier of the column the contains the primary key from another table
      requestBody - external source request body
      Returns:
      void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)