Class SpringRESTClientConnector
- java.lang.Object
-
- org.odpi.openmetadata.frameworks.connectors.Connector
-
- org.odpi.openmetadata.frameworks.connectors.ConnectorBase
-
- org.odpi.openmetadata.adapters.connectors.restclients.RESTClientConnector
-
- org.odpi.openmetadata.adapters.connectors.restclients.spring.SpringRESTClientConnector
-
- All Implemented Interfaces:
RESTClientCalls
public class SpringRESTClientConnector extends RESTClientConnector
RESTClient is responsible for issuing calls to the server's REST APIs. It is supported through a connector because there are often changes in this integration, and it saves maintenance work if all Egeria clients use this connector.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
ConnectorBase.ProtectedConnection
-
-
Field Summary
-
Fields inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
connectedAssetProperties, connectionBean, connectionProperties, connectorInstanceId, securedProperties
-
-
Constructor Summary
Constructors Constructor Description SpringRESTClientConnector()This constructor is work in progress as part of the upgrade of Egeria to use security.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> TcallDeleteRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody, Object... params)Issue a DELETE REST call that returns a response object.<T> TcallDeleteRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object requestBody, Object... params)Issue a DELETE REST call that returns a response object.<T> TcallDeleteRESTCallNoParams(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody)Issue a DELETE REST call that returns a response object.<T> TcallGetRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object... params)Issue a GET REST call that returns a response object.<T> TcallGetRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object... params)Issue a GET REST call that returns a response object.<T> TcallGetRESTCallNoParams(String methodName, Class<T> returnClass, String urlTemplate)Issue a GET REST call that returns a response object.<T> TcallPostRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody, Object... params)Issue a POST REST call that returns a response object.<T> TcallPostRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object requestBody, Object... params)Issue a POST REST call that returns a response object.<T> TcallPostRESTCallNoParams(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody)Issue a POST REST call that returns a response object.<T> TcallPutRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody, Object... params)Issue a PUT REST call that returns a response object.<T> TcallPutRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object requestBody, Object... params)Issue a PUT REST call that returns a response object.voidinitialize(String connectorInstanceId, ConnectionProperties connectionProperties)Initialize the connector.-
Methods inherited from class org.odpi.openmetadata.frameworks.connectors.ConnectorBase
disconnect, equals, getConnectedAssetProperties, getConnection, getConnectorInstanceId, hashCode, initializeConnectedAssetProperties, isActive, start, toString
-
Methods inherited from class org.odpi.openmetadata.frameworks.connectors.Connector
clearStatisticProperty, clearStatisticTimestamp, getConnectorStatistics, getStatisticCounter, getStatisticProperty, getStatisticTimestamp, incrementStatisticCounter, initializeStatisticCounter, setStatisticProperty, setStatisticTimestamp
-
-
-
-
Constructor Detail
-
SpringRESTClientConnector
public SpringRESTClientConnector() throws NoSuchAlgorithmException, KeyManagementExceptionThis constructor is work in progress as part of the upgrade of Egeria to use security.- Throws:
NoSuchAlgorithmException- new exception added as part of the security work - no description provided yetKeyManagementException- new exception added as part of the security work - no description provided yet
-
-
Method Detail
-
initialize
public void initialize(String connectorInstanceId, ConnectionProperties connectionProperties)
Initialize the connector.- Overrides:
initializein classConnectorBase- Parameters:
connectorInstanceId- - unique id for the connector instance - useful for messages etcconnectionProperties- - POJO for the configuration used to create the connector.
-
callGetRESTCallNoParams
public <T> T callGetRESTCallNoParams(String methodName, Class<T> returnClass, String urlTemplate) throws RESTServerException
Issue a GET REST call that returns a response object.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.returnClass- class of the response object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.- Returns:
- response object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callGetRESTCall
public <T> T callGetRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object... params) throws RESTServerException
Issue a GET REST call that returns a response object.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.returnClass- class of the response object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.params- a list of parameters that are slotted into the url template.- Returns:
- response object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callPostRESTCallNoParams
public <T> T callPostRESTCallNoParams(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody) throws RESTServerException
Issue a POST REST call that returns a response object. This is typically a create, update, or find with complex parameters.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.returnClass- class of the response object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callPostRESTCall
public <T> T callPostRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody, Object... params) throws RESTServerException
Issue a POST REST call that returns a response object. This is typically a create, update, or find with complex parameters.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.returnClass- class of the response object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.params- a list of parameters that are slotted into the url template.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callPutRESTCall
public <T> T callPutRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody, Object... params) throws RESTServerException
Issue a PUT REST call that returns a response object. This is typically an update.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.returnClass- class of the response object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.params- a list of parameters that are slotted into the url template.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callDeleteRESTCallNoParams
public <T> T callDeleteRESTCallNoParams(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody) throws RESTServerException
Issue a DELETE REST call that returns a response object.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.returnClass- class of the response object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callDeleteRESTCall
public <T> T callDeleteRESTCall(String methodName, Class<T> returnClass, String urlTemplate, Object requestBody, Object... params) throws RESTServerException
Issue a DELETE REST call that returns a response object.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.returnClass- class of the response object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.params- a list of parameters that are slotted into the url template.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callPostRESTCall
public <T> T callPostRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object requestBody, Object... params) throws RESTServerException
Issue a POST REST call that returns a response object. This is typically a create, update, or find with complex parameters.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.responseType- class of the response for generic object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.params- a list of parameters that are slotted into the url template.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callGetRESTCall
public <T> T callGetRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object... params) throws RESTServerException
Issue a GET REST call that returns a response object.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.responseType- class of the response for generic object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.params- a list of parameters that are slotted into the url template.- Returns:
- response object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callDeleteRESTCall
public <T> T callDeleteRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object requestBody, Object... params) throws RESTServerException
Issue a DELETE REST call that returns a response object.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.responseType- class of the response for generic object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.params- a list of parameters that are slotted into the url template.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
callPutRESTCall
public <T> T callPutRESTCall(String methodName, org.springframework.core.ParameterizedTypeReference<T> responseType, String urlTemplate, Object requestBody, Object... params) throws RESTServerException
Issue a PUT REST call that returns a response object. This is typically an update.- Type Parameters:
T- type of the return object- Parameters:
methodName- name of the method being called.responseType- class of the response for generic object.urlTemplate- template of the URL for the REST API call with place-holders for the parameters.requestBody- request body for the request.params- a list of parameters that are slotted into the url template.- Returns:
- Object
- Throws:
RESTServerException- something went wrong with the REST call stack.
-
-