Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Service Bus
11g Release 1 (11.1.1.5.0)

E15033-03


com.bea.wli.sb.transports
Interface TransportProvider

All Known Subinterfaces:
SelfDescribedTransportProvider

public interface TransportProvider

Represents the central point for management of transport protocol-specific configuration and runtime properties. There is a single instance of TransportProvider object for every supported protocol, e.g. there is a single instance of HTTP Transport Provider, JMS Transport Provider, etc.


Method Summary
 void activationComplete(EndPointOperations.CommonOperation context)
          called once per every create/update/delete/suspend/resume call to signal that the activate action has completed with respect to the corresponding endpoint object Does not imply success or failure of the overall session activation! The provider is not allowed to throw exceptions as there is no way to recover at this point.
 TransportEndPoint createEndPoint(EndPointOperations.Create context)
          Create and deploy an outbound or inbound endpoint on this server The semantics of this operation is as follows: prepare whatever is necessary for this endpoint to be operational, but it cannot process messages on this until a activationComplete() call has been received.
 void deleteEndPoint(EndPointOperations.Delete context)
          Delete an endpoint associated with the given service reference
 java.util.Map<java.lang.String,java.lang.String> getBusinessServicePropertiesForProxy(Ref ref)
          Given a proxy service reference returns a map of string properties that contains name/value pairs which are all the necessary provider-specific attributes for a business service object to be instantiated (on a different OSB domain) that can invoke this proxy service.
 TransportEndPoint getEndPoint(Ref ref)
           
 org.apache.xmlbeans.SchemaType getEndPointConfigurationSchemaType()
           
 java.util.Collection<? extends TransportEndPoint> getEndPoints()
           
 java.util.Collection<NonQualifiedEnvValue> getEnvValues(Ref ref, EndPointConfiguration epConfig)
          Transport providers return any environment dependent values via this call.
 java.util.Collection<Ref> getExternalReferences(EndPointConfiguration epConfig)
          Returns a collection of external references for a given end point configuration This is called by the configuration framework
 java.lang.String getId()
           
 TransportProviderConfiguration getProviderConfiguration()
           
 org.apache.xmlbeans.XmlObject getProviderSpecificConfiguration(Ref ref, java.util.Map<java.lang.String,java.lang.String> props)
          Given a map of properties object from one OSB domain returns a transport endpoint configuration that can be used to instantiate a business service on another OSB domain.
 org.apache.xmlbeans.SchemaType getRequestHeadersSchemaType()
           
 org.apache.xmlbeans.SchemaType getRequestMetaDataSchemaType()
           
 org.apache.xmlbeans.SchemaType getResponseHeadersSchemaType()
           
 org.apache.xmlbeans.SchemaType getResponseMetaDataSchemaType()
           
 TransportUIBinding getUIBinding(TransportUIContext context)
          Called at service definition time to get the provider-specific binding object that validates provider-specific properties are present in the UI context.
 void resumeEndPoint(EndPointOperations.Resume context)
          Resumes (Re-enables) a previously suspended endpoint with the given service reference
 void sendMessageAsync(TransportSender sender, TransportSendListener listener, TransportOptions options)
          Sends an outbound message to an external service.
 void setEnvValues(Ref ref, EndPointConfiguration epConfig, java.util.Collection<NonQualifiedEnvValue> envValues)
          Sets the given collection of environment values in the data.
 void setExternalReferences(java.util.Map<Ref,Ref> mapRefs, EndPointConfiguration epConfig)
          Sets the external references for a given endpoint configuration in place.
 void shutdown()
          Called by the TransportManager when the server is shutting down
 void suspendEndPoint(EndPointOperations.Suspend context)
          Suspends (disables) the endpoint with the given service reference
 TransportEndPoint updateEndPoint(EndPointOperations.Update context)
          Updates the existing endpoint with new configuration.
 void validateEndPointConfiguration(TransportValidationContext context)
          Provides syntactic and semantic validation of endpoint configuration according to a given transport provider-specific logic.

 

Method Detail

getId

java.lang.String getId()
Returns:
a unique string that identifies this provider, like “http”

validateEndPointConfiguration

void validateEndPointConfiguration(TransportValidationContext context)
Provides syntactic and semantic validation of endpoint configuration according to a given transport provider-specific logic. The result of the validation is put into the diagnostics object. Exceptions should not be thrown from this method, instead an appropriate diagnostics object should be returned.
Parameters:
context - context for validation. Providers can use this to extract locale, service information and diagnostics object

createEndPoint

TransportEndPoint createEndPoint(EndPointOperations.Create context)
                                 throws TransportException
Create and deploy an outbound or inbound endpoint on this server The semantics of this operation is as follows: prepare whatever is necessary for this endpoint to be operational, but it cannot process messages on this until a activationComplete() call has been received.
Parameters:
context - context for create operation. Providers can use this to extract endpoint configuration, service reference, etc.
Throws:
TransportException

updateEndPoint

TransportEndPoint updateEndPoint(EndPointOperations.Update context)
                                 throws TransportException
Updates the existing endpoint with new configuration. The return value from this method has to be a difference instance of TransportEndPoint object than that which previously existed. The semantics are: prepare for update, but do not update until activationComplete call has been received.
Parameters:
context - context for update operation. Providers can use this to extract endpoint configuration, service reference, etc.
Throws:
TransportException

suspendEndPoint

void suspendEndPoint(EndPointOperations.Suspend context)
                     throws TransportException
Suspends (disables) the endpoint with the given service reference
Parameters:
context - context for suspend operation. Providers can use this to extract endpoint configuration, service reference, etc.
Throws:
TransportException

resumeEndPoint

void resumeEndPoint(EndPointOperations.Resume context)
                    throws TransportException
Resumes (Re-enables) a previously suspended endpoint with the given service reference
Parameters:
context - context for resume operation. Providers can use this to extract endpoint configuration, service reference, etc.
Throws:
TransportException

deleteEndPoint

void deleteEndPoint(EndPointOperations.Delete context)
                    throws TransportException
Delete an endpoint associated with the given service reference
Parameters:
context - context for delete operation. Providers can use this to extract service reference, etc.
Throws:
TransportException

activationComplete

void activationComplete(EndPointOperations.CommonOperation context)
called once per every create/update/delete/suspend/resume call to signal that the activate action has completed with respect to the corresponding endpoint object Does not imply success or failure of the overall session activation! The provider is not allowed to throw exceptions as there is no way to recover at this point.
Parameters:
context - context for operation that has been performed. Providers can use this to extract endpoint configuration, service reference, etc.

getEndPoints

java.util.Collection<? extends TransportEndPoint> getEndPoints()
                                                               throws TransportException
Returns:
the list of all inbound and outbound endpoints for this provider
Throws:
TransportException

getEndPoint

TransportEndPoint getEndPoint(Ref ref)
                              throws TransportException
Returns:
an endpoint with a given service reference
Throws:
TransportException

sendMessageAsync

void sendMessageAsync(TransportSender sender,
                      TransportSendListener listener,
                      TransportOptions options)
                      throws TransportException
Sends an outbound message to an external service. The caller provides a callback with is called when the response is received from an external service. The semantics of the send operation are specific to the transport implementation.
Parameters:
sender - an instance of either ServiceTransportSender or NoServiceTransportSender interface will be provided
listener - a callback object the transport provider needs to invoke asynchronously when the send operation is completed (for one-way requests) or when the response has been received (for request-response requests)
options - various options having to do with desired quality of service, the mode, etc on the outbound request
Throws:
TransportException

getEndPointConfigurationSchemaType

org.apache.xmlbeans.SchemaType getEndPointConfigurationSchemaType()
                                                                  throws TransportException
Returns:
the XML schema type for the endpoint configuration for this provider
Throws:
TransportException

getRequestMetaDataSchemaType

org.apache.xmlbeans.SchemaType getRequestMetaDataSchemaType()
                                                            throws TransportException
Returns:
the XML schema type of the request meta data for this provider
Throws:
TransportException

getRequestHeadersSchemaType

org.apache.xmlbeans.SchemaType getRequestHeadersSchemaType()
                                                           throws TransportException
Returns:
the XML schema type of the request headers for this provider. If provider does not support request headers, return null.
Throws:
TransportException

getResponseMetaDataSchemaType

org.apache.xmlbeans.SchemaType getResponseMetaDataSchemaType()
                                                             throws TransportException
Returns:
the XML schema type of the response meta data for this provider
Throws:
TransportException

getResponseHeadersSchemaType

org.apache.xmlbeans.SchemaType getResponseHeadersSchemaType()
                                                            throws TransportException
Returns:
the XML schema type of the response headers for this provider. If provider does not support response headers, return null.
Throws:
TransportException

getProviderConfiguration

TransportProviderConfiguration getProviderConfiguration()
                                                        throws TransportException
Returns:
the XML document for the static properties for this provider
Throws:
TransportException

getUIBinding

TransportUIBinding getUIBinding(TransportUIContext context)
                                throws TransportException
Called at service definition time to get the provider-specific binding object that validates provider-specific properties are present in the UI context. The user interface will pass in a brand new instance of TransportUIContext object for every time the user navigates the wizard. A typical pattern for the provider is create a new instance of the TransportUIBinding object and save the reference to the context and refer to it as needed.
Parameters:
context - context for UI binding. Providers can use this to extract locale, proxy information, etc.
Returns:
UI binding object that is used by OSB console to refer provider-specific parts of the service configuration wizard
Throws:
TransportException

shutdown

void shutdown()
              throws TransportException
Called by the TransportManager when the server is shutting down
Throws:
TransportException

getEnvValues

java.util.Collection<NonQualifiedEnvValue> getEnvValues(Ref ref,
                                                        EndPointConfiguration epConfig)
                                                        throws TransportException
Transport providers return any environment dependent values via this call. Environment dependent values are those that may need to be changed when moving configuration from one domain to another.
Parameters:
ref - service reference
epConfig - service endpoint configuration
Returns:
a collection of environment values, or null if there are none for this endpoint
Throws:
TransportException

setEnvValues

void setEnvValues(Ref ref,
                  EndPointConfiguration epConfig,
                  java.util.Collection<NonQualifiedEnvValue> envValues)
                  throws TransportException
Sets the given collection of environment values in the data. the collectoin of envValues may be only a subset of all existing env values in the data. The implementations can update the data in-place and return it, rather than returning a copy of the data. This is called by the configuration framework
Parameters:
ref - service reference
epConfig - service endpoint configuration
envValues - collection of environment values to set
Throws:
TransportException

getExternalReferences

java.util.Collection<Ref> getExternalReferences(EndPointConfiguration epConfig)
                                                throws TransportException
Returns a collection of external references for a given end point configuration This is called by the configuration framework
Parameters:
epConfig - service endpoint configuration
Returns:
collection of external references
Throws:
TransportException

setExternalReferences

void setExternalReferences(java.util.Map<Ref,Ref> mapRefs,
                           EndPointConfiguration epConfig)
                           throws TransportException
Sets the external references for a given endpoint configuration in place. The keys in the map are references from existing endpoint configuration and the values are the new values to replace those existing ones in the endpoint configuration. This is called by the configuration framework
Parameters:
mapRefs - map of references
epConfig - service endpoint configuration
Throws:
TransportException

getBusinessServicePropertiesForProxy

java.util.Map<java.lang.String,java.lang.String> getBusinessServicePropertiesForProxy(Ref ref)
                                                                                      throws TransportException
Given a proxy service reference returns a map of string properties that contains name/value pairs which are all the necessary provider-specific attributes for a business service object to be instantiated (on a different OSB domain) that can invoke this proxy service. All the fields that are exposed will be externalized by the transport provider (for e.g. replace occurrences of localhost with actual server name etc.). If the transport provider needs a specific business service URI which is different from a proxy URI, the properties object they return should contain a property with a key “URI” and a string value to be used when creating the business service. Only transport providers that support both proxy AND business services (i.e. inbound AND outbound directions) need to support this. Otherwise they can throw an UnsupportedOperationException. This is used in UDDI import/export feature of ASLB.
Parameters:
ref - service reference
Returns:
map of name/value properties to be persisted
Throws:
TransportException

getProviderSpecificConfiguration

org.apache.xmlbeans.XmlObject getProviderSpecificConfiguration(Ref ref,
                                                               java.util.Map<java.lang.String,java.lang.String> props)
                                                               throws TransportException
Given a map of properties object from one OSB domain returns a transport endpoint configuration that can be used to instantiate a business service on another OSB domain. Only transport providers that support both proxy AND business services (i.e. inbound AND outbound directions) need to support this. Otherwise they can throw an UnsupportedOperationException. This is used in UDDI import/export feature of ASLB.
Parameters:
ref - if not null, it is assumed that there already exists a service endpoint with a given ref, and the result of the method will be a merge of existing configuration and passed in properties.
props - map of name/value properties to be used when creating service endpoint configuration
Returns:
provider-specific portion of EndPointConfiguration object
Throws:
TransportException

Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Service Bus
11g Release 1 (11.1.1.5.0)

E15033-03


Copyright © 2008, 2011, Oracle. All rights reserved.