edu.internet2.middleware.grouper.messaging
Class GrouperBuiltinMessagingSystem

java.lang.Object
  extended by edu.internet2.middleware.grouper.messaging.GrouperBuiltinMessagingSystem
All Implemented Interfaces:
edu.internet2.middleware.grouperClient.messaging.GrouperMessagingSystem

public class GrouperBuiltinMessagingSystem
extends Object
implements edu.internet2.middleware.grouperClient.messaging.GrouperMessagingSystem

built in messaging system from database


Nested Class Summary
static class GrouperBuiltinMessagingSystem.GrouperBuiltinMessageState
          state of a message
 
Field Summary
static String actionReceive
          action for receive
static String actionSendToQueue
          action for send to queue
static String actionSendToTopic
          action for send to topic
static String BUILTIN_NAME
          name of built in messaging system
 
Constructor Summary
GrouperBuiltinMessagingSystem()
           
 
Method Summary
 edu.internet2.middleware.grouperClient.messaging.GrouperMessageAcknowledgeResult acknowledge(edu.internet2.middleware.grouperClient.messaging.GrouperMessageAcknowledgeParam grouperMessageAcknowledgeParam)
           
static boolean allowedToReceiveFromQueue(String queueName, edu.internet2.middleware.subject.Subject subject)
           
static boolean allowedToSendToQueue(String queueName, edu.internet2.middleware.subject.Subject subject)
           
static boolean allowedToSendToTopic(String topicName, edu.internet2.middleware.subject.Subject subject)
           
static boolean allowReceiveFromQueue(String queueName, edu.internet2.middleware.subject.Subject subject)
           
static boolean allowSendToQueue(String queueName, edu.internet2.middleware.subject.Subject subject)
           
static boolean allowSendToTopic(String topicName, edu.internet2.middleware.subject.Subject subject)
           
static int cleanOldProcessedMessages()
          clean old unprocessed messages
static int cleanOldUnprocessedMessages()
          clean old unprocessed messages
static boolean createQueue(String queueName)
           
static boolean createTopic(String topicName)
           
static boolean deleteQueue(String queueName)
           
static boolean deleteTopic(String topicName)
           
static boolean disallowReceiveFromQueue(String queueName, edu.internet2.middleware.subject.Subject subject)
           
static boolean disallowSendToQueue(String queueName, edu.internet2.middleware.subject.Subject subject)
           
static boolean disallowSendToTopic(String topicName, edu.internet2.middleware.subject.Subject subject)
           
static String grouperMessageNameOfRole()
          grouper message name of role
static String grouperMessageQueueNameOfDef()
          grouper message queue name of attribute def
static String grouperMessageTopicNameOfDef()
          grouper message topic name of attribute def
static String messageRootStemName()
          message root stem
static long messageSentTimeMicros()
          get a change log id
static String queueStemName()
          queue stem name GrouperBuiltinMessagingSystem.
static Collection<String> queuesTopicSendsTo(String topicName)
           
 edu.internet2.middleware.grouperClient.messaging.GrouperMessageReceiveResult receive(edu.internet2.middleware.grouperClient.messaging.GrouperMessageReceiveParam grouperMessageReceiveParam)
           
 edu.internet2.middleware.grouperClient.messaging.GrouperMessageSendResult send(edu.internet2.middleware.grouperClient.messaging.GrouperMessageSendParam grouperMessageSendParam)
           
static boolean topicAddSendToQueue(String topicName, String queueName)
           
static boolean topicRemoveSendToQueue(String topicName, String queueName)
           
static String topicStemName()
          topic stem name
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

actionSendToTopic

public static final String actionSendToTopic
action for send to topic

See Also:
Constant Field Values

actionSendToQueue

public static final String actionSendToQueue
action for send to queue

See Also:
Constant Field Values

actionReceive

public static final String actionReceive
action for receive

See Also:
Constant Field Values

BUILTIN_NAME

public static final String BUILTIN_NAME
name of built in messaging system

See Also:
Constant Field Values
Constructor Detail

GrouperBuiltinMessagingSystem

public GrouperBuiltinMessagingSystem()
Method Detail

messageRootStemName

public static String messageRootStemName()
message root stem

Returns:
the message root stem

grouperMessageTopicNameOfDef

public static String grouperMessageTopicNameOfDef()
grouper message topic name of attribute def

Returns:
the name

grouperMessageNameOfRole

public static String grouperMessageNameOfRole()
grouper message name of role

Returns:
the name

grouperMessageQueueNameOfDef

public static String grouperMessageQueueNameOfDef()
grouper message queue name of attribute def

Returns:
the name

topicStemName

public static String topicStemName()
topic stem name

Returns:
topic stem name GrouperBuiltinMessagingSystem.

queueStemName

public static String queueStemName()
queue stem name GrouperBuiltinMessagingSystem.

Returns:
queue stem name

createTopic

public static boolean createTopic(String topicName)
Parameters:
topicName -
Returns:
if created or already existed

deleteTopic

public static boolean deleteTopic(String topicName)
Parameters:
topicName -
Returns:
if deleted or didnt exist

deleteQueue

public static boolean deleteQueue(String queueName)
Parameters:
queueName -
Returns:
if deleted or didnt exist

createQueue

public static boolean createQueue(String queueName)
Parameters:
queueName -
Returns:
if created or already created

topicAddSendToQueue

public static boolean topicAddSendToQueue(String topicName,
                                          String queueName)
Parameters:
topicName -
queueName -
Returns:
true if a change occurred

topicRemoveSendToQueue

public static boolean topicRemoveSendToQueue(String topicName,
                                             String queueName)
Parameters:
topicName -
queueName -
Returns:
true if a change occurred

allowSendToTopic

public static boolean allowSendToTopic(String topicName,
                                       edu.internet2.middleware.subject.Subject subject)
Parameters:
topicName -
subject -
Returns:
true if assigned or false if already existed

disallowSendToTopic

public static boolean disallowSendToTopic(String topicName,
                                          edu.internet2.middleware.subject.Subject subject)
Parameters:
topicName -
subject -
Returns:
true if assigned or false if already existed

allowSendToQueue

public static boolean allowSendToQueue(String queueName,
                                       edu.internet2.middleware.subject.Subject subject)
Parameters:
queueName -
subject -
Returns:
true if changed, false if not

disallowSendToQueue

public static boolean disallowSendToQueue(String queueName,
                                          edu.internet2.middleware.subject.Subject subject)
Parameters:
queueName -
subject -
Returns:
true if changed, false if not

allowReceiveFromQueue

public static boolean allowReceiveFromQueue(String queueName,
                                            edu.internet2.middleware.subject.Subject subject)
Parameters:
queueName -
subject -
Returns:
true if changed or false if not changed

disallowReceiveFromQueue

public static boolean disallowReceiveFromQueue(String queueName,
                                               edu.internet2.middleware.subject.Subject subject)
Parameters:
queueName -
subject -
Returns:
true if changed or false if not changed

allowedToSendToQueue

public static boolean allowedToSendToQueue(String queueName,
                                           edu.internet2.middleware.subject.Subject subject)
Parameters:
queueName -
subject -
Returns:
true if allowed to send to queue

allowedToReceiveFromQueue

public static boolean allowedToReceiveFromQueue(String queueName,
                                                edu.internet2.middleware.subject.Subject subject)
Parameters:
queueName -
subject -
Returns:
true if allowed to send to queue

allowedToSendToTopic

public static boolean allowedToSendToTopic(String topicName,
                                           edu.internet2.middleware.subject.Subject subject)
Parameters:
topicName -
subject -
Returns:
true if allowed to send to topic

queuesTopicSendsTo

public static Collection<String> queuesTopicSendsTo(String topicName)
Parameters:
topicName -
Returns:
the queue names that the topic sends to

messageSentTimeMicros

public static long messageSentTimeMicros()
get a change log id

Returns:
a change log id value

cleanOldUnprocessedMessages

public static int cleanOldUnprocessedMessages()
clean old unprocessed messages

Returns:
the number of messages affected

cleanOldProcessedMessages

public static int cleanOldProcessedMessages()
clean old unprocessed messages

Returns:
the number of messages affected

send

public edu.internet2.middleware.grouperClient.messaging.GrouperMessageSendResult send(edu.internet2.middleware.grouperClient.messaging.GrouperMessageSendParam grouperMessageSendParam)
Specified by:
send in interface edu.internet2.middleware.grouperClient.messaging.GrouperMessagingSystem
See Also:
GrouperMessagingSystem.send(edu.internet2.middleware.grouperClient.messaging.GrouperMessageSendParam)

receive

public edu.internet2.middleware.grouperClient.messaging.GrouperMessageReceiveResult receive(edu.internet2.middleware.grouperClient.messaging.GrouperMessageReceiveParam grouperMessageReceiveParam)
Specified by:
receive in interface edu.internet2.middleware.grouperClient.messaging.GrouperMessagingSystem
See Also:
GrouperMessagingSystem.receive(GrouperMessageReceiveParam)

acknowledge

public edu.internet2.middleware.grouperClient.messaging.GrouperMessageAcknowledgeResult acknowledge(edu.internet2.middleware.grouperClient.messaging.GrouperMessageAcknowledgeParam grouperMessageAcknowledgeParam)
Specified by:
acknowledge in interface edu.internet2.middleware.grouperClient.messaging.GrouperMessagingSystem
See Also:
GrouperMessagingSystem.acknowledge(edu.internet2.middleware.grouperClient.messaging.GrouperMessageAcknowledgeParam)