[Home] [Help]
PACKAGE: SYS.DBMS_AQADM
Source
1 PACKAGE dbms_aqadm AS
2
3 --------------------
4 -- PUBLIC CONSTANT
5 --
6 -- payload type of the queue table
7 JMS_TYPE CONSTANT VARCHAR2(1) := '0';
8
9 -- retention
10 INFINITE CONSTANT BINARY_INTEGER := -1;
11
12 -- message grouping
13 TRANSACTIONAL CONSTANT BINARY_INTEGER := 1;
14 NONE CONSTANT BINARY_INTEGER := 0;
15
16 -- queue type
17 NORMAL_QUEUE CONSTANT BINARY_INTEGER := 0;
18 EXCEPTION_QUEUE CONSTANT BINARY_INTEGER := 1;
19 NON_PERSISTENT_QUEUE CONSTANT BINARY_INTEGER := 2;
20
21 -- non-repudiation properties
22 NON_REPUDIATE_SENDER CONSTANT BINARY_INTEGER := 1;
23 NON_REPUDIATE_SNDRCV CONSTANT BINARY_INTEGER := 2;
24
25 -- protocols (note that FTP is not supported yet so it is not
26 -- included in anyp).
27 TTC CONSTANT BINARY_INTEGER := 0;
28 HTTP CONSTANT BINARY_INTEGER := 1;
29 SMTP CONSTANT BINARY_INTEGER := 2;
30 FTP CONSTANT BINARY_INTEGER := 4;
31 ANYP CONSTANT BINARY_INTEGER := HTTP + SMTP;
32
33 LOGMINER_PROTOCOL CONSTANT BINARY_INTEGER := 1;
34 LOGAPPLY_PROTOCOL CONSTANT BINARY_INTEGER := 2;
35 TEST_PROTOCOL CONSTANT BINARY_INTEGER := 3;
36
37 -- Constants for LDAP connection factory type
38 AQ_QUEUE_CONNECTION CONSTANT BINARY_INTEGER := 1;
39 AQ_TOPIC_CONNECTION CONSTANT BINARY_INTEGER := 2;
40
41 -- Constants for delivery mode
42 PERSISTENT CONSTANT BINARY_INTEGER := 1 ;
43 BUFFERED CONSTANT BINARY_INTEGER := 2 ;
44 PERSISTENT_OR_BUFFERED CONSTANT BINARY_INTEGER := 3 ;
45
46 -- subscriber properties.
47 QUEUE_TO_QUEUE_SUBSCRIBER CONSTANT BINARY_INTEGER := 8;
48
49 -- Constants for get/set_replay_info
50 LAST_ENQUEUED CONSTANT BINARY_INTEGER := 0;
51 LAST_ACKNOWLEDGED CONSTANT BINARY_INTEGER := 1;
52
53 -- 12G sort_list parameter
54 -- rearrange sort list values to sync with dbms_aqadm_sys.SC_* and
55 -- its corresponding KWSC_* flags in kwsc.h.
56 PRIORITY CONSTANT BINARY_INTEGER := 1;
57 ENQ_TIME CONSTANT BINARY_INTEGER := 2;
58 PRIORITY_ENQ_TIME CONSTANT BINARY_INTEGER := 3;
59 COMMIT_TIME CONSTANT BINARY_INTEGER := 4;
60 PRIORITY_COMMIT_TIME CONSTANT BINARY_INTEGER := 5;
61 ENQ_TIME_PRIORITY CONSTANT BINARY_INTEGER := 7;
62
63 TYPE aq$_subscriber_list_t IS TABLE OF sys.aq$_agent
64 INDEX BY BINARY_INTEGER;
65
66 TYPE aq$_purge_options_t IS
67 RECORD(block boolean DEFAULT FALSE,
68 delivery_mode PLS_INTEGER DEFAULT dbms_aqadm.PERSISTENT);
69
70 PROCEDURE CREATE_SHARDED_QUEUE (
71 queue_name IN VARCHAR2,
72 storage_clause IN VARCHAR2 DEFAULT NULL,
73 multiple_consumers IN BOOLEAN DEFAULT FALSE,
74 max_retries IN NUMBER DEFAULT NULL,
75 comment IN VARCHAR2 DEFAULT NULL);
76
77 PROCEDURE create_queue_table(
78 queue_table IN VARCHAR2,
79 queue_payload_type IN VARCHAR2,
80 storage_clause IN VARCHAR2 DEFAULT NULL,
81 sort_list IN VARCHAR2 DEFAULT NULL,
82 multiple_consumers IN BOOLEAN DEFAULT FALSE,
83 message_grouping IN BINARY_INTEGER DEFAULT NONE,
84 comment IN VARCHAR2 DEFAULT NULL,
85 auto_commit IN BOOLEAN DEFAULT TRUE,
86 primary_instance IN BINARY_INTEGER DEFAULT 0,
87 secondary_instance IN BINARY_INTEGER DEFAULT 0,
88 compatible IN VARCHAR2 DEFAULT NULL,
89 non_repudiation IN BINARY_INTEGER DEFAULT 0,
90 secure IN BOOLEAN DEFAULT FALSE);
91
92 PROCEDURE alter_queue_table(
93 queue_table IN VARCHAR2,
94 comment IN VARCHAR2 DEFAULT NULL,
95 primary_instance IN BINARY_INTEGER DEFAULT NULL,
96 secondary_instance IN BINARY_INTEGER DEFAULT NULL);
97
98 PROCEDURE create_queue(
99 queue_name IN VARCHAR2,
100 queue_table IN VARCHAR2,
101 queue_type IN BINARY_INTEGER DEFAULT NORMAL_QUEUE,
102 max_retries IN NUMBER DEFAULT NULL,
103 retry_delay IN NUMBER DEFAULT 0,
104 retention_time IN NUMBER DEFAULT 0,
105 dependency_tracking IN BOOLEAN DEFAULT FALSE,
106 comment IN VARCHAR2 DEFAULT NULL,
107 auto_commit IN BOOLEAN DEFAULT TRUE);
108
109 -- PROCEDURE create_queue(
110 -- queue_name IN VARCHAR2,
111 -- queue_payload_type IN VARCHAR2,
112 -- sort_list IN VARCHAR2 DEFAULT NULL,
113 -- multiple_consumers IN BOOLEAN DEFAULT FALSE,
114 -- max_retries IN NUMBER DEFAULT NULL,
115 -- retry_delay IN NUMBER DEFAULT 0,
116 -- retention_time IN NUMBER DEFAULT 0,
117 -- comment IN VARCHAR2 DEFAULT NULL,
118 -- shard_count IN NUMBER DEFAULT 5);
119
120 PROCEDURE create_np_queue(
121 queue_name IN VARCHAR2,
122 multiple_consumers IN BOOLEAN DEFAULT FALSE,
123 comment IN VARCHAR2 DEFAULT NULL);
124
125 PROCEDURE drop_queue(
126 queue_name IN VARCHAR2,
127 auto_commit IN BOOLEAN DEFAULT TRUE);
128
129 PROCEDURE drop_sharded_queue(
130 queue_name IN VARCHAR2,
131 force IN BOOLEAN DEFAULT FALSE);
132
133 PROCEDURE drop_queue_table(
134 queue_table IN VARCHAR2,
135 force IN BOOLEAN DEFAULT FALSE,
136 auto_commit IN BOOLEAN DEFAULT TRUE);
137
138 PROCEDURE start_queue(
139 queue_name IN VARCHAR2,
140 enqueue IN BOOLEAN DEFAULT TRUE,
141 dequeue IN BOOLEAN DEFAULT TRUE);
142
143 PROCEDURE stop_queue(
144 queue_name IN VARCHAR2,
145 enqueue IN BOOLEAN DEFAULT TRUE,
146 dequeue IN BOOLEAN DEFAULT TRUE,
147 wait IN BOOLEAN DEFAULT TRUE);
148
149 PROCEDURE alter_queue(
150 queue_name IN VARCHAR2,
151 max_retries IN NUMBER DEFAULT NULL,
152 retry_delay IN NUMBER DEFAULT NULL,
153 retention_time IN NUMBER DEFAULT NULL,
154 auto_commit IN BOOLEAN DEFAULT TRUE,
155 comment IN VARCHAR2 DEFAULT NULL);
156
157 PROCEDURE add_subscriber(
158 queue_name IN VARCHAR2,
159 subscriber IN SYS.AQ$_AGENT,
160 rule IN VARCHAR2 DEFAULT NULL,
161 transformation IN VARCHAR2 DEFAULT NULL,
162 queue_to_queue IN BOOLEAN DEFAULT FALSE,
163 delivery_mode IN PLS_INTEGER
164 DEFAULT PERSISTENT);
165 -- for backward compatibility
166 PROCEDURE alter_subscriber(
167 queue_name IN VARCHAR2,
168 subscriber IN SYS.AQ$_AGENT,
169 rule IN VARCHAR2);
170
171 PROCEDURE alter_subscriber(
172 queue_name IN VARCHAR2,
173 subscriber IN SYS.AQ$_AGENT,
174 rule IN VARCHAR2,
175 transformation IN VARCHAR2);
176
177 PROCEDURE remove_subscriber(
178 queue_name IN VARCHAR2,
179 subscriber IN SYS.AQ$_AGENT);
180
181 PROCEDURE grant_type_access(
182 user_name IN VARCHAR2);
183 PRAGMA SUPPLEMENTAL_LOG_DATA(grant_type_access, AUTO);
184
185 FUNCTION queue_subscribers(
186 queue_name IN VARCHAR2)
187 RETURN aq$_subscriber_list_t;
188
189 PROCEDURE grant_queue_privilege(
190 privilege IN VARCHAR2,
191 queue_name IN VARCHAR2,
192 grantee IN VARCHAR2,
193 grant_option IN BOOLEAN := FALSE);
194
195 PROCEDURE grant_system_privilege(
196 privilege IN VARCHAR2,
197 grantee IN VARCHAR2,
198 admin_option IN BOOLEAN := FALSE);
199 PRAGMA SUPPLEMENTAL_LOG_DATA(grant_system_privilege, AUTO);
200
201 PROCEDURE revoke_queue_privilege(
202 privilege IN VARCHAR2,
203 queue_name IN VARCHAR2,
204 grantee IN VARCHAR2);
205
206 PROCEDURE revoke_system_privilege(
207 privilege IN VARCHAR2,
208 grantee IN VARCHAR2);
209 PRAGMA SUPPLEMENTAL_LOG_DATA(revoke_system_privilege, AUTO);
210
211 PROCEDURE get_type_info(
212 schema IN VARCHAR2,
213 qname IN VARCHAR2,
214 gettds IN BOOLEAN,
215 rc OUT BINARY_INTEGER,
216 toid OUT RAW,
217 version OUT NUMBER,
218 tds OUT LONG RAW,
219 queue_style OUT VARCHAR2,
220 network_name OUT VARCHAR2);
221 PRAGMA SUPPLEMENTAL_LOG_DATA(get_type_info, NONE);
222
223 PROCEDURE get_type_info(
224 schema IN VARCHAR2,
225 qname IN VARCHAR2,
226 gettds IN BOOLEAN,
227 rc OUT BINARY_INTEGER,
228 toid OUT RAW,
229 version OUT NUMBER,
230 tds OUT LONG RAW);
231 PRAGMA SUPPLEMENTAL_LOG_DATA(get_type_info, NONE);
232
233 PROCEDURE verify_queue_types(
234 src_queue_name IN VARCHAR2,
235 dest_queue_name IN VARCHAR2,
236 destination IN VARCHAR2 DEFAULT NULL,
237 rc OUT BINARY_INTEGER,
238 transformation IN VARCHAR2 DEFAULT NULL);
239 PRAGMA SUPPLEMENTAL_LOG_DATA(verify_queue_types, NONE);
240
241 PROCEDURE verify_queue_types_no_queue(
242 src_queue_name IN VARCHAR2,
243 dest_queue_name IN VARCHAR2,
244 destination IN VARCHAR2 DEFAULT NULL,
245 rc OUT BINARY_INTEGER,
246 transformation IN VARCHAR2 DEFAULT NULL);
247 PRAGMA SUPPLEMENTAL_LOG_DATA(verify_queue_types_no_queue, NONE);
248
249 PROCEDURE verify_queue_types_get_nrp(
250 src_queue_name IN VARCHAR2,
251 dest_queue_name IN VARCHAR2,
252 destination IN VARCHAR2 DEFAULT NULL,
253 rc OUT BINARY_INTEGER,
254 transformation IN VARCHAR2 DEFAULT NULL);
255 PRAGMA SUPPLEMENTAL_LOG_DATA(verify_queue_types_get_nrp, NONE);
256
257 PROCEDURE get_prop_seqno(qid IN NUMBER,
258 dqname IN VARCHAR2,
259 dbname IN VARCHAR2,
260 seq OUT BINARY_INTEGER);
261 PRAGMA SUPPLEMENTAL_LOG_DATA(get_prop_seqno, NONE);
262
263 PROCEDURE recover_propagation(
264 schema IN VARCHAR2,
265 queue_name IN VARCHAR2,
266 destination IN VARCHAR2,
267 protocol IN BINARY_INTEGER default TTC,
268 url IN VARCHAR2 default NULL,
269 username IN VARCHAR2 default NULL,
270 passwd IN VARCHAR2 default NULL,
271 trace IN BINARY_INTEGER default 0,
272 destq IN BINARY_INTEGER default 0);
273
274 PROCEDURE schedule_propagation(
275 queue_name IN VARCHAR2,
276 destination IN VARCHAR2 DEFAULT NULL,
277 start_time IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
278 duration IN NUMBER DEFAULT NULL,
279 next_time IN VARCHAR2 DEFAULT NULL,
280 latency IN NUMBER DEFAULT 60,
281 destination_queue IN VARCHAR2 DEFAULT NULL);
282
283 PROCEDURE unschedule_propagation(
284 queue_name IN VARCHAR2,
285 destination IN VARCHAR2 DEFAULT NULL,
286 destination_queue IN VARCHAR2 DEFAULT NULL);
287
288 PROCEDURE alter_propagation_schedule(
289 queue_name IN VARCHAR2,
290 destination IN VARCHAR2 DEFAULT NULL,
291 duration IN NUMBER DEFAULT NULL,
292 next_time IN VARCHAR2 DEFAULT NULL,
293 latency IN NUMBER DEFAULT 60,
294 destination_queue IN VARCHAR2 DEFAULT NULL);
295
296 PROCEDURE enable_propagation_schedule(
297 queue_name IN VARCHAR2,
298 destination IN VARCHAR2 DEFAULT NULL,
299 destination_queue IN VARCHAR2 DEFAULT NULL);
300
301 PROCEDURE disable_propagation_schedule(
302 queue_name IN VARCHAR2,
303 destination IN VARCHAR2 DEFAULT NULL,
304 destination_queue IN VARCHAR2 DEFAULT NULL);
305
306 FUNCTION aq$_propaq(
307 job IN NUMBER) RETURN DATE;
308
309 -- aq$_propaq is overloaded with 8.0.5 interface to facilitate
310 -- upgrade/downgrade
311 FUNCTION aq$_propaq(
312 job IN NUMBER,
313 next_date IN DATE,
314 qname IN VARCHAR2,
315 schema IN VARCHAR2,
316 destination IN VARCHAR2 DEFAULT NULL,
317 toid_char IN VARCHAR2 DEFAULT NULL,
318 version_char IN VARCHAR2 DEFAULT NULL,
319 start_time IN VARCHAR2,
320 duration IN VARCHAR2 DEFAULT NULL,
321 next_time IN VARCHAR2 DEFAULT NULL,
322 latency IN VARCHAR2 DEFAULT '60') RETURN DATE;
323
324 PROCEDURE start_time_manager;
325 PRAGMA SUPPLEMENTAL_LOG_DATA(start_time_manager, NONE);
326
327 PROCEDURE stop_time_manager;
328 PRAGMA SUPPLEMENTAL_LOG_DATA(stop_time_manager, NONE);
329
330 PROCEDURE migrate_queue_table(
331 queue_table IN VARCHAR2,
332 compatible IN VARCHAR2);
333
334 -- non-repudiate sender of ADT payload
335 PROCEDURE nonrepudiate_sender(
336 queue_name IN VARCHAR2,
337 msgid IN RAW,
338 sender_info IN SYS.AQ$_AGENT,
339 signature OUT SYS.AQ$_SIG_PROP,
340 payload OUT "<ADT_1>");
341 PRAGMA SUPPLEMENTAL_LOG_DATA(nonrepudiate_sender, NONE);
342
343 -- non-repudiate sender of raw payload
344 PROCEDURE nonrepudiate_sender(
345 queue_name IN VARCHAR2,
346 msgid IN RAW,
347 sender_info IN SYS.AQ$_AGENT,
348 signature OUT SYS.AQ$_SIG_PROP,
349 payload OUT raw);
350 PRAGMA SUPPLEMENTAL_LOG_DATA(nonrepudiate_sender, NONE);
351
352 PROCEDURE nonrepudiate_receiver(
353 queue_name IN VARCHAR2,
354 msgid IN RAW,
358 PRAGMA SUPPLEMENTAL_LOG_DATA(nonrepudiate_receiver, NONE);
355 rcver_info IN SYS.AQ$_AGENT,
356 signature OUT SYS.AQ$_SIG_PROP,
357 payload OUT "<ADT_1>");
359
360 PROCEDURE nonrepudiate_receiver(
361 queue_name IN VARCHAR2,
362 msgid IN RAW,
363 rcver_info IN SYS.AQ$_AGENT,
364 signature OUT SYS.AQ$_SIG_PROP,
365 payload OUT raw);
366 PRAGMA SUPPLEMENTAL_LOG_DATA(nonrepudiate_receiver, NONE);
367
368 PROCEDURE set_watermark(
369 wmvalue IN NUMBER);
370 PRAGMA SUPPLEMENTAL_LOG_DATA(set_watermark, AUTO);
371
372 PROCEDURE get_watermark(
373 wmvalue OUT NUMBER);
374 PRAGMA SUPPLEMENTAL_LOG_DATA(get_watermark, NONE);
375
376 -- add an alias to LDAP
377 PROCEDURE add_alias_to_ldap(
378 alias IN VARCHAR2,
379 obj_location IN VARCHAR2);
380 PRAGMA SUPPLEMENTAL_LOG_DATA(add_alias_to_ldap, NONE);
381
382 -- drop an alias from LDAP
383 PROCEDURE del_alias_from_ldap(
384 alias IN VARCHAR2);
385 PRAGMA SUPPLEMENTAL_LOG_DATA(del_alias_from_ldap, NONE);
386
387 -- AQ Authorization management procedures
388 PROCEDURE create_aq_agent (
389 agent_name IN VARCHAR2,
390 certificate_location IN VARCHAR2 DEFAULT NULL,
391 enable_http IN BOOLEAN DEFAULT FALSE,
392 enable_smtp IN BOOLEAN DEFAULT FALSE,
393 enable_anyp IN BOOLEAN DEFAULT FALSE);
394 PRAGMA SUPPLEMENTAL_LOG_DATA(create_aq_agent, AUTO);
395
396 PROCEDURE alter_aq_agent(
397 agent_name IN VARCHAR2,
398 certificate_location IN VARCHAR2 DEFAULT NULL,
399 enable_http IN BOOLEAN DEFAULT FALSE,
403
400 enable_smtp IN BOOLEAN DEFAULT FALSE,
401 enable_anyp IN BOOLEAN DEFAULT FALSE);
402 PRAGMA SUPPLEMENTAL_LOG_DATA(alter_aq_agent, AUTO);
404 PROCEDURE drop_aq_agent (
405 agent_name IN VARCHAR2 );
406 PRAGMA SUPPLEMENTAL_LOG_DATA(drop_aq_agent, AUTO);
407
408 PROCEDURE enable_db_access (
409 agent_name IN VARCHAR2,
410 db_username IN VARCHAR2 );
411 PRAGMA SUPPLEMENTAL_LOG_DATA(enable_db_access, AUTO);
412
413 PROCEDURE disable_db_access (
414 agent_name IN VARCHAR2,
415 db_username IN VARCHAR2 );
416 PRAGMA SUPPLEMENTAL_LOG_DATA(disable_db_access, AUTO);
417
418 -- enable jms types IN anydata queue tables
419 PROCEDURE enable_jms_types(
420 queue_table IN VARCHAR2);
421
422 -- add a connection string to LDAP directory
423 PROCEDURE add_connection_to_ldap(
424 connection IN VARCHAR2,
425 host IN VARCHAR2,
426 port IN BINARY_INTEGER,
427 sid IN VARCHAR2,
428 driver IN VARCHAR2 default NULL,
429 type IN BINARY_INTEGER DEFAULT
430 AQ_QUEUE_CONNECTION);
431 PRAGMA SUPPLEMENTAL_LOG_DATA(add_connection_to_ldap, NONE);
432
433 -- add a connection string to LDAP directory
434 PROCEDURE add_connection_to_ldap(
435 connection IN VARCHAR2,
436 jdbc_string IN VARCHAR2,
437 username IN VARCHAR2 default NULL,
438 password IN VARCHAR2 default NULL,
439 type IN BINARY_INTEGER DEFAULT
440 AQ_QUEUE_CONNECTION);
441 PRAGMA SUPPLEMENTAL_LOG_DATA(add_connection_to_ldap, NONE);
442
443 -- drop a connection string from LDAP directory
444 PROCEDURE del_connection_from_ldap(
445 connection IN VARCHAR2);
446 PRAGMA SUPPLEMENTAL_LOG_DATA(del_connection_from_ldap, NONE);
447
448 -- purge queue table
449 PROCEDURE purge_queue_table(
450 queue_table IN VARCHAR2,
451 purge_condition IN VARCHAR2,
452 purge_options IN aq$_purge_options_t);
453
454 -- get a sender's replay info
455 PROCEDURE get_replay_info(
456 queue_name IN VARCHAR2,
457 sender_agent IN sys.aq$_agent,
458 replay_attribute IN BINARY_INTEGER,
459 correlation OUT VARCHAR2);
460 PRAGMA SUPPLEMENTAL_LOG_DATA(get_replay_info, NONE);
461
462 -- reset sender's replay info
463 PROCEDURE reset_replay_info(
464 queue_name IN VARCHAR2,
465 sender_agent IN sys.aq$_agent,
466 replay_attribute IN BINARY_INTEGER);
467 PRAGMA SUPPLEMENTAL_LOG_DATA(reset_replay_info, NONE);
468
469 -- Add procedures to set and get minimum/maximum AQ streams pool memory
470 PROCEDURE set_min_streams_pool( value IN NUMBER);
471 PROCEDURE set_max_streams_pool( value IN NUMBER);
472
473 PROCEDURE get_min_streams_pool( value OUT NUMBER);
474 PROCEDURE get_max_streams_pool( value OUT NUMBER);
475
476 END dbms_aqadm;