Advanced Customization > Info*Engine User’s Guide > SOAP Services > Info*Engine Java EE Connector > JCA Contracts and the Common Client Interface > Connection Contract
  
Connection Contract
A connector must implement the following service provider interfaces:
javax.resource.spi.ManagedConnectionFactory
javax.resource.spi.ManagedConnection
javax.resource.spi.ManagedConnectionMetaData
javax.resource.spi.ConnectionManager
The Info*Engine connector implementation of these classes is as follows:
com.infoengine.connector.IeManagedConnectionFactory
com.infoengine.connector.IeManagedConnection
com.infoengine.connector.IeManagedConnectionMetaData
com.infoengine.connector.IeConnectionManager
These classes are described in the following sections.
* 
Object references in code should be made using the appropriate interface definition and not the implementation class. For example:
ManagedConnectionFactory mcf = new IeManagedConnectionFactory ();
IeManagedConnectionFactory
The IeManagedConnectionFactory class is used to create instances of EIS specific connection factories that can create actual connections to Info*Engine. The class also contains logic required to create and compare physical connections. These additional methods are used by a connection manager, such as an application server or other implementation, to facilitate connection pooling. As an application developer, the only time you might reference this class directly is when you are developing a standalone Java SOAP client. For more information, see Example Standalone Java SOAP Client.
IeManagedConnection
The IeManagedConnection class represents a physical connection to an EIS. As an application developer you do not need to instantiate or interact directly with this class.
IeManagedConnectionMetaData
The IeManagedConnectionMetaData class can be used to get general information about a physical connection to an EIS. The Info*Engine connector has merged this class implementation with that of javax.resource.cci.ConnectionMetaData as part of the CCI implementation. For more information, see Common Client Interface (CCI).
For example, a client could ask for metadata about a connection in the following manner:
Connection cx = cxFactory.getConnection();
ConnectionMetaData meta = cx.getMetaData ();
IeConnectionManager
The IeConnectionManager class is required for managing connections when a connector is used outside of a Java EE application server, such as in a standalone Java SOAP client. An application server’s implementation of this class incorporates functions such as connection pooling and automated transaction management. The Info*Engine Java EE connector implementation of this class supplies support for simple connection pooling. It does not support automated transaction management. Transaction support is only available when the Info*Engine Java EE connector is deployed against a Windchill system. When the connector is used by a standalone application, the application must manage transaction demarcation manually. As an application developer, you never need to instantiate or interact directly with this class. For more information, see Example Standalone Java SOAP Client.