public class ScpCfDestinationFacade extends Object implements DestinationFacade
Since currently no REST API is available to retrieve destination information, this class provides the ability to read HTTP destination information from the environment variable "destinations". The environment variable is expected to be in JSON format.
Example:
[{
"name": "ErpQueryEndpoint",
"url": "https://my-erp.com",
"username": "username",
"password": "password",
"proxyType": "INTERNET",
"properties": [
{
"key": "proxyHost",
"value": "my-proxy.com"
},
{
"key": "proxyPort",
"value": "8080"
},
{
"key": "TrustAll",
"value": "false"
}
]
}]
Constructor and Description |
---|
ScpCfDestinationFacade() |
Modifier and Type | Method and Description |
---|---|
void |
declareDestinations(Collection<String> destinationNames)
Declares the given destination names.
|
Destination |
getDestination(String destinationName)
Returns the
Destination for the given name. |
Map<String,Destination> |
getDestinationsByName()
Returns all known
Destination s that are of type DestinationType.HTTP by their names. |
DestinationType |
getDestinationType(String destinationName)
Returns the
DestinationType of the destination with the given name. |
GenericDestination |
getGenericDestination(String destinationName)
Returns the
GenericDeclaration for the given name. |
Map<String,? extends GenericDestination> |
getGenericDestinationsByName()
Returns all known
Destination s and RfcDestination s by their names. |
RfcDestination |
getRfcDestination(String destinationName)
Returns the
RfcDestination for the given name. |
Map<String,RfcDestination> |
getRfcDestinationsByName()
Returns all known
RfcDestination s that are of type DestinationType.RFC by their names. |
public void declareDestinations(Collection<String> destinationNames)
DestinationFacade
DestinationFacade.getDestination(String)
and DestinationFacade.getDestinationsByName()
, for example, during application
startup within a ServletContextListener.
Notes:
declareDestinations
in interface DestinationFacade
DestinationDeclarator
,
RequestContext
,
DestinationsRequestContextListener
public DestinationType getDestinationType(String destinationName) throws DestinationNotFoundException, DestinationAccessException
DestinationFacade
DestinationType
of the destination with the given name.getDestinationType
in interface DestinationFacade
DestinationNotFoundException
- If no destination with the given name can be found.DestinationAccessException
- If there is an issue while accessing destination information.public GenericDestination getGenericDestination(String destinationName) throws DestinationNotFoundException, DestinationAccessException
DestinationFacade
GenericDeclaration
for the given name.getGenericDestination
in interface DestinationFacade
DestinationNotFoundException
- If the GenericDeclaration
cannot be found.DestinationAccessException
- If there is an issue while accessing destination information.public Destination getDestination(String destinationName) throws DestinationNotFoundException, DestinationAccessException
DestinationFacade
Destination
for the given name.
Note: The destination must be of type DestinationType.HTTP
, otherwise an exception is thrown. You can
check the type of the destination with DestinationFacade.getDestinationType(String)
.
getDestination
in interface DestinationFacade
DestinationNotFoundException
- If the Destination
cannot be found.DestinationAccessException
- If the destination is not of type DestinationType.HTTP
or there is an issue while accessing
destination information.public RfcDestination getRfcDestination(String destinationName) throws DestinationNotFoundException, DestinationAccessException
DestinationFacade
RfcDestination
for the given name.
Note: The destination must be of type DestinationType.RFC
, otherwise an exception is thrown. You can
check the type of the destination with DestinationFacade.getDestinationType(String)
.
getRfcDestination
in interface DestinationFacade
DestinationNotFoundException
- If the RfcDestination
cannot be found.DestinationAccessException
- If the destination is not of type DestinationType.RFC
or there is an issue while accessing
destination information.public Map<String,? extends GenericDestination> getGenericDestinationsByName() throws DestinationAccessException
DestinationFacade
Destination
s and RfcDestination
s by their names.getGenericDestinationsByName
in interface DestinationFacade
DestinationAccessException
- If there is an issue while accessing destination information.public Map<String,Destination> getDestinationsByName() throws DestinationAccessException
DestinationFacade
Destination
s that are of type DestinationType.HTTP
by their names.
To get all destinations, irrespective of their type, use DestinationFacade.getGenericDestinationsByName()
.
getDestinationsByName
in interface DestinationFacade
DestinationAccessException
- If there is an issue while accessing destination information.public Map<String,RfcDestination> getRfcDestinationsByName() throws DestinationAccessException
DestinationFacade
RfcDestination
s that are of type DestinationType.RFC
by their names.
To get all destinations, irrespective of their type, use DestinationFacade.getGenericDestinationsByName()
.
getRfcDestinationsByName
in interface DestinationFacade
DestinationAccessException
- If there is an issue while accessing destination information.Copyright © 2017 SAP SE. All rights reserved.