Interface ITransformationConnectorPool
-
- All Known Implementing Classes:
TransformationConnectorPool
public interface ITransformationConnectorPool
An object implementing this interface functions as a pool of transformation connectors. Coordination and allocation among cluster members is managed within. These objects are thread-local, so do not share them among threads.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
_rcsid
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
closeAllConnectors()
Clean up all open transformation connector handles.void
flushUnusedConnectors()
Flush only those connector handles that are currently unused.ITransformationConnector
grab(ITransformationConnection transformationConnection)
Get a transformation connector.ITransformationConnector[]
grabMultiple(java.lang.String[] orderingKeys, ITransformationConnection[] transformationConnections)
Get multiple transformation connectors, all at once.void
pollAllConnectors()
Idle notification for inactive transformation connector handles.void
release(ITransformationConnection connection, ITransformationConnector connector)
Release a transformation connector.void
releaseMultiple(ITransformationConnection[] connections, ITransformationConnector[] connectors)
Release multiple transformation connectors.
-
-
-
Field Detail
-
_rcsid
static final java.lang.String _rcsid
- See Also:
- Constant Field Values
-
-
Method Detail
-
grabMultiple
ITransformationConnector[] grabMultiple(java.lang.String[] orderingKeys, ITransformationConnection[] transformationConnections) throws ManifoldCFException
Get multiple transformation connectors, all at once. Do this in a particular order so that any connector exhaustion will not cause a deadlock.- Parameters:
orderingKeys
- are the keys which determine in what order the connectors are obtained.transformationConnections
- are the connections to use the build the connector instances.- Throws:
ManifoldCFException
-
grab
ITransformationConnector grab(ITransformationConnection transformationConnection) throws ManifoldCFException
Get a transformation connector. The connector is specified by a transformation connection object.- Parameters:
transformationConnection
- is the output connection to base the connector instance on.- Throws:
ManifoldCFException
-
releaseMultiple
void releaseMultiple(ITransformationConnection[] connections, ITransformationConnector[] connectors) throws ManifoldCFException
Release multiple transformation connectors.- Parameters:
connections
- are the connections describing the instances to release.connectors
- are the connector instances to release.- Throws:
ManifoldCFException
-
release
void release(ITransformationConnection connection, ITransformationConnector connector) throws ManifoldCFException
Release a transformation connector.- Parameters:
connection
- is the connection describing the instance to release.connector
- is the connector to release.- Throws:
ManifoldCFException
-
pollAllConnectors
void pollAllConnectors() throws ManifoldCFException
Idle notification for inactive transformation connector handles. This method polls all inactive handles.- Throws:
ManifoldCFException
-
flushUnusedConnectors
void flushUnusedConnectors() throws ManifoldCFException
Flush only those connector handles that are currently unused.- Throws:
ManifoldCFException
-
closeAllConnectors
void closeAllConnectors() throws ManifoldCFException
Clean up all open transformation connector handles. This method is called when the connector pool needs to be flushed, to free resources.- Throws:
ManifoldCFException
-
-