public interface Chain
ChainManagerHost.createChain(java.lang.String, com.softwareag.connectivity.chainmanagers.ChainDefinition, java.util.Map<java.lang.String, java.lang.String>, java.lang.String, java.util.List<java.lang.String>)
.Modifier and Type | Method and Description |
---|---|
void |
destroy()
Delete this dynamic chain instance, shutting down all plug-ins in the chain.
|
<T extends AbstractTransport> |
getTransport()
Get the transport plug-in at the end of the chain.
|
<T extends AbstractTransport> |
getTransport(java.lang.Class<T> transportClass)
Get the transport plug-in at the end of the chain.
|
Chain |
start()
Calls start on all of the plug-ins in the chain and connects the chain to receive events.
|
<T extends AbstractTransport> T getTransport()
<T extends AbstractTransport> T getTransport(java.lang.Class<T> transportClass)
transportClass
- The transport class which will be used to cast the result.Chain start() throws java.lang.Exception
Will not return until all start() methods have completed and therefore may block.
If the chain to be created might send events during the start() call then this should not be called from an event receiving thread as a deadlock may occur.
If onApplicationInitialized has already been called then hostReady will be called on the new chain immediately from a background thread. Once onApplicationInitialized has been called the chain will receive any events that were sent to its subscribed channels from after the createChain call onwards.
java.lang.Exception
- if an exception is thrown by the start() method of any plug-in in the chain.void destroy()
Any events sent from a chain which is destroyed before onApplicationInitialized is called will be lost
Managers may call createChain and destroy from multiple threads simultaneously. You may not call this method from a manager or chain whose shutdown() methods have returned (will throw an exception). You may not call this method from within a hostReady call (will deadlock)
Submit a bug or feature
Copyright (c) 2013-2020 Software AG, Darmstadt, Germany and/or Software AG USA Inc., Reston, VA, USA, and/or its subsidiaries and/or its affiliates and/or their licensors. Use, reproduction, transfer, publication or disclosure is prohibited except as specifically provided for in your License Agreement with Software AG.