1 PACKAGE dbms_xds AS
2
3 ENABLE_DYNAMIC_IS CONSTANT BINARY_INTEGER := 1;
4 ENABLE_ACLOID_COLUNM CONSTANT BINARY_INTEGER := 2;
5 ENABLE_STATIC_IS CONSTANT BINARY_INTEGER := 3;
6
7 -- Valid values for ACLMV refresh_mode
8 ACLMV_ON_DEMAND CONSTANT VARCHAR2(9) := 'ON DEMAND';
9 ACLMV_ON_COMMIT CONSTANT VARCHAR2(9) := 'ON COMMIT';
10
11 -- Type of refresh on static acl mv
12 XDS_ON_COMMIT_MV CONSTANT BINARY_INTEGER := 0;
13 XDS_ON_DEMAND_MV CONSTANT BINARY_INTEGER := 1;
14 XDS_SCHEDULED_MV CONSTANT BINARY_INTEGER := 2;
15
16 -- Type of static acl mv
17 XDS_SYSTEM_GENERATED_MV CONSTANT BINARY_INTEGER := 0;
18 XDS_USER_SPECIFIED_MV CONSTANT BINARY_INTEGER := 1;
19
20 -- Enable log based replication for this package
21 PRAGMA SUPPLEMENTAL_LOG_DATA(default, AUTO);
22
23 -- enable_xds - Enables XDS for a table
24 --
25 -- INPUT PARAMETERS
26 -- object_schema - schema owning the object, current user if NULL
27 -- object_name - name of object
28 -- enable_option - enable option
29 -- ENABLE_DYNAMIC_IS: enable XDS with dynamic instance
30 -- set support only.
31 -- ENABLE_ACLOID_COLUNM: enable XDS with dynamic instance
32 -- set support and SYS_ACLOID column avaliable
33 -- for static ACLID storage.
34 -- ENABLE_STATIC_IS: enable XDS with dynamic and static
35 -- instance set support.
36 -- NULL (default): re-enable with the current option or
37 -- ENABLE_DYNAMIC_IS if it is enabled the first time.
38 -- policy_name - Triton XDS policy name
39 -- usermv_name - user can optionally supply an ACL-MV instead of the
40 -- system generated one. If NULL, system will generate
41 -- a complete-refresh MV and use it
42
43 PROCEDURE enable_xds(object_schema IN VARCHAR2 := NULL,
44 object_name IN VARCHAR2,
45 enable_option IN BINARY_INTEGER := NULL,
46 policy_name IN VARCHAR2,
47 usermv_name IN VARCHAR2 := NULL);
48
49 ----------------------------------------------------------------------------
50
51 -- disable_xds - disable an XDS policy for a table
52 --
53 -- INPUT PARAMETERS
54 -- object_schema - schema owning the object, current user if NULL
55 -- object_name - name of object
56 PROCEDURE disable_xds(object_schema IN VARCHAR2 := NULL,
57 object_name IN VARCHAR2,
58 policy_name IN VARCHAR2 := NULL);
59
60 ----------------------------------------------------------------------------
61
62 -- drop_xds - drop an XDS policy from a table
63 --
64 -- INPUT PARAMETERS
65 -- object_schema - schema owning the object, current user if NULL
66 -- object_name - name of object
67
68 PROCEDURE drop_xds(object_schema IN VARCHAR2 := NULL,
69 object_name IN VARCHAR2,
70 policy_name IN VARCHAR2 := NULL);
71
72 ----------------------------------------------------------------------------
73
74 -- enable_olap_policy - enable OLAP policy for a table
75 --
76 -- INPUT PARAMETERS
77 -- xchema_name - schema owning the object, current user if NULL
78 -- logical_name - name of object
79 -- policy_name - name of policy
80 -- overwrite - option to overwrite existing policy
81
82 PROCEDURE enable_olap_policy(schema_nm IN VARCHAR2 := NULL,
83 logical_nm IN VARCHAR2,
84 policy_nm IN VARCHAR2,
85 overwrite IN BOOLEAN := FALSE);
86
87 ----------------------------------------------------------------------------
88
89 -- disable_olap_policy - disable OLAP policy for a table
90 --
91 -- INPUT PARAMETERS
92 -- xchema_name - schema owning the object, current user if NULL
93 -- logical_name - name of object
94
95 PROCEDURE disable_olap_policy(schema_nm IN VARCHAR2 := NULL,
96 logical_nm IN VARCHAR2);
97
98 ----------------------------------------------------------------------------
99
100 -- drop_olap_policy - drop OLAP policy from a table
101 --
102 -- INPUT PARAMETERS
103 -- xchema_name - schema owning the object, current user if NULL
104 -- logical_name - name of object
105
106 PROCEDURE drop_olap_policy(schema_nm IN VARCHAR2 := NULL,
107 logical_nm IN VARCHAR2);
108
109 ----------------------------------------------------------------------------
110
111 -- schedule_static_acl_refresh
112 -- - schedule automatic refresh of an ACLMV for a given table.
113 -- - this function will change the refresh mode of the
114 -- corresponding ACLMV to "ON DEMAND"
115 --
116 -- INPUT PARAMETERS
117 -- schema_name - schema owning the object, current user if NULL
118 -- table_name - name of object
119 -- start_date - time of first refresh to occur
120 -- repeat_interval - schedule interval
121 -- comments - comments
122
123 PROCEDURE schedule_static_acl_refresh(
124 schema_name IN VARCHAR2 := NULL,
125 table_name IN VARCHAR2,
126 start_date IN TIMESTAMP WITH TIME ZONE := NULL,
127 repeat_interval IN VARCHAR2 := NULL,
128 comments IN VARCHAR2 := NULL);
129
130 ----------------------------------------------------------------------------
131
132 -- alter_static_acl_refresh
133 -- - alter the refresh mode for a ACLMV for a given table
134 -- - this function will remove any refresh schedule for this
135 -- ACLMV (see schedule_static_acl_refresh)
136 --
137 -- INPUT PARAMETERS
138 -- schema_name - schema owning the object, current user if NULL
139 -- table_name - name of object
140 -- refresh_mode - refresh mode for internal ACLMV. 'ON DEMAND' or
141 -- 'ON COMMIT' are the only legal values
142
143 PROCEDURE alter_static_acl_refresh(schema_name IN VARCHAR2 := NULL,
144 table_name IN VARCHAR2,
145 refresh_mode IN VARCHAR2);
146
147 ----------------------------------------------------------------------------
148
149 -- purge_acl_refresh_history
150 -- - purge contents of XDS_ACL_REFRESH_STATUS view for this
151 -- table's ACLMV
152 --
153 -- INPUT PARAMETERS
154 -- object_schema - schema owning the object, current user if NULL
155 -- object_name - name of object
156 -- purge_date - date of scheduled purge - immediate if omitted
157
158 PROCEDURE purge_acl_refresh_history(object_schema IN VARCHAR2 := NULL,
159 object_name IN VARCHAR2,
160 purge_date IN DATE := NULL);
161
162 ----------------------------------------------------------------------------
163
164 -- xds$refresh_static_acl (not documented)
165 -- - scheduler callback procedure to refresh the acl-mv on a table
166 --
167 -- INPUT PARAMETERS
168 -- schema_name - schema owning the table
169 -- table_name - name of table
170 -- mview_name - name of miew
171 -- job_name - name of job
172
173 procedure xds$refresh_static_acl(
174 schema_name IN VARCHAR2,
175 table_name IN VARCHAR2,
176 mview_name IN VARCHAR2,
177 job_name IN VARCHAR2);
178
179 ----------------------------------------------------------------------------
180
181 -- set_trace_level
182 -- sets the trace level (used for debugging, not documented)
183 -- The tracing info of the scheduled mv refresh is logged
184 -- in aclmv$_reflog table, and is useful for debugging.
185 --
186 -- INPUT PARAMETERS
187 -- schema_name - schema owning the object
188 -- table_name - name of object
189 -- level - the trace level
190
191 PROCEDURE set_trace_level(schema_name IN VARCHAR2,
192 table_name IN VARCHAR2,
193 level IN NUMBER);
194
195 END dbms_xds;