Class APIManagerClient

    • Constructor Summary

      Constructors 
      Constructor Description
      APIManagerClient​(java.lang.String serverName, java.lang.String serverPlatformURLRoot)
      Create a new client with no authentication embedded in the HTTP request.
      APIManagerClient​(java.lang.String serverName, java.lang.String serverPlatformURLRoot, java.lang.String userId, java.lang.String password)
      Create a new client that passes userId and password in each HTTP request.
      APIManagerClient​(java.lang.String serverName, java.lang.String serverPlatformURLRoot, java.lang.String userId, java.lang.String password, AuditLog auditLog)
      Create a new client that passes userId and password in each HTTP request.
      APIManagerClient​(java.lang.String serverName, java.lang.String serverPlatformURLRoot, DataManagerRESTClient restClient, int maxPageSize, AuditLog auditLog)
      Create a new client that is going to be used in an OMAG Server.
      APIManagerClient​(java.lang.String serverName, java.lang.String serverPlatformURLRoot, AuditLog auditLog)
      Create a new client with no authentication embedded in the HTTP request.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String createAPI​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, boolean apiManagerIsHome, java.lang.String endpointGUID, APIProperties apiProperties)
      Create a new metadata element to represent an API.
      java.lang.String createAPIFromTemplate​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, boolean apiManagerIsHome, java.lang.String endpointGUID, java.lang.String templateGUID, TemplateProperties templateProperties)
      Create a new metadata element to represent an API using an existing metadata element as a template.
      java.lang.String createAPIOperation​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiGUID, APIOperationProperties properties)
      Create a new metadata element to represent an API Operation.
      java.lang.String createAPIOperationFromTemplate​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String templateGUID, java.lang.String apiGUID, TemplateProperties templateProperties)
      Create a new metadata element to represent a API operation using an existing metadata element as a template.
      java.lang.String createAPIParameter​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String schemaElementGUID, APIParameterProperties apiParameterProperties)
      Create a new metadata element to represent a API parameter.
      java.lang.String createAPIParameterFromTemplate​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String schemaElementGUID, java.lang.String templateGUID, TemplateProperties templateProperties)
      Create a new metadata element to represent a API parameter using an existing metadata element as a template.
      java.lang.String createAPIParameterList​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiOperationGUID, APIParameterListType parameterListType, APIParameterListProperties properties)
      Create a new metadata element to represent an API Operation's Parameter list.
      java.lang.String createAPIParameterListFromTemplate​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String templateGUID, java.lang.String apiOperationGUID, APIParameterListType parameterListType, TemplateProperties templateProperties)
      Create a new metadata element to represent a an API Parameter List using an existing API Parameter List as a template.
      java.util.List<APIOperationElement> findAPIOperations​(java.lang.String userId, java.lang.String searchString, int startFrom, int pageSize)
      Retrieve the list of API operation metadata elements that contain the search string.
      java.util.List<APIParameterListElement> findAPIParameterLists​(java.lang.String userId, java.lang.String searchString, int startFrom, int pageSize)
      Retrieve the list of API Parameter List metadata elements that contain the search string.
      java.util.List<APIParameterElement> findAPIParameters​(java.lang.String userId, java.lang.String searchString, java.lang.String typeName, int startFrom, int pageSize)
      Retrieve the list of API parameter metadata elements that contain the search string.
      java.util.List<APIElement> findAPIs​(java.lang.String userId, java.lang.String searchString, int startFrom, int pageSize)
      Retrieve the list of api metadata elements that contain the search string.
      APIElement getAPIByGUID​(java.lang.String userId, java.lang.String guid)
      Retrieve the api metadata element with the supplied unique identifier.
      APIOperationElement getAPIOperationByGUID​(java.lang.String userId, java.lang.String guid)
      Retrieve the API operation metadata element with the supplied unique identifier.
      java.util.List<APIOperationElement> getAPIOperationsByName​(java.lang.String userId, java.lang.String name, int startFrom, int pageSize)
      Retrieve the list of API operation metadata elements with a matching qualified or display name.
      APIParameterElement getAPIParameterByGUID​(java.lang.String userId, java.lang.String apiParameterGUID)
      Retrieve the API parameter metadata element with the supplied unique identifier.
      APIParameterListElement getAPIParameterListByGUID​(java.lang.String userId, java.lang.String guid)
      Retrieve the API Parameter List metadata element with the supplied unique identifier.
      java.util.List<APIParameterListElement> getAPIParameterListsByName​(java.lang.String userId, java.lang.String name, int startFrom, int pageSize)
      Retrieve the list of API Parameter List metadata elements with a matching qualified or display name.
      java.util.List<APIParameterElement> getAPIParametersByName​(java.lang.String userId, java.lang.String name, java.lang.String typeName, int startFrom, int pageSize)
      Retrieve the list of API parameter metadata elements with a matching qualified or display name.
      java.util.List<APIElement> getAPIsByName​(java.lang.String userId, java.lang.String name, int startFrom, int pageSize)
      Retrieve the list of api metadata elements with a matching qualified or display name.
      java.util.List<APIElement> getAPIsForAPIManager​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, int startFrom, int pageSize)
      Retrieve the list of apis created by this caller.
      java.util.List<APIElement> getAPIsForEndpoint​(java.lang.String userId, java.lang.String endpointGUID, int startFrom, int pageSize)
      Retrieve the list of APIs connected to the requested endpoint.
      java.util.List<APIParameterElement> getNestedAPIParameters​(java.lang.String userId, java.lang.String parentElementGUID, int startFrom, int pageSize)
      Retrieve the list of API parameters associated with a parameter list or nested underneath another parameter.
      java.util.List<APIOperationElement> getOperationsForAPI​(java.lang.String userId, java.lang.String apiGUID, int startFrom, int pageSize)
      Return the list of api-operations associated with an API.
      java.util.List<APIParameterListElement> getParameterListsForAPIOperation​(java.lang.String userId, java.lang.String apiOperationGUID, int startFrom, int pageSize)
      Return the list of API Parameter Lists associated with an API Operation.
      void publishAPI​(java.lang.String userId, java.lang.String apiGUID)
      Update the zones for the api asset so that it becomes visible to consumers.
      void removeAPI​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiGUID, java.lang.String qualifiedName)
      Remove the metadata element representing an API.
      void removeAPIOperation​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiOperationGUID, java.lang.String qualifiedName)
      Remove the metadata element representing a API operation.
      void removeAPIParameter​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiParameterGUID)
      Remove the metadata element representing a API parameter.
      void removeAPIParameterList​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiParameterListGUID, java.lang.String qualifiedName)
      Remove an API Parameter List and all of its parameters.
      void setupSchemaType​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String relationshipTypeName, java.lang.String apiParameterGUID, java.lang.String schemaTypeGUID)
      Connect a schema type to an API parameter.
      void updateAPI​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiGUID, boolean isMergeUpdate, APIProperties apiProperties)
      Update the metadata element representing an API.
      void updateAPIOperation​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiOperationGUID, boolean isMergeUpdate, APIOperationProperties properties)
      Update the metadata element representing a API operation.
      void updateAPIParameter​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiParameterGUID, boolean isMergeUpdate, APIParameterProperties apiParameterProperties)
      Update the properties of the metadata element representing a API parameter.
      void updateAPIParameterList​(java.lang.String userId, java.lang.String apiManagerGUID, java.lang.String apiManagerName, java.lang.String apiParameterListGUID, boolean isMergeUpdate, APIParameterListProperties properties)
      Update the metadata element representing an API Parameter List.
      void withdrawAPI​(java.lang.String userId, java.lang.String apiGUID)
      Update the zones for the api asset so that it is no longer visible to consumers.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • APIManagerClient

        public APIManagerClient​(java.lang.String serverName,
                                java.lang.String serverPlatformURLRoot,
                                AuditLog auditLog)
                         throws InvalidParameterException
        Create a new client with no authentication embedded in the HTTP request.
        Parameters:
        serverName - name of the server to connect to
        serverPlatformURLRoot - the network address of the server running the OMAS REST servers
        auditLog - logging destination
        Throws:
        InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
      • APIManagerClient

        public APIManagerClient​(java.lang.String serverName,
                                java.lang.String serverPlatformURLRoot)
                         throws InvalidParameterException
        Create a new client with no authentication embedded in the HTTP request.
        Parameters:
        serverName - name of the server to connect to
        serverPlatformURLRoot - the network address of the server running the OMAS REST servers
        Throws:
        InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
      • APIManagerClient

        public APIManagerClient​(java.lang.String serverName,
                                java.lang.String serverPlatformURLRoot,
                                java.lang.String userId,
                                java.lang.String password,
                                AuditLog auditLog)
                         throws InvalidParameterException
        Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.
        Parameters:
        serverName - name of the server to connect to
        serverPlatformURLRoot - the network address of the server running the OMAS REST servers
        userId - caller's userId embedded in all HTTP requests
        password - caller's userId embedded in all HTTP requests
        auditLog - logging destination
        Throws:
        InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
      • APIManagerClient

        public APIManagerClient​(java.lang.String serverName,
                                java.lang.String serverPlatformURLRoot,
                                DataManagerRESTClient restClient,
                                int maxPageSize,
                                AuditLog auditLog)
                         throws InvalidParameterException
        Create a new client that is going to be used in an OMAG Server.
        Parameters:
        serverName - name of the server to connect to
        serverPlatformURLRoot - the network address of the server running the OMAS REST servers
        restClient - client that issues the REST API calls
        maxPageSize - maximum number of results supported by this server
        auditLog - logging destination
        Throws:
        InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
      • APIManagerClient

        public APIManagerClient​(java.lang.String serverName,
                                java.lang.String serverPlatformURLRoot,
                                java.lang.String userId,
                                java.lang.String password)
                         throws InvalidParameterException
        Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.
        Parameters:
        serverName - name of the server to connect to
        serverPlatformURLRoot - the network address of the server running the OMAS REST servers
        userId - caller's userId embedded in all HTTP requests
        password - caller's userId embedded in all HTTP requests
        Throws:
        InvalidParameterException - there is a problem creating the client-side components to issue any REST API calls.
    • Method Detail

      • createAPI

        public java.lang.String createAPI​(java.lang.String userId,
                                          java.lang.String apiManagerGUID,
                                          java.lang.String apiManagerName,
                                          boolean apiManagerIsHome,
                                          java.lang.String endpointGUID,
                                          APIProperties apiProperties)
                                   throws InvalidParameterException,
                                          UserNotAuthorizedException,
                                          PropertyServerException
        Create a new metadata element to represent an API.
        Specified by:
        createAPI in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        apiManagerIsHome - should the API be marked as owned by the API manager so others can not update?
        endpointGUID - unique identifier of the endpoint where this API is located
        apiProperties - properties to store
        Returns:
        unique identifier of the new metadata element
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createAPIFromTemplate

        public java.lang.String createAPIFromTemplate​(java.lang.String userId,
                                                      java.lang.String apiManagerGUID,
                                                      java.lang.String apiManagerName,
                                                      boolean apiManagerIsHome,
                                                      java.lang.String endpointGUID,
                                                      java.lang.String templateGUID,
                                                      TemplateProperties templateProperties)
                                               throws InvalidParameterException,
                                                      UserNotAuthorizedException,
                                                      PropertyServerException
        Create a new metadata element to represent an API using an existing metadata element as a template.
        Specified by:
        createAPIFromTemplate in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        apiManagerIsHome - should the API be marked as owned by the API manager so others can not update?
        endpointGUID - unique identifier of the endpoint where this API is located
        templateGUID - unique identifier of the metadata element to copy
        templateProperties - properties that override the template
        Returns:
        unique identifier of the new metadata element
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • updateAPI

        public void updateAPI​(java.lang.String userId,
                              java.lang.String apiManagerGUID,
                              java.lang.String apiManagerName,
                              java.lang.String apiGUID,
                              boolean isMergeUpdate,
                              APIProperties apiProperties)
                       throws InvalidParameterException,
                              UserNotAuthorizedException,
                              PropertyServerException
        Update the metadata element representing an API.
        Specified by:
        updateAPI in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        apiGUID - unique identifier of the metadata element to update
        isMergeUpdate - are unspecified properties unchanged (true) or removed?
        apiProperties - new properties for this element
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • removeAPI

        public void removeAPI​(java.lang.String userId,
                              java.lang.String apiManagerGUID,
                              java.lang.String apiManagerName,
                              java.lang.String apiGUID,
                              java.lang.String qualifiedName)
                       throws InvalidParameterException,
                              UserNotAuthorizedException,
                              PropertyServerException
        Remove the metadata element representing an API.
        Specified by:
        removeAPI in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        apiGUID - unique identifier of the metadata element to remove
        qualifiedName - unique name of the metadata element to remove
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createAPIOperation

        public java.lang.String createAPIOperation​(java.lang.String userId,
                                                   java.lang.String apiManagerGUID,
                                                   java.lang.String apiManagerName,
                                                   java.lang.String apiGUID,
                                                   APIOperationProperties properties)
                                            throws InvalidParameterException,
                                                   UserNotAuthorizedException,
                                                   PropertyServerException
        Create a new metadata element to represent an API Operation.
        Specified by:
        createAPIOperation in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        apiGUID - unique identifier of the api where the API operation is located
        properties - properties about the API operation
        Returns:
        unique identifier of the new API operation
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createAPIOperationFromTemplate

        public java.lang.String createAPIOperationFromTemplate​(java.lang.String userId,
                                                               java.lang.String apiManagerGUID,
                                                               java.lang.String apiManagerName,
                                                               java.lang.String templateGUID,
                                                               java.lang.String apiGUID,
                                                               TemplateProperties templateProperties)
                                                        throws InvalidParameterException,
                                                               UserNotAuthorizedException,
                                                               PropertyServerException
        Create a new metadata element to represent a API operation using an existing metadata element as a template.
        Specified by:
        createAPIOperationFromTemplate in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        templateGUID - unique identifier of the metadata element to copy
        apiGUID - unique identifier of the api where the API operation is located
        templateProperties - properties that override the template
        Returns:
        unique identifier of the new API operation
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • updateAPIOperation

        public void updateAPIOperation​(java.lang.String userId,
                                       java.lang.String apiManagerGUID,
                                       java.lang.String apiManagerName,
                                       java.lang.String apiOperationGUID,
                                       boolean isMergeUpdate,
                                       APIOperationProperties properties)
                                throws InvalidParameterException,
                                       UserNotAuthorizedException,
                                       PropertyServerException
        Update the metadata element representing a API operation.
        Specified by:
        updateAPIOperation in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        apiOperationGUID - unique identifier of the metadata element to update
        isMergeUpdate - are unspecified properties unchanged (true) or removed?
        properties - new properties for the metadata element
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • removeAPIOperation

        public void removeAPIOperation​(java.lang.String userId,
                                       java.lang.String apiManagerGUID,
                                       java.lang.String apiManagerName,
                                       java.lang.String apiOperationGUID,
                                       java.lang.String qualifiedName)
                                throws InvalidParameterException,
                                       UserNotAuthorizedException,
                                       PropertyServerException
        Remove the metadata element representing a API operation.
        Specified by:
        removeAPIOperation in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the API manager
        apiManagerName - unique name of software server capability representing the API manager
        apiOperationGUID - unique identifier of the metadata element to remove
        qualifiedName - unique name of the metadata element to remove
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createAPIParameterList

        public java.lang.String createAPIParameterList​(java.lang.String userId,
                                                       java.lang.String apiManagerGUID,
                                                       java.lang.String apiManagerName,
                                                       java.lang.String apiOperationGUID,
                                                       APIParameterListType parameterListType,
                                                       APIParameterListProperties properties)
                                                throws InvalidParameterException,
                                                       UserNotAuthorizedException,
                                                       PropertyServerException
        Create a new metadata element to represent an API Operation's Parameter list. This describes the structure of the payload supported by the API's operation. The structure of this API Operation is added using API Parameter schema attributes. These parameters can have a simple type or a nested structure.
        Specified by:
        createAPIParameterList in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        apiOperationGUID - unique identifier of an APIOperation
        parameterListType - is this a header, request or response
        properties - properties about the API parameter list
        Returns:
        unique identifier of the new API parameter list
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createAPIParameterListFromTemplate

        public java.lang.String createAPIParameterListFromTemplate​(java.lang.String userId,
                                                                   java.lang.String apiManagerGUID,
                                                                   java.lang.String apiManagerName,
                                                                   java.lang.String templateGUID,
                                                                   java.lang.String apiOperationGUID,
                                                                   APIParameterListType parameterListType,
                                                                   TemplateProperties templateProperties)
                                                            throws InvalidParameterException,
                                                                   UserNotAuthorizedException,
                                                                   PropertyServerException
        Create a new metadata element to represent a an API Parameter List using an existing API Parameter List as a template.
        Specified by:
        createAPIParameterListFromTemplate in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        templateGUID - unique identifier of the metadata element to copy
        apiOperationGUID - unique identifier of the API Operation where the API Parameter List is located
        parameterListType - is this a header, request or response
        templateProperties - properties that override the template
        Returns:
        unique identifier of the new API Parameter List
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • updateAPIParameterList

        public void updateAPIParameterList​(java.lang.String userId,
                                           java.lang.String apiManagerGUID,
                                           java.lang.String apiManagerName,
                                           java.lang.String apiParameterListGUID,
                                           boolean isMergeUpdate,
                                           APIParameterListProperties properties)
                                    throws InvalidParameterException,
                                           UserNotAuthorizedException,
                                           PropertyServerException
        Update the metadata element representing an API Parameter List.
        Specified by:
        updateAPIParameterList in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        apiParameterListGUID - unique identifier of the metadata element to update
        isMergeUpdate - are unspecified properties unchanged (true) or removed?
        properties - new properties for the metadata element
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • removeAPIParameterList

        public void removeAPIParameterList​(java.lang.String userId,
                                           java.lang.String apiManagerGUID,
                                           java.lang.String apiManagerName,
                                           java.lang.String apiParameterListGUID,
                                           java.lang.String qualifiedName)
                                    throws InvalidParameterException,
                                           UserNotAuthorizedException,
                                           PropertyServerException
        Remove an API Parameter List and all of its parameters.
        Specified by:
        removeAPIParameterList in interface APIManagerInterface
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        apiParameterListGUID - unique identifier of the metadata element to remove
        qualifiedName - unique name of the metadata element to remove
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createAPIParameter

        public java.lang.String createAPIParameter​(java.lang.String userId,
                                                   java.lang.String apiManagerGUID,
                                                   java.lang.String apiManagerName,
                                                   java.lang.String schemaElementGUID,
                                                   APIParameterProperties apiParameterProperties)
                                            throws InvalidParameterException,
                                                   UserNotAuthorizedException,
                                                   PropertyServerException
        Create a new metadata element to represent a API parameter.
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        schemaElementGUID - unique identifier of the schemaType or Schema Attribute where the API parameter is nested underneath
        apiParameterProperties - properties for the API parameter
        Returns:
        unique identifier of the new metadata element for the API parameter
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • createAPIParameterFromTemplate

        public java.lang.String createAPIParameterFromTemplate​(java.lang.String userId,
                                                               java.lang.String apiManagerGUID,
                                                               java.lang.String apiManagerName,
                                                               java.lang.String schemaElementGUID,
                                                               java.lang.String templateGUID,
                                                               TemplateProperties templateProperties)
                                                        throws InvalidParameterException,
                                                               UserNotAuthorizedException,
                                                               PropertyServerException
        Create a new metadata element to represent a API parameter using an existing metadata element as a template.
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        schemaElementGUID - unique identifier of the schemaType or Schema Attribute where the API parameter is connected to
        templateGUID - unique identifier of the metadata element to copy
        templateProperties - properties that override the template
        Returns:
        unique identifier of the new metadata element for the API parameter
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • setupSchemaType

        public void setupSchemaType​(java.lang.String userId,
                                    java.lang.String apiManagerGUID,
                                    java.lang.String apiManagerName,
                                    java.lang.String relationshipTypeName,
                                    java.lang.String apiParameterGUID,
                                    java.lang.String schemaTypeGUID)
                             throws InvalidParameterException,
                                    UserNotAuthorizedException,
                                    PropertyServerException
        Connect a schema type to an API parameter.
        Specified by:
        setupSchemaType in interface SchemaManagerInterface
        Overrides:
        setupSchemaType in class SchemaManagerClient
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        relationshipTypeName - name of relationship to create
        apiParameterGUID - unique identifier of the API parameter
        schemaTypeGUID - unique identifier of the schema type to connect
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • updateAPIParameter

        public void updateAPIParameter​(java.lang.String userId,
                                       java.lang.String apiManagerGUID,
                                       java.lang.String apiManagerName,
                                       java.lang.String apiParameterGUID,
                                       boolean isMergeUpdate,
                                       APIParameterProperties apiParameterProperties)
                                throws InvalidParameterException,
                                       UserNotAuthorizedException,
                                       PropertyServerException
        Update the properties of the metadata element representing a API parameter.
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        apiParameterGUID - unique identifier of the API parameter to update
        isMergeUpdate - should the new properties be merged with existing properties (true) or completely replace them (false)?
        apiParameterProperties - new properties for the API parameter
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • removeAPIParameter

        public void removeAPIParameter​(java.lang.String userId,
                                       java.lang.String apiManagerGUID,
                                       java.lang.String apiManagerName,
                                       java.lang.String apiParameterGUID)
                                throws InvalidParameterException,
                                       UserNotAuthorizedException,
                                       PropertyServerException
        Remove the metadata element representing a API parameter.
        Parameters:
        userId - calling user
        apiManagerGUID - unique identifier of software server capability representing the caller
        apiManagerName - unique name of software server capability representing the caller
        apiParameterGUID - unique identifier of the metadata element to remove
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • findAPIParameters

        public java.util.List<APIParameterElement> findAPIParameters​(java.lang.String userId,
                                                                     java.lang.String searchString,
                                                                     java.lang.String typeName,
                                                                     int startFrom,
                                                                     int pageSize)
                                                              throws InvalidParameterException,
                                                                     UserNotAuthorizedException,
                                                                     PropertyServerException
        Retrieve the list of API parameter metadata elements that contain the search string. The search string is treated as a regular expression.
        Parameters:
        userId - calling user
        searchString - string to find in the properties
        typeName - optional type name for the API parameter - used to restrict the search results
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of matching metadata elements
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • getNestedAPIParameters

        public java.util.List<APIParameterElement> getNestedAPIParameters​(java.lang.String userId,
                                                                          java.lang.String parentElementGUID,
                                                                          int startFrom,
                                                                          int pageSize)
                                                                   throws InvalidParameterException,
                                                                          UserNotAuthorizedException,
                                                                          PropertyServerException
        Retrieve the list of API parameters associated with a parameter list or nested underneath another parameter.
        Parameters:
        userId - calling user
        parentElementGUID - unique identifier of the element of interest
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of associated metadata elements
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)
      • getAPIParametersByName

        public java.util.List<APIParameterElement> getAPIParametersByName​(java.lang.String userId,
                                                                          java.lang.String name,
                                                                          java.lang.String typeName,
                                                                          int startFrom,
                                                                          int pageSize)
                                                                   throws InvalidParameterException,
                                                                          UserNotAuthorizedException,
                                                                          PropertyServerException
        Retrieve the list of API parameter metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
        Parameters:
        userId - calling user
        name - name to search for
        typeName - optional type name for the schema type - used to restrict the search results
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of matching metadata elements
        Throws:
        InvalidParameterException - one of the parameters is invalid
        UserNotAuthorizedException - the user is not authorized to issue this request
        PropertyServerException - there is a problem reported in the open metadata server(s)