javax.xml.soap
Class SAAJMetaFactory

java.lang.Object
  extended by javax.xml.soap.SAAJMetaFactory

public abstract class SAAJMetaFactory
extends java.lang.Object

The access point for the implementation classes of the factories defined in the SAAJ API. All of the newInstance methods defined on factories in SAAJ 1.3 defer to instances of this class to do the actual object creation. The implementations of newInstance() methods (in SOAPFactory and MessageFactory) that existed in SAAJ 1.2 have been updated to also delegate to the SAAJMetaFactory when the SAAJ 1.2 defined lookup fails to locate the Factory implementation class name.

SAAJMetaFactory is a service provider interface. There are no public methods on this class.

Since:
SAAJ 1.3

Constructor Summary
protected SAAJMetaFactory()
           
 
Method Summary
(package private) static SAAJMetaFactory getInstance()
          Creates a new instance of a concrete SAAJMetaFactory object.
protected abstract  MessageFactory newMessageFactory(java.lang.String protocol)
          Creates a MessageFactory object for the given String protocol.
protected abstract  SOAPFactory newSOAPFactory(java.lang.String protocol)
          Creates a SOAPFactory object for the given String protocol.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SAAJMetaFactory

protected SAAJMetaFactory()
Method Detail

getInstance

static SAAJMetaFactory getInstance()
                            throws SOAPException
Creates a new instance of a concrete SAAJMetaFactory object. The SAAJMetaFactory is an SPI, it pulls the creation of the other factories together into a single place. Changing out the SAAJMetaFactory has the effect of changing out the entire SAAJ implementation. Service providers provide the name of their SAAJMetaFactory implementation. This method uses the following ordered lookup procedure to determine the SAAJMetaFactory implementation class to load:

Returns:
a concrete SAAJMetaFactory object
Throws:
SOAPException - if there is an error in creating the SAAJMetaFactory

newMessageFactory

protected abstract MessageFactory newMessageFactory(java.lang.String protocol)
                                             throws SOAPException
Creates a MessageFactory object for the given String protocol.

Parameters:
protocol - a String indicating the protocol
Throws:
SOAPException - if there is an error in creating the MessageFactory
See Also:
SOAPConstants.SOAP_1_1_PROTOCOL, SOAPConstants.SOAP_1_2_PROTOCOL, SOAPConstants.DYNAMIC_SOAP_PROTOCOL

newSOAPFactory

protected abstract SOAPFactory newSOAPFactory(java.lang.String protocol)
                                       throws SOAPException
Creates a SOAPFactory object for the given String protocol.

Parameters:
protocol - a String indicating the protocol
Throws:
SOAPException - if there is an error in creating the SOAPFactory
See Also:
SOAPConstants.SOAP_1_1_PROTOCOL, SOAPConstants.SOAP_1_2_PROTOCOL, SOAPConstants.DYNAMIC_SOAP_PROTOCOL