org.jibx.ws.protocol
Interface Protocol

All Known Implementing Classes:
PoxProtocol, SoapProtocol

public interface Protocol

Provides an interface for creating a processor specific to a messaging protocol.


Method Summary
 org.jibx.ws.transport.MessageProperties buildMessageProperties(String opname, MessageOptions msgOptions)
          Returns message specific properties for an outbound message.
 Client createClient(String location, IBindingFactory factory, MessageOptions options)
          Create a client to connect to a service at the specified location using this protocol.
 org.jibx.ws.process.Processor createProcessor()
          Returns a processor for this protocol.
 org.jibx.ws.process.Processor createProcessor(ExchangeContext exchangeContext)
          Returns a processor for this protocol, configured according to the specified exchange context.
 org.jibx.ws.server.MediaTypeMapper getMediaTypeMapper()
          Returns a mapper for mapping media type code to media types for this protocol.
 String getName()
          Returns the protocol name.
 String getOperationName(org.jibx.ws.transport.InConnection conn)
          Get the operation name for a request.
 org.jibx.ws.server.ServiceFactory getServiceFactory()
          Returns a factory that creates services for this protocol.
 

Method Detail

createProcessor

org.jibx.ws.process.Processor createProcessor()
Returns a processor for this protocol.

Returns:
protocol specific processor

createProcessor

org.jibx.ws.process.Processor createProcessor(ExchangeContext exchangeContext)
Returns a processor for this protocol, configured according to the specified exchange context.

Parameters:
exchangeContext - provides the context for the message exchange that the processor is to perform
Returns:
protocol specific processor

createClient

Client createClient(String location,
                    IBindingFactory factory,
                    MessageOptions options)
                    throws WsBindingException,
                           WsConfigurationException
Create a client to connect to a service at the specified location using this protocol. The client will use the specified JiBX binding factory for marshalling and unmarshalling the message body. The binding factory may also be used for protocol specific details, such as unmarshalling any SOAP fault details. See the relevant subclass for details.

Parameters:
location - the location of the service
factory - the factory containing bindings for the outbound and inbound message body. Bindings are only required for non-empty outbound or inbound bodies. May also be used for protocol specific details. See the relevant WsClient subclass for details.
options - options for outbound message
Returns:
the client
Throws:
WsConfigurationException - on configuration exception, for instance the location is invalid.
WsBindingException - if client cannot be created due to an error with the JiBX bindings

getName

String getName()
Returns the protocol name.

Returns:
name of the protocol

getServiceFactory

org.jibx.ws.server.ServiceFactory getServiceFactory()
Returns a factory that creates services for this protocol.

Returns:
service factory

getMediaTypeMapper

org.jibx.ws.server.MediaTypeMapper getMediaTypeMapper()
Returns a mapper for mapping media type code to media types for this protocol.

Returns:
media type mapper

buildMessageProperties

org.jibx.ws.transport.MessageProperties buildMessageProperties(String opname,
                                                               MessageOptions msgOptions)
                                                               throws WsConfigurationException
Returns message specific properties for an outbound message. Some properties are protocol specific, for example SOAP 1.2 bindings dictate different media types than SOAP 1.1.

Parameters:
opname - operation name (null if unspecified)
msgOptions - options for media types of the message
Returns:
properties protocol specific message properties
Throws:
WsConfigurationException - on configuration error

getOperationName

String getOperationName(org.jibx.ws.transport.InConnection conn)
Get the operation name for a request.

Parameters:
conn - input connection used for request
Returns:
operation name, or null if not supplied


Project Web Site