DBA Data[Home] [Help]

PROCEDURE: SYS.DBMS_FEATURE_STREAMS

Source


1 PROCEDURE dbms_feature_streams
2       (feature_boolean  OUT  NUMBER,
3        aux_count        OUT  NUMBER,
4        feature_info     OUT  CLOB)
5 AS
6   num_capture                             NUMBER;
7   num_ds_capture                          NUMBER;
8   num_apply                               NUMBER;
9   num_prop                                NUMBER;
10   feature_usage                           VARCHAR2(2000);
11   total_feature_usage                     NUMBER;
12 BEGIN
13   -- initialize
14   feature_boolean                  := 0;
15   aux_count                        := 0;
16   feature_info                     := NULL;
17   num_capture                      := 0;
18   num_ds_capture                   := 0;
19   num_apply                        := 0;
20   num_prop                         := 0;
21   feature_usage                    := NULL;
22   total_feature_usage              := 0;
23 
24   select decode (count(*), 0, 0, 1) into num_capture
25      from dba_capture
26      where UPPER(purpose) NOT IN ('GOLDENGATE CAPTURE','XSTREAM_OUT');
27 
28   select decode (count(*), 0, 0, 1) into num_ds_capture
29      from dba_capture
30      where UPPER(purpose) NOT IN ('GOLDENGATE CAPTURE','XSTREAM_OUT')
31        and UPPER(capture_type) = 'DOWNSTREAM';
32 
33   select decode (count(*), 0, 0, 1) into num_apply
34      from dba_apply
35      where UPPER(purpose) NOT IN ('GOLDENGATE CAPTURE','GOLDENGATE APPLY',
36                                   'XSTREAM IN', 'XSTREAM OUT');
37 
38   select decode (count(*), 0, 0, 1) into num_prop from dba_propagation;
39 
40   total_feature_usage := num_capture + num_apply + num_prop;
41 
42   feature_usage := feature_usage ||
43         'tcap:'                  || num_capture
44       ||' dscap:'                || num_ds_capture
45       ||' app:'                  || num_apply
46       ||' prop:'                 || num_prop;
47 
48   feature_info   := to_clob(feature_usage);
49   if (total_feature_usage > 0) THEN
50       feature_boolean := 1;
51   end if;
52   if(num_capture > 0 ) THEN
53        aux_count      :=  aux_count+1;
54   end if;
55   if(num_apply > 0 ) THEN
56        aux_count      :=  aux_count+1;
57   end if;
58   if(num_prop > 0 ) THEN
59        aux_count      :=  aux_count+1;
60   end if;
61 
62 END dbms_feature_streams;