|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.objectweb.joram.mom.proxies.ProxyImpl
public final class ProxyImpl
The ProxyImpl
class implements the MOM proxy behaviour,
basically forwarding client requests to MOM destinations and MOM
destinations replies to clients.
Field Summary | |
---|---|
private ClientContext |
activeCtx
Reference to the active ClientContext instance. |
private int |
activeCtxId
Identifier of the active context. |
private long |
arrivalsCounter
Counter of message arrivals from topics. |
private java.util.Map |
contexts
Table of the proxy's ClientContext instances. |
private AgentId |
dmqId
Identifier of this proxy dead message queue, null for DMQ
not set. |
static org.objectweb.util.monolog.api.Logger |
logger
|
private java.util.Map |
messagesTable
Table holding the subscriptions' messages. |
(package private) java.lang.String |
msgTxname
|
protected int |
nbMaxMsg
Maximum number of Message store in subscriptions (-1 set no limit). |
protected long |
nbMsgsSentToDMQSinceCreation
the number of erroneous messages forwarded to the DMQ |
protected long |
period
period to run the cleaning task, by default 60s. |
private ProxyAgentItf |
proxyAgent
The reference of the agent hosting the proxy. |
private java.util.Map |
recoveredTransactions
Table holding the recovered transactions branches. |
private static long |
serialVersionUID
define serialVersionUID for interoperability |
private java.util.Map |
subsTable
Table holding the ClientSubscription instances. |
private int |
threshold
Threshold above which messages are considered as undeliverable because constantly denied. |
private java.util.Map |
topicsTable
Table holding the TopicSubscription instances. |
Constructor Summary | |
---|---|
ProxyImpl(ProxyAgentItf proxyAgent)
Constructs a ProxyImpl instance. |
Method Summary | |
---|---|
(package private) void |
cleanPendingMessages(long currentTime)
|
void |
delete()
Deletes this proxy. |
private void |
deleteProxy(FwdAdminRequestNot not)
This method deletes the proxy by notifying its connected clients, denying the non acknowledged messages, deleting the temporary destinations, removing the subscriptions. |
void |
deleteSubscriptionMessage(java.lang.String subName,
java.lang.String msgId)
Deletes a particular pending message in a subscription. |
private void |
deleteTemporaryDestination(AgentId destId)
|
private void |
doFwd(AgentId from,
AbstractReplyNot rep)
Distributes the JMS replies to the appropriate reactions. |
private void |
doFwd(AgentId from,
QueueMsgReply rep)
Actually forwards a QueueMsgReply coming from a destination
as a ConsumerMessages destinated to the requesting client. |
private void |
doFwd(AgentId from,
TopicMsgsReply rep)
Method implementing the proxy reaction to a TopicMsgsReply
holding messages published by a topic. |
private void |
doFwd(BrowseReply rep)
Actually forwards a BrowseReply coming from a
destination as a QBrowseReply destinated to the
requesting client. |
private void |
doFwd(SubscribeReply rep)
Forwards the topic's SubscribeReply as a
ServerReply . |
private void |
doReact(AdminReplyNot reply)
An AdminReply acknowledges the setting of a temporary
destination; nothing needs to be done. |
private void |
doReact(AgentId from,
ExceptionReply rep)
Actually forwards an ExceptionReply coming from a destination
as a MomExceptionReply destinated to the requesting client. |
private void |
doReact(ClearSubscription request,
AgentId replyTo,
java.lang.String requestMsgId,
java.lang.String replyMsgId)
|
private void |
doReact(CnxStartRequest req)
Method implementing the proxy reaction to a CnxStartRequest
requesting to start a context. |
private void |
doReact(CnxStopRequest req)
Method implementing the JMS proxy reaction to a CnxStopRequest requesting to stop a context. |
private void |
doReact(ConsumerAckRequest req)
Method implementing the JMS proxy reaction to a ConsumerAckRequest acknowledging a message either on a queue
or on a subscription. |
private void |
doReact(ConsumerCloseSubRequest req)
Method implementing the JMS proxy reaction to a ConsumerCloseSubRequest requesting to deactivate a durable
subscription. |
private void |
doReact(ConsumerDenyRequest req)
Method implementing the JMS proxy reaction to a ConsumerDenyRequest denying a message either on a queue
or on a subscription. |
private void |
doReact(ConsumerReceiveRequest req)
Method implementing the proxy reaction to a ConsumerReceiveRequest instance, requesting a message from a
subscription. |
private void |
doReact(ConsumerSetListRequest req)
Method implementing the JMS proxy reaction to a ConsumerSetListRequest notifying the creation of a client
listener. |
private void |
doReact(ConsumerSubRequest req)
Method implementing the JMS proxy reaction to a ConsumerSubRequest
requesting to subscribe to a topic. |
private void |
doReact(ConsumerUnsetListRequest req)
Method implementing the JMS proxy reaction to a ConsumerUnsetListRequest notifying that a consumer listener
is unset. |
private void |
doReact(ConsumerUnsubRequest req)
Method implementing the JMS proxy reaction to a ConsumerUnsubRequest requesting to remove a subscription. |
private void |
doReact(DeleteSubscriptionMessage request,
AgentId replyTo,
java.lang.String requestMsgId,
java.lang.String replyMsgId)
|
private void |
doReact(FwdAdminRequestNot not)
|
private void |
doReact(GetSubscription request,
AgentId replyTo,
java.lang.String requestMsgId,
java.lang.String replyMsgId)
|
private void |
doReact(GetSubscriptionMessage request,
AgentId replyTo,
java.lang.String requestMsgId,
java.lang.String replyMsgId)
|
private void |
doReact(GetSubscriptionMessageIds request,
AgentId replyTo,
java.lang.String requestMsgId,
java.lang.String replyMsgId)
|
private void |
doReact(GetSubscriptions request,
AgentId replyTo,
java.lang.String requestMsgId,
java.lang.String replyMsgId)
|
private void |
doReact(int key,
AbstractJmsRequest request)
Distributes the client requests to the appropriate reactions. |
private void |
doReact(int key,
ActivateConsumerRequest req)
|
private void |
doReact(int key,
CnxCloseRequest req)
The method closes a given context by denying the non acknowledged messages delivered to this context, and deleting its temporary subscriptions and destinations. |
private void |
doReact(int key,
CnxConnectRequest req)
Method implementing the reaction to a CnxConnectRequest
requesting the key of the active context. |
private void |
doReact(int key,
CommitRequest req)
|
private void |
doReact(int key,
GetAdminTopicRequest req)
Method implementing the reaction to a GetAdminTopicRequest
requesting the identifier of the local admin topic. |
private void |
doReact(SessAckRequest req)
Method implementing the JMS proxy reaction to a SessAckRequest acknowledging messages either on a queue
or on a subscription. |
private void |
doReact(SessCreateDestRequest req)
Method implementing the JMS proxy reaction to a SessCreateDestRequest
requesting the creation of a destination. |
private void |
doReact(SessDenyRequest req)
Method implementing the JMS proxy reaction to a SessDenyRequest denying messages either on a queue or on
a subscription. |
private void |
doReact(SyncReply not)
Method implementing the JMS proxy reaction to a SyncReply notification sent by itself, wrapping a reply
to be sent to a client. |
private void |
doReact(TempDestDeleteRequest req)
Method implementing the JMS proxy reaction to a TempDestDeleteRequest request for deleting a temporary
destination. |
private void |
doReact(UnknownAgent uA)
Method implementing the JMS proxy reaction to an UnknownAgent
notification notifying that a destination does not exist or is deleted. |
private void |
doReact(XACnxCommit req)
Method implementing the JMS proxy reaction to an XACnxCommit request committing the operations performed
in a given transaction. |
private void |
doReact(XACnxPrepare req)
Method implementing the JMS proxy reaction to an XACnxPrepare request holding messages and acknowledgements
produced in an XA transaction. |
private void |
doReact(XACnxRecoverRequest req)
Reacts to a XACnxRecoverRequest request requesting the
identifiers of the prepared transactions. |
private void |
doReact(XACnxRollback req)
Method implementing the JMS proxy reaction to an XACnxRollback request rolling back the operations performed
in a given transaction. |
private void |
doReply(AbstractJmsReply reply)
Method used for sending an AbstractJmsReply back to an
external client within the active context. |
private void |
doReply(int key,
AbstractJmsReply reply)
Method used for sending an AbstractJmsReply back to an
external client through a given context. |
(package private) ClientContext |
getClientContext(int ctxId)
|
java.lang.String |
getDMQId()
Returns the default DMQ for subscription of this user. |
private java.lang.String |
getMBeanName(java.lang.String name)
|
protected java.lang.String |
getMsgTxname()
|
java.lang.String |
getName()
Returns the name of this queue, or its id if not set. |
int |
getNbMaxMsg()
Returns the default maximum number of message for the subscription of this user. |
long |
getNbMsgsSentToDMQSinceCreation()
Returns the number of erroneous messages forwarded to the DMQ since creation time of this proxy.. |
long |
getPeriod()
Returns the period value of this queue, -1 if not set. |
java.lang.String[] |
getSubscriptionNames()
Returns the list of subscriptions for this user. |
int |
getThreshold()
Returns the default threshold for the subscription of this user. 0 stands for no threshold, -1 for value not set. |
void |
initialize(boolean firstTime)
(Re)initializes the proxy. |
void |
react(AgentId from,
Notification not)
Distributes the received notifications to the appropriate reactions. |
void |
reactToClientRequest(int key,
AbstractJmsRequest request)
Method processing clients requests. |
private void |
reactToClientRequest(int key,
ConsumerReceiveRequest req)
Either forwards the ConsumerReceiveRequest request as a
ReceiveRequest directly to the target queue, or wraps it
and sends it to the proxy if destinated to a subscription. |
private void |
reactToClientRequest(int key,
ConsumerSetListRequest req)
Either forwards the ConsumerSetListRequest request as a
ReceiveRequest directly to the target queue, or wraps it
and sends it to the proxy if destinated to a subscription. |
private void |
reactToClientRequest(int key,
JmsRequestGroup request)
|
private void |
reactToClientRequest(int key,
ProducerMessages req)
Forwards the messages sent by the client in a ProducerMessages request as a ClientMessages
MOM request directly to a destination, and acknowledges them by sending
a ServerReply back. |
private void |
reactToClientRequest(int key,
QBrowseRequest req)
Forwards the client's QBrowseRequest request as
a BrowseRequest MOM request directly to a destination. |
void |
readBag(java.io.ObjectInputStream in)
|
private void |
replyToTopic(AdminReply reply,
AgentId replyTo,
java.lang.String requestMsgId,
java.lang.String replyMsgId)
|
private void |
setActiveCtxId(int activeCtxId)
|
private void |
setCtx(int key)
Updates the reference to the active context. |
private void |
setDmq(ClientMessages not)
|
protected void |
setMsgTxName(Message msg)
|
void |
setNbMaxMsg(int nbMaxMsg)
Sets the maximum number of message for the subscription of this user. |
void |
setPeriod(long period)
Sets or unsets the period for this queue. |
void |
setThreshold(int threshold)
Sets the default threshold for the subscription of this user. 0 stands for no threshold, -1 for value not set. |
java.lang.String |
toString()
Returns a string representation of this user's proxy. |
private boolean |
updateSubscriptionToTopic(AgentId topicId,
int contextId,
int requestId)
Updates the proxy's subscription to a topic. |
private boolean |
updateSubscriptionToTopic(AgentId topicId,
int contextId,
int requestId,
boolean asyncSub)
Updates the proxy's subscription to a topic. |
void |
writeBag(java.io.ObjectOutputStream out)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private static final long serialVersionUID
public static org.objectweb.util.monolog.api.Logger logger
protected long period
protected long nbMsgsSentToDMQSinceCreation
private AgentId dmqId
null
for DMQ
not set.
private int threshold
protected int nbMaxMsg
private java.util.Map contexts
ClientContext
instances.
Key: context identifier
Value: context
private java.util.Map subsTable
ClientSubscription
instances.
Key: subscription name
Value: client subscription
private java.util.Map recoveredTransactions
Key: transaction identifier
Value: XACnxPrepare
instance
private long arrivalsCounter
private ProxyAgentItf proxyAgent
private transient java.util.Map topicsTable
TopicSubscription
instances.
Key: topic identifier
Value: topic subscription
private transient java.util.Map messagesTable
Key: message identifier
Value: message
private transient int activeCtxId
private transient ClientContext activeCtx
ClientContext
instance.
transient java.lang.String msgTxname
Constructor Detail |
---|
public ProxyImpl(ProxyAgentItf proxyAgent)
ProxyImpl
instance.
Method Detail |
---|
public long getPeriod()
getPeriod
in interface ProxyImplMBean
public void setPeriod(long period)
setPeriod
in interface ProxyImplMBean
period
- The period value to be set or -1 for unsetting previous
value.public java.lang.String getDMQId()
getDMQId
in interface ProxyImplMBean
public int getThreshold()
getThreshold
in interface ProxyImplMBean
public void setThreshold(int threshold)
setThreshold
in interface ProxyImplMBean
threshold
- the threshold to set.public int getNbMaxMsg()
getNbMaxMsg
in interface ProxyImplMBean
public void setNbMaxMsg(int nbMaxMsg)
setNbMaxMsg
in interface ProxyImplMBean
nbMaxMsg
- the maximum number of message (-1 set no limit).public java.lang.String toString()
toString
in interface ProxyImplMBean
toString
in class java.lang.Object
public java.lang.String getName()
ProxyImplMBean
getName
in interface ProxyImplMBean
public void initialize(boolean firstTime) throws java.lang.Exception
firstTime
-
java.lang.Exception
- If the proxy state could not be fully retrieved,
leading to an inconsistent state.private void setActiveCtxId(int activeCtxId)
public void reactToClientRequest(int key, AbstractJmsRequest request)
Some of the client requests are directly forwarded, some others are sent to the proxy so that their processing occurs in a transaction.
A MomExceptionReply
wrapping a DestinationException
might be sent back if a target destination can't be identified.
private void reactToClientRequest(int key, ProducerMessages req) throws RequestException
ProducerMessages
request as a ClientMessages
MOM request directly to a destination, and acknowledges them by sending
a ServerReply
back.
RequestException
- The destination id is undefinedprivate void setDmq(ClientMessages not)
private void reactToClientRequest(int key, ConsumerReceiveRequest req) throws RequestException
ConsumerReceiveRequest
request as a
ReceiveRequest
directly to the target queue, or wraps it
and sends it to the proxy if destinated to a subscription.
RequestException
- Undefined (null) destinationprivate void reactToClientRequest(int key, ConsumerSetListRequest req) throws RequestException
ConsumerSetListRequest
request as a
ReceiveRequest
directly to the target queue, or wraps it
and sends it to the proxy if destinated to a subscription.
RequestException
- Undefined (null) destinationprivate void reactToClientRequest(int key, QBrowseRequest req) throws RequestException
QBrowseRequest
request as
a BrowseRequest
MOM request directly to a destination.
RequestException
- Undefined (null) destinationprivate void reactToClientRequest(int key, JmsRequestGroup request)
public void react(AgentId from, Notification not) throws UnknownNotificationException
A JMS proxy reacts to:
SyncReply
proxy synchronizing notification,SetDMQRequest
admin notification,SetThreshRequest
admin notification,SetNbMaxMsgRequest
admin notification,Monit_GetNbMaxMsg
admin notification,Monit_GetDMQSettings
monitoring notification,AbstractReply
destination replies,AdminReply
administration replies,fr.dyade.aaa.agent.UnknownAgent
.
UnknownNotificationException
- If the notification is not expected.private void doReact(int key, AbstractJmsRequest request)
The proxy accepts the following requests:
GetAdminTopicRequest
CnxConnectRequest
CnxStartRequest
CnxStopRequest
SessCreateTQRequest
SessCreateTTRequest
ConsumerSubRequest
ConsumerUnsubRequest
ConsumerCloseSubRequest
ConsumerSetListRequest
ConsumerUnsetListRequest
ConsumerReceiveRequest
ConsumerAckRequest
ConsumerDenyRequest
SessAckRequest
SessDenyRequest
TempDestDeleteRequest
XACnxPrepare
XACnxCommit
XACnxRollback
XACnxRecoverRequest
A JmsExceptReply
is sent back to the client when an
exception is thrown by the reaction.
private void doReact(int key, GetAdminTopicRequest req) throws AccessException
GetAdminTopicRequest
requesting the identifier of the local admin topic.
It simply sends back a GetAdminTopicReply
holding the
admin topic identifier.
AccessException
- If the requester is not an administrator.private void doReact(int key, CnxConnectRequest req) throws DestinationException
CnxConnectRequest
requesting the key of the active context.
It simply sends back a ConnectReply
holding the active
context's key.
DestinationException
- In case of a first administrator
context, if the local administration topic reference
is not available.private void doReact(CnxStartRequest req)
CnxStartRequest
requesting to start a context.
This method sends the pending ConsumerMessages
replies,
if any.
private void doReact(CnxStopRequest req)
CnxStopRequest
requesting to stop a context.
This method sends a ServerReply
back.
private void doReact(SessCreateDestRequest req) throws RequestException
SessCreateDestRequest
requesting the creation of a destination.
Creates the queue, sends it a SetRightRequest
for granting
WRITE access to all, and wraps a SessCreateTDReply
in a
SyncReply
notification it sends to itself. This latest
action's purpose is to preserve causality.
Method implementing the JMS proxy reaction to a
SessCreateTTRequest
requesting the creation of a temporary
topic.
Creates the topic, sends it a SetRightRequest
for granting
WRITE access to all, and wraps a SessCreateTDReply
in a
SyncReply
notification it sends to itself. This latest
action's purpose is to preserve causality.
RequestException
- If the destination could not be deployed.private void doReact(ConsumerSubRequest req) throws StateException, RequestException
ConsumerSubRequest
requesting to subscribe to a topic.
StateException
- If activating an already active durable subscription.
RequestException
- If the subscription parameters are not correct.private void doReact(ConsumerSetListRequest req) throws DestinationException
ConsumerSetListRequest
notifying the creation of a client
listener.
Sets the listener for the subscription, launches a delivery sequence.
DestinationException
- If the subscription does not exist.private void doReact(ConsumerUnsetListRequest req) throws DestinationException
ConsumerUnsetListRequest
notifying that a consumer listener
is unset.
DestinationException
- If the subscription does not exist.private void doReact(ConsumerCloseSubRequest req) throws DestinationException
ConsumerCloseSubRequest
requesting to deactivate a durable
subscription.
DestinationException
- If the subscription does not exist.private void doReact(ConsumerUnsubRequest req) throws DestinationException
ConsumerUnsubRequest
requesting to remove a subscription.
DestinationException
- If the subscription does not exist.private void doReact(ConsumerReceiveRequest req) throws DestinationException
ConsumerReceiveRequest
instance, requesting a message from a
subscription.
This method registers the request and launches a delivery sequence.
DestinationException
- If the subscription does not exist.private void doReact(SessAckRequest req)
SessAckRequest
acknowledging messages either on a queue
or on a subscription.
private void doReact(SessDenyRequest req)
SessDenyRequest
denying messages either on a queue or on
a subscription.
private void doReact(ConsumerAckRequest req)
ConsumerAckRequest
acknowledging a message either on a queue
or on a subscription.
private void doReact(ConsumerDenyRequest req)
ConsumerDenyRequest
denying a message either on a queue
or on a subscription.
This request is acknowledged when destinated to a queue.
private void doReact(TempDestDeleteRequest req)
TempDestDeleteRequest
request for deleting a temporary
destination.
This method sends a fr.dyade.aaa.agent.DeleteNot
to the
destination and acknowledges the request.
private void deleteTemporaryDestination(AgentId destId)
private void doReact(XACnxPrepare req) throws StateException
XACnxPrepare
request holding messages and acknowledgements
produced in an XA transaction.
StateException
- If the proxy has already received a prepare
order for the same transaction.private void doReact(XACnxCommit req) throws StateException
XACnxCommit
request committing the operations performed
in a given transaction.
This method actually processes the objects sent at the prepare phase, and acknowledges the request.
StateException
- If committing an unknown transaction.private void doReact(XACnxRollback req)
XACnxRollback
request rolling back the operations performed
in a given transaction.
private void doReact(XACnxRecoverRequest req) throws StateException
XACnxRecoverRequest
request requesting the
identifiers of the prepared transactions.
Returns the identifiers of the recovered transactions, puts the prepared data into the active context for future commit or rollback.
StateException
- If a recovered transaction branch is already
present in the context.private void doReact(SyncReply not)
SyncReply
notification sent by itself, wrapping a reply
to be sent to a client.
private void doReact(int key, CnxCloseRequest req)
private void doReact(int key, ActivateConsumerRequest req)
private void doReact(int key, CommitRequest req)
private void doFwd(AgentId from, AbstractReplyNot rep)
JMS proxies react the following replies:
QueueMsgReply
BrowseReply
SubscribeReply
TopicMsgsReply
ExceptionReply
private void doFwd(AgentId from, QueueMsgReply rep)
QueueMsgReply
coming from a destination
as a ConsumerMessages
destinated to the requesting client.
If the corresponding context is stopped, stores the
ConsumerMessages
for later delivery.
private void doFwd(BrowseReply rep)
BrowseReply
coming from a
destination as a QBrowseReply
destinated to the
requesting client.
private void doFwd(SubscribeReply rep)
SubscribeReply
as a
ServerReply
.
protected final java.lang.String getMsgTxname()
protected final void setMsgTxName(Message msg)
private void doFwd(AgentId from, TopicMsgsReply rep)
TopicMsgsReply
holding messages published by a topic.
private void doReact(AgentId from, ExceptionReply rep)
ExceptionReply
coming from a destination
as a MomExceptionReply
destinated to the requesting client.
If the wrapped exception is an AccessException
thrown by
a Topic
as a reply to a SubscribeRequest
,
removing the corresponding subscriptions.
private java.lang.String getMBeanName(java.lang.String name)
private void doReact(AdminReplyNot reply)
AdminReply
acknowledges the setting of a temporary
destination; nothing needs to be done.
private void doReact(UnknownAgent uA)
UnknownAgent
notification notifying that a destination does not exist or is deleted.
If it notifies of a deleted topic, the method removes the corresponding subscriptions. If the wrapped request is messages sending, the messages are sent to the DMQ.
A JmsExceptReply
is sent to the concerned requester.
This case might also happen when sending a ClientMessages
to a dead message queue. In that case, the invalid DMQ identifier is set
to null.
private void doReact(FwdAdminRequestNot not)
private void doReact(GetSubscriptions request, AgentId replyTo, java.lang.String requestMsgId, java.lang.String replyMsgId)
public java.lang.String[] getSubscriptionNames()
getSubscriptionNames
in interface ProxyImplMBean
private void doReact(GetSubscriptionMessageIds request, AgentId replyTo, java.lang.String requestMsgId, java.lang.String replyMsgId)
private void doReact(GetSubscription request, AgentId replyTo, java.lang.String requestMsgId, java.lang.String replyMsgId)
private void doReact(GetSubscriptionMessage request, AgentId replyTo, java.lang.String requestMsgId, java.lang.String replyMsgId)
private void doReact(DeleteSubscriptionMessage request, AgentId replyTo, java.lang.String requestMsgId, java.lang.String replyMsgId)
public void deleteSubscriptionMessage(java.lang.String subName, java.lang.String msgId)
subName
- The subscription unique name.msgId
- The unique message's identifier.private void doReact(ClearSubscription request, AgentId replyTo, java.lang.String requestMsgId, java.lang.String replyMsgId)
private void replyToTopic(AdminReply reply, AgentId replyTo, java.lang.String requestMsgId, java.lang.String replyMsgId)
private void setCtx(int key) throws StateException
key
- Key of the activated context.
StateException
- If the context has actually been closed or
lost.private void doReply(AbstractJmsReply reply)
AbstractJmsReply
back to an
external client within the active context.
rep
- The reply to send.ClientContext getClientContext(int ctxId)
private void doReply(int key, AbstractJmsReply reply)
AbstractJmsReply
back to an
external client through a given context.
key
- The context through witch replying.rep
- The reply to send.void cleanPendingMessages(long currentTime)
public void delete()
ProxyImplMBean
delete
in interface ProxyImplMBean
private void deleteProxy(FwdAdminRequestNot not)
java.lang.Exception
- If the requester is not an administrator.private boolean updateSubscriptionToTopic(AgentId topicId, int contextId, int requestId)
topicId
- Identifier of the topic to subscribe to.contextId
- Identifier of the subscription context.requestId
- Identifier of the subscription request.
true
if a SubscribeRequest
has been
sent to the topic.private boolean updateSubscriptionToTopic(AgentId topicId, int contextId, int requestId, boolean asyncSub)
topicId
- Identifier of the topic to subscribe to.contextId
- Identifier of the subscription context.requestId
- Identifier of the subscription request.asyncSub
- asynchronous subscription request.
true
if a SubscribeRequest
has been
sent to the topic.public void readBag(java.io.ObjectInputStream in) throws java.io.IOException, java.lang.ClassNotFoundException
java.io.IOException
java.lang.ClassNotFoundException
public void writeBag(java.io.ObjectOutputStream out) throws java.io.IOException
java.io.IOException
public long getNbMsgsSentToDMQSinceCreation()
ProxyImplMBean
getNbMsgsSentToDMQSinceCreation
in interface ProxyImplMBean
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |