|
Joram 5.2.6 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.objectweb.joram.mom.dest.DestinationImpl
org.objectweb.joram.mom.dest.TopicImpl
org.objectweb.joram.mom.dest.AdminTopicImpl
public final class AdminTopicImpl
The AdminTopicImpl
class implements the admin topic behavior,
basically processing administration requests.
Nested Class Summary | |
---|---|
static class |
AdminTopicImpl.DestinationDesc
|
Field Summary |
---|
Fields inherited from class org.objectweb.joram.mom.dest.TopicImpl |
---|
alreadySentLocally, fatherId, friends, selectors, subscribers |
Fields inherited from class org.objectweb.joram.mom.dest.DestinationImpl |
---|
_rights, agent, clients, creationDate, dmqId, freeReading, freeWriting, logger, nbMsgsDeliverSinceCreation, nbMsgsReceiveSinceCreation, nbMsgsSentToDMQSinceCreation, READ, READWRITE, WRITE |
Constructor Summary | |
---|---|
AdminTopicImpl(fr.dyade.aaa.agent.AgentId topicId)
Constructs an AdminTopicImpl instance. |
Method Summary | |
---|---|
void |
AdminNotification(fr.dyade.aaa.agent.AgentId from,
AdminNotification adminNot)
Method implementing the reaction to a org.objectweb.joram.mom.proxies.AdminNotification
notification notifying of the creation of an admin proxy. |
void |
AdminReply(fr.dyade.aaa.agent.AgentId from,
AdminReply not)
Method implementing the reaction to a org.objectweb.joram.mom.notifications.AdminReply
notification replying to an administration request. |
void |
AdminRequestNot(fr.dyade.aaa.agent.AgentId from,
org.objectweb.joram.mom.dest.AdminTopicImpl.AdminRequestNot adminNot)
Method implementing the reaction to a AdminRequest
notification notifying of the creation of an admin proxy. |
void |
clusterAck(fr.dyade.aaa.agent.AgentId from,
org.objectweb.joram.mom.dest.ClusterAck ack)
Overrides this TopicImpl method; a ClusterAck
is not expected by an AdminTopic. |
void |
clusterNot(fr.dyade.aaa.agent.AgentId from,
org.objectweb.joram.mom.dest.ClusterNot not)
Overrides this TopicImpl method; if this AdminTopic is on
server0, new cluster fellow is notified to other fellows and other
fellows are notified to it. |
void |
clusterRequest(fr.dyade.aaa.agent.AgentId from,
ClusterRequest request)
Overrides this TopicImpl method; AdminTopics do not
accept ClusterRequest notifications. |
void |
clusterTest(fr.dyade.aaa.agent.AgentId from,
org.objectweb.joram.mom.dest.ClusterTest request)
Overrides this TopicImpl method; AdminTopics do not
accept to join clusters other than their admin topics cluster. |
AdminTopicImpl.DestinationDesc |
createDestination(java.lang.String destName,
fr.dyade.aaa.agent.AgentId adminId,
java.util.Properties properties,
byte type,
java.lang.String className,
java.lang.String requestClassName,
java.lang.StringBuffer strbuf)
Instantiating the destination class or retrieving the destination. |
static AdminTopicImpl.DestinationDesc |
createDestinationAndSave(java.lang.String destName,
fr.dyade.aaa.agent.AgentId adminId,
java.util.Properties properties,
byte type,
java.lang.String className,
java.lang.String requestClassName,
java.lang.StringBuffer strbuf)
Deprecated. |
static void |
CreateUserAndSave(CreateUserRequest request,
fr.dyade.aaa.agent.AgentId replyTo,
java.lang.String msgId)
Processes a CreateUserRequest instance requesting the
creation of a UserAgent for a given user and save Agent
AdminTopic. |
void |
deleteNot(fr.dyade.aaa.agent.AgentId from,
fr.dyade.aaa.agent.DeleteNot not)
Overrides this DestinationImpl method; deletion requests are
not accepted by AdminTopics. |
void |
doProcess(CreateUserRequest request,
fr.dyade.aaa.agent.AgentId replyTo,
java.lang.String msgId)
Processes a CreateUserRequest instance requesting the
creation of a UserAgent for a given user. |
void |
doProcess(SetRight request,
fr.dyade.aaa.agent.AgentId replyTo,
java.lang.String msgId)
Processes a SetRight instance requesting to grant a user
a given right on a given destination. |
protected void |
doUnknownAgent(fr.dyade.aaa.agent.UnknownAgent uA)
Specializes this TopicImpl reaction. |
void |
fatherAck(fr.dyade.aaa.agent.AgentId from,
org.objectweb.joram.mom.dest.FatherAck ack)
Overrides this TopicImpl method; a FatherAck
acknowledges the process of creating a hierarchy of topics. |
void |
fatherTest(fr.dyade.aaa.agent.AgentId from,
org.objectweb.joram.mom.dest.FatherTest not)
Overrides this TopicImpl method; AdminTopics do not
accept to join a hierarchy. |
java.lang.String |
getName(fr.dyade.aaa.agent.AgentId proxyId)
Method used by proxies for retrieving their name. |
java.lang.Object |
getPassword(fr.dyade.aaa.agent.AgentId proxyId)
Method used by proxies for retrieving their password. |
fr.dyade.aaa.agent.AgentId |
getProxyId(Identity identity,
java.lang.String inaddr)
Method used by ConnectionManager proxies to check their
clients identification. |
void |
GetProxyIdListNot(GetProxyIdListNot not)
|
void |
GetProxyIdNot(GetProxyIdNot not)
|
protected void |
handleDeniedMessage(java.lang.String msgId,
fr.dyade.aaa.agent.AgentId replyTo)
Method used to send a response when a message is denied because of a lack of rights. |
static boolean |
isDestinationTableContain(java.lang.String destName)
Deprecated. |
boolean |
isTaken(java.lang.String name)
Method used by proxies for checking if a given name is already used. |
void |
postProcess(SetRightRequest req)
|
ClientMessages |
preProcess(fr.dyade.aaa.agent.AgentId from,
ClientMessages msgs)
Overrides this DestinationImpl method;
ClientMessages notifications hold requests sent by an
administrator. |
SetRightRequest |
preProcess(SetRightRequest req)
|
void |
RegisterDestNot(RegisterDestNot not)
|
void |
RegisteredDestNot(fr.dyade.aaa.agent.AgentId from,
RegisteredDestNot not)
|
void |
RegisterTmpDestNot(RegisterTmpDestNot not)
|
void |
requestGroupNot(fr.dyade.aaa.agent.AgentId from,
RequestGroupNot not)
|
void |
setDMQRequest(fr.dyade.aaa.agent.AgentId from,
SetDMQRequest request)
Overrides this DestinationImpl method; AdminTopics do not
accept SetDMQRequest notifications. |
void |
setFatherRequest(fr.dyade.aaa.agent.AgentId from,
SetFatherRequest request)
Overrides this TopicImpl method; AdminTopics do not
accept SetFatherRequest notifications. |
static void |
setRightAndSave(SetRight request,
fr.dyade.aaa.agent.AgentId replyTo,
java.lang.String msgId)
Processes a SetRight instance requesting to grant a user
a given right on a given destination. |
void |
setRightRequest(fr.dyade.aaa.agent.AgentId from,
SetRightRequest request)
Overrides this DestinationImpl method; AdminTopics do not
accept SetRightRequest notifications. |
void |
topicForwardNot(fr.dyade.aaa.agent.AgentId from,
TopicForwardNot not)
Overrides this TopicImpl method; the forwarded messages
contain admin requests and will be processed. |
java.lang.String |
toString()
Returns a string representation of this destination. |
void |
unclusterRequest(fr.dyade.aaa.agent.AgentId from,
UnclusterRequest request)
Overrides this TopicImpl method; AdminTopics do not
accept UnclusterRequest notifications. |
void |
unsetFatherRequest(fr.dyade.aaa.agent.AgentId from,
UnsetFatherRequest request)
Overrides this TopicImpl method; AdminTopics do not
accept UnsetFatherRequest notifications. |
Methods inherited from class org.objectweb.joram.mom.dest.TopicImpl |
---|
destinationAdminRequestNot, doClientMessages, doDeleteNot, doRightRequest, forwardMessages, getNbMsgsReceiveSinceCreation, getSubscriberIds, initialize, monitGetCluster, monitGetFather, monitGetSubscriptions, postSubscribe, postUnsubscribe, preSubscribe, preUnsubscribe, processMessages, setAlreadySentLocally, subscribeRequest, unclusterNot, unsubscribeRequest |
Methods inherited from class org.objectweb.joram.mom.dest.DestinationImpl |
---|
canBeDeleted, clientMessages, forward, getCreationDate, getCreationTimeInMillis, getDestinationId, getDMQId, getId, getNbMsgsDeliverSinceCreation, getNbMsgsSentToDMQSinceCreation, getRight, getRights, getStatisticHashtable, isAdministrator, isFreeReading, isFreeWriting, isLocal, isReader, isWriter, monitFreeAccess, monitGetDMQSettings, monitGetReaders, monitGetStat, monitGetWriters, postProcess, processSetRight, replyToTopic, setAgent, setFreeReading, setFreeWriting, specialAdminProcess, specialAdminRequest, unknownAgent |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.objectweb.joram.mom.dest.TopicImplMBean |
---|
getSubscriberIds |
Methods inherited from interface org.objectweb.joram.mom.dest.DestinationImplMBean |
---|
getCreationDate, getCreationTimeInMillis, getDestinationId, getDMQId, getNbMsgsDeliverSinceCreation, getNbMsgsReceiveSinceCreation, getNbMsgsSentToDMQSinceCreation, getRight, getRights, isFreeReading, isFreeWriting, setFreeReading, setFreeWriting |
Constructor Detail |
---|
public AdminTopicImpl(fr.dyade.aaa.agent.AgentId topicId)
AdminTopicImpl
instance.
topicId
- Identifier of the agent hosting the AdminTopicImpl.Method Detail |
---|
public java.lang.String toString()
TopicImpl
toString
in interface DestinationImplMBean
toString
in class TopicImpl
public fr.dyade.aaa.agent.AgentId getProxyId(Identity identity, java.lang.String inaddr) throws java.lang.Exception
ConnectionManager
proxies to check their
clients identification.
identity
- inaddr
-
java.lang.Exception
- If the user does not exist, is wrongly identified,
or does not have any proxy deployed.ConnectionManager
public java.lang.String getName(fr.dyade.aaa.agent.AgentId proxyId)
public java.lang.Object getPassword(fr.dyade.aaa.agent.AgentId proxyId)
public boolean isTaken(java.lang.String name)
protected void handleDeniedMessage(java.lang.String msgId, fr.dyade.aaa.agent.AgentId replyTo)
handleDeniedMessage
in class DestinationImpl
public void AdminNotification(fr.dyade.aaa.agent.AgentId from, AdminNotification adminNot)
org.objectweb.joram.mom.proxies.AdminNotification
notification notifying of the creation of an admin proxy.
public void AdminRequestNot(fr.dyade.aaa.agent.AgentId from, org.objectweb.joram.mom.dest.AdminTopicImpl.AdminRequestNot adminNot)
AdminRequest
notification notifying of the creation of an admin proxy.
public void AdminReply(fr.dyade.aaa.agent.AgentId from, AdminReply not)
org.objectweb.joram.mom.notifications.AdminReply
notification replying to an administration request.
A reply is sent back to the connected administrator if needed.
public void GetProxyIdNot(GetProxyIdNot not)
public void GetProxyIdListNot(GetProxyIdListNot not)
public void RegisterTmpDestNot(RegisterTmpDestNot not)
public void RegisterDestNot(RegisterDestNot not)
public void RegisteredDestNot(fr.dyade.aaa.agent.AgentId from, RegisteredDestNot not)
public void setRightRequest(fr.dyade.aaa.agent.AgentId from, SetRightRequest request) throws AccessException
DestinationImpl
method; AdminTopics do not
accept SetRightRequest
notifications.
setRightRequest
in class DestinationImpl
AccessException
- Not thrown.public void setDMQRequest(fr.dyade.aaa.agent.AgentId from, SetDMQRequest request) throws AccessException
DestinationImpl
method; AdminTopics do not
accept SetDMQRequest
notifications.
setDMQRequest
in class DestinationImpl
AccessException
- Not thrown.public void requestGroupNot(fr.dyade.aaa.agent.AgentId from, RequestGroupNot not)
requestGroupNot
in class DestinationImpl
public SetRightRequest preProcess(SetRightRequest req)
preProcess
in class DestinationImpl
public void postProcess(SetRightRequest req)
postProcess
in class DestinationImpl
public ClientMessages preProcess(fr.dyade.aaa.agent.AgentId from, ClientMessages msgs)
DestinationImpl
method;
ClientMessages
notifications hold requests sent by an
administrator.
preProcess
in class DestinationImpl
public void deleteNot(fr.dyade.aaa.agent.AgentId from, fr.dyade.aaa.agent.DeleteNot not)
DestinationImpl
method; deletion requests are
not accepted by AdminTopics.
deleteNot
in class DestinationImpl
public void clusterRequest(fr.dyade.aaa.agent.AgentId from, ClusterRequest request) throws AccessException
TopicImpl
method; AdminTopics do not
accept ClusterRequest
notifications.
clusterRequest
in class TopicImpl
AccessException
- Not thrown.public void clusterTest(fr.dyade.aaa.agent.AgentId from, org.objectweb.joram.mom.dest.ClusterTest request)
TopicImpl
method; AdminTopics do not
accept to join clusters other than their admin topics cluster.
clusterTest
in class TopicImpl
public void clusterAck(fr.dyade.aaa.agent.AgentId from, org.objectweb.joram.mom.dest.ClusterAck ack)
TopicImpl
method; a ClusterAck
is not expected by an AdminTopic.
clusterAck
in class TopicImpl
public void clusterNot(fr.dyade.aaa.agent.AgentId from, org.objectweb.joram.mom.dest.ClusterNot not)
TopicImpl
method; if this AdminTopic is on
server0, new cluster fellow is notified to other fellows and other
fellows are notified to it.
clusterNot
in class TopicImpl
public void unclusterRequest(fr.dyade.aaa.agent.AgentId from, UnclusterRequest request) throws MomException
TopicImpl
method; AdminTopics do not
accept UnclusterRequest
notifications.
unclusterRequest
in class TopicImpl
AccessException
- Not thrown.
MomException
public void setFatherRequest(fr.dyade.aaa.agent.AgentId from, SetFatherRequest request) throws MomException
TopicImpl
method; AdminTopics do not
accept SetFatherRequest
notifications.
setFatherRequest
in class TopicImpl
AccessException
- Not thrown.
MomException
public void fatherTest(fr.dyade.aaa.agent.AgentId from, org.objectweb.joram.mom.dest.FatherTest not)
TopicImpl
method; AdminTopics do not
accept to join a hierarchy.
fatherTest
in class TopicImpl
public void fatherAck(fr.dyade.aaa.agent.AgentId from, org.objectweb.joram.mom.dest.FatherAck ack)
TopicImpl
method; a FatherAck
acknowledges the process of creating a hierarchy of topics.
fatherAck
in class TopicImpl
public void unsetFatherRequest(fr.dyade.aaa.agent.AgentId from, UnsetFatherRequest request) throws MomException
TopicImpl
method; AdminTopics do not
accept UnsetFatherRequest
notifications.
unsetFatherRequest
in class TopicImpl
AccessException
- Not thrown.
MomException
public void topicForwardNot(fr.dyade.aaa.agent.AgentId from, TopicForwardNot not)
TopicImpl
method; the forwarded messages
contain admin requests and will be processed.
topicForwardNot
in class TopicImpl
protected void doUnknownAgent(fr.dyade.aaa.agent.UnknownAgent uA)
TopicImpl
reaction.
doUnknownAgent
in class TopicImpl
public AdminTopicImpl.DestinationDesc createDestination(java.lang.String destName, fr.dyade.aaa.agent.AgentId adminId, java.util.Properties properties, byte type, java.lang.String className, java.lang.String requestClassName, java.lang.StringBuffer strbuf) throws fr.dyade.aaa.agent.UnknownServerException, RequestException
destName
- destination NameadminId
- other admin (null for TopicAdmin)properties
- destination propertiestype
- destination type ("queue" or "topic")className
- creates an instance of the classrequestClassName
- strbuf
- information
fr.dyade.aaa.agent.UnknownServerException
RequestException
public void doProcess(CreateUserRequest request, fr.dyade.aaa.agent.AgentId replyTo, java.lang.String msgId) throws fr.dyade.aaa.agent.UnknownServerException, RequestException
CreateUserRequest
instance requesting the
creation of a UserAgent
for a given user.
fr.dyade.aaa.agent.UnknownServerException
- If the target server does not exist.
RequestException
- If the user already exists but with a
different password, or if the proxy deployment failed.public static void CreateUserAndSave(CreateUserRequest request, fr.dyade.aaa.agent.AgentId replyTo, java.lang.String msgId) throws fr.dyade.aaa.agent.UnknownServerException, RequestException, java.io.IOException
CreateUserRequest
instance requesting the
creation of a UserAgent
for a given user and save Agent
AdminTopic. (used by ScalAgent mediation)
fr.dyade.aaa.agent.UnknownServerException
- If the target server does not exist.
RequestException
- If the user already exists but with a
different password, or if the proxy deployment failed.
java.io.IOException
- transaction exceptionpublic void doProcess(SetRight request, fr.dyade.aaa.agent.AgentId replyTo, java.lang.String msgId) throws fr.dyade.aaa.agent.UnknownServerException
SetRight
instance requesting to grant a user
a given right on a given destination.
fr.dyade.aaa.agent.UnknownServerException
public static void setRightAndSave(SetRight request, fr.dyade.aaa.agent.AgentId replyTo, java.lang.String msgId) throws fr.dyade.aaa.agent.UnknownServerException, java.io.IOException
SetRight
instance requesting to grant a user
a given right on a given destination. And save Agent TopicAdmin.
(used by ScalAgent mediation)
request
- replyTo
- msgId
-
fr.dyade.aaa.agent.UnknownServerException
java.io.IOException
public static AdminTopicImpl.DestinationDesc createDestinationAndSave(java.lang.String destName, fr.dyade.aaa.agent.AgentId adminId, java.util.Properties properties, byte type, java.lang.String className, java.lang.String requestClassName, java.lang.StringBuffer strbuf) throws fr.dyade.aaa.agent.UnknownServerException, RequestException, java.io.IOException
destName
- destination NameadminId
- other admin (null for TopicAdmin)properties
- destination propertiestype
- destination type ("queue" or "topic")className
- creates an instance of the classrequestClassName
- strbuf
- information
fr.dyade.aaa.agent.UnknownServerException
RequestException
java.io.IOException
- transaction exception.public static boolean isDestinationTableContain(java.lang.String destName)
destName
- destination name.
|
Joram 5.2.6 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |