Oracle9i Application Developer's Guide - Advanced Queuing Release 1 (9.0.1) Part Number A88890-02 |
|
Administrative Interface, 22 of 36
Alter existing properties of a subscriber to a specified queue. Only the rule can be altered.
The rule, the transformation, or both can be altered. If you only alter one of the attributes, the rule, or the transformation of the subscriber, specify the existing value of the other attribute to the alter call.
When a queue, queue table, or subscriber is created, modified, or dropped, and if GLOBAL_TOPIC_ENABLED = TRUE, a corresponding LDAP entry is also created.
See Chapter 3, "AQ Programmatic Environments" for a list of available functions in each programmatic environment. Use the following syntax references for each programmatic environment:
See Chapter 3, "AQ Programmatic Environments" for a list of available functions in each programmatic environment. Examples are provided in the following programmatic environments:
/* Add a subscriber with a rule: */ DECLARE subscriber sys.aq$_agent; BEGIN subscriber := sys.aq$_agent('SUBSCRIBER1', 'aq2.msg_queue2@london', null); DBMS_AQADM.ADD_SUBSCRIBER( queue_name => 'aq.msg_queue', subscriber => subscriber, rule => 'priority < 2'); END; /* Change rule for subscriber: */ DECLARE subscriber sys.aq$_agent; BEGIN subscriber := sys.aq$_agent('SUBSCRIBER1', 'aq2.msg_queue2@london', null); DBMS_AQADM.ALTER_SUBSCRIBER( queue_name => 'aq.msg_queue', subscriber => subscriber, rule => 'priority = 1'); END;
/* Add a subscriber with transformation */ EXECUTE DBMS_AQADM.ADD_SUBSCRIBER ('aq.msg_queue', aq$_agent('subscriber1', 'aq2.msg_queue2@london', null), 'AQ.MSG_MAP1'); /* Alter the subscriber*/ EXECUTE DBMS_AQADM.ALTER_SUBSCRIBER ('aq.msg_queue', aq$_agent ('subscriber1', 'aq2.msg_queue2@london', null), 'AQ.MSG.MAP2');
/* Alter the rule for a subscriber */ public static void example(AQSession aq_sess) throws AQException { AQQueue queue; AQAgent agent1; AQAgent agent2; /* Get the queue object */ queue = aq_sess.getQueue("AQ", "multi_queue"); /* add a subscriber */ agent1 = new AQAgent("subscriber1", "aq2.msg_queue2@london"); queue.alterSubscriber(agent1, "priority=1"); }
|
Copyright © 1996-2001, Oracle Corporation. All Rights Reserved. |
|