Class ProtonEndpoint<E extends Endpoint<E>>
java.lang.Object
org.apache.qpid.protonj2.engine.impl.ProtonEndpoint<E>
- Type Parameters:
E
- The specificEndpoint
type this abstract type implements.
- All Implemented Interfaces:
Endpoint<E>
- Direct Known Subclasses:
ProtonConnection
,ProtonLink
,ProtonSession
,ProtonTransactionController
,ProtonTransactionManager
Proton abstract
Endpoint
implementation that provides some common facilities.-
Field Summary
-
Constructor Summary
ConstructorDescriptionProtonEndpoint
(ProtonEngine engine) Create a newProtonEndpoint
instance with the given Engine as the owner. -
Method Summary
Modifier and TypeMethodDescriptioncloseHandler
(EventHandler<E> remoteCloseEventHandler) Sets a EventHandler for when an AMQP Close frame is received from the remote peer.engineShutdownHandler
(EventHandler<Engine> engineShutdownEventHandler) Sets anEventHandler
that is invoked when the engine that supports thisEndpoint
is shutdown via a call toEngine.shutdown()
which indicates a desire to terminate all engine operations.<T> T
<T> T
getLinkedResource
(Class<T> typeClass) Gets the linked resource (if set) and returns it using the type information provided to cast the returned value.If the remote has closed thisEndpoint
and provided anErrorCondition
as part of the closing AMQP performative then this method will return it.localCloseHandler
(EventHandler<E> localCloseEventHandler) Sets aEventHandler
for when an thisEndpoint
is closed locally via a call toEndpoint.close()
Typically used by clients for logging or other state update event processing.localOpenHandler
(EventHandler<E> localOpenEventHandler) Sets aEventHandler
for when an thisEndpoint
is opened locally via a call toEndpoint.open()
Typically used by clients for logging or other state update event processing.openHandler
(EventHandler<E> remoteOpenEventHandler) Sets a EventHandler for when an AMQP Open frame is received from the remote peer.setCondition
(ErrorCondition condition) Sets the localErrorCondition
to be applied to aEndpoint
close.setLinkedResource
(Object resource) Links a given resource to thisEndpoint
.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.qpid.protonj2.engine.Endpoint
close, getDesiredCapabilities, getOfferedCapabilities, getParent, getProperties, getRemoteDesiredCapabilities, getRemoteOfferedCapabilities, getRemoteProperties, isLocallyClosed, isLocallyOpen, isRemotelyClosed, isRemotelyOpen, open, setDesiredCapabilities, setOfferedCapabilities, setProperties
-
Field Details
-
engine
-
-
Constructor Details
-
ProtonEndpoint
Create a newProtonEndpoint
instance with the given Engine as the owner.
-
-
Method Details
-
setLinkedResource
Description copied from interface:Endpoint
Links a given resource to thisEndpoint
. -
getLinkedResource
public <T> T getLinkedResource() -
getLinkedResource
Description copied from interface:Endpoint
Gets the linked resource (if set) and returns it using the type information provided to cast the returned value.- Specified by:
getLinkedResource
in interfaceEndpoint<E extends Endpoint<E>>
- Type Parameters:
T
- The type to cast the linked resource to if one is set.- Parameters:
typeClass
- the type's Class which is used for casting the returned value.- Returns:
- the user set linked resource for this Context instance.
-
getEngine
-
getAttachments
- Specified by:
getAttachments
in interfaceEndpoint<E extends Endpoint<E>>
- Returns:
- the
Attachments
instance that is associated with thisEndpoint
-
getCondition
-
setCondition
Description copied from interface:Endpoint
Sets the localErrorCondition
to be applied to aEndpoint
close. -
getRemoteCondition
Description copied from interface:Endpoint
If the remote has closed thisEndpoint
and provided anErrorCondition
as part of the closing AMQP performative then this method will return it.- Specified by:
getRemoteCondition
in interfaceEndpoint<E extends Endpoint<E>>
- Returns:
- the remote supplied
ErrorCondition
, or null if there is none.
-
openHandler
Description copied from interface:Endpoint
Sets a EventHandler for when an AMQP Open frame is received from the remote peer. Used to process remotely initiated Connections. Locally initiated sessions have their own EventHandler invoked instead. This method is typically used by servers to listen for the remote peer to open itsEndpoint
, while a client would listen for the server to open its end of theEndpoint
once a local open has been performed. Typically used by clients as servers will typically listen to some parent resource event handler to determine if the remote is initiating a resource open. -
closeHandler
Description copied from interface:Endpoint
Sets a EventHandler for when an AMQP Close frame is received from the remote peer. -
localOpenHandler
Description copied from interface:Endpoint
Sets aEventHandler
for when an thisEndpoint
is opened locally via a call toEndpoint.open()
Typically used by clients for logging or other state update event processing. Clients should not perform any blocking calls within this context. It is an error for the handler to throw an exception and the outcome of doing so is undefined.- Specified by:
localOpenHandler
in interfaceEndpoint<E extends Endpoint<E>>
- Parameters:
localOpenEventHandler
- TheEventHandler
to notify when thisEndpoint
is locally opened.- Returns:
- this
Endpoint
instance.
-
localCloseHandler
Description copied from interface:Endpoint
Sets aEventHandler
for when an thisEndpoint
is closed locally via a call toEndpoint.close()
Typically used by clients for logging or other state update event processing. Clients should not perform any blocking calls within this context. It is an error for the handler to throw an exception and the outcome of doing so is undefined.- Specified by:
localCloseHandler
in interfaceEndpoint<E extends Endpoint<E>>
- Parameters:
localCloseEventHandler
- TheEventHandler
to notify when thisEndpoint
is locally closed.- Returns:
- this
Endpoint
instance.
-
engineShutdownHandler
Description copied from interface:Endpoint
Sets anEventHandler
that is invoked when the engine that supports thisEndpoint
is shutdown via a call toEngine.shutdown()
which indicates a desire to terminate all engine operations. AnyEndpoint
that has been both locally and remotely closed will not receive this event as it will no longer be tracked by the parent its parentEndpoint
. A typical use of this event would be from a locally closedEndpoint
that is awaiting response from the remote. If this event fires then there will never be a remote response to any pending operations and the client or server instance should react accordingly to clean up any related resources etc.
-