DBA Data[Home] [Help]

PACKAGE BODY: SYS.DBMS_XMLQUERY

Source


1 PACKAGE BODY DBMS_XMLQUERY AS
2 
3   procedure getVersion IS
4   begin
5     DBMS_OUTPUT.PUT_LINE(CHR(0));
6     DBMS_OUTPUT.PUT_LINE(CHR(0));
7     DBMS_OUTPUT.PUT_LINE('XSU Version                ' ||
8                          'Owner         Timestamp');
9     DBMS_OUTPUT.PUT_LINE('-------------------------- ' ||
10                          '------------- ----------------');
11 
12     FOR i IN (select object_name, owner, timestamp
13               from all_objects
14               where object_name like '%XSU%VERSION%')
15     LOOP
16       DBMS_OUTPUT.PUT_LINE(RPAD(i.object_name,27) ||
17                            RPAD(i.owner,14) || SUBSTR(i.timestamp,1,16));
18     END LOOP;
19       DBMS_OUTPUT.NEW_LINE;
20   end getVersion;
21 
22   FUNCTION newContext(sqlQuery IN VARCHAR2) return ctxType
23   as LANGUAGE JAVA NAME
24    'oracle.xml.sql.query.OracleXMLStaticQuery.newContext(java.lang.String) return int';
25 
26   FUNCTION newContext(sqlQuery IN CLOB) return ctxType
27   as LANGUAGE JAVA NAME
28    'oracle.xml.sql.query.OracleXMLStaticQuery.newContext(oracle.sql.CLOB) return int';
29 
30   PROCEDURE closeContext(ctxHdl IN ctxType)
31   as LANGUAGE JAVA NAME
32    'oracle.xml.sql.query.OracleXMLStaticQuery.closeContext(int)';
33 
34   PROCEDURE setRowsetTag(ctxHdl IN ctxType, tag IN VARCHAR2)
35   as LANGUAGE JAVA NAME
36    'oracle.xml.sql.query.OracleXMLStaticQuery.setRowsetTag(int, java.lang.String)';
37 
38   PROCEDURE setRowTag(ctxHdl IN ctxType, tag IN VARCHAR2)
39   as LANGUAGE JAVA NAME
40    'oracle.xml.sql.query.OracleXMLStaticQuery.setRowTag(int, java.lang.String)';
41 
42   PROCEDURE setErrorTag(ctxHdl IN ctxType, tag IN VARCHAR2)
43   as LANGUAGE JAVA NAME
44    'oracle.xml.sql.query.OracleXMLStaticQuery.setErrorTag(int, java.lang.String)';
45 
46   PROCEDURE setRowIdAttrName(ctxHdl IN ctxType, attrName IN VARCHAR2)
47   as LANGUAGE JAVA NAME
48    'oracle.xml.sql.query.OracleXMLStaticQuery.setRowIdAttrName(int, java.lang.String)';
49 
50   PROCEDURE setRowIdAttrValue(ctxHdl IN ctxType, colName IN VARCHAR2)
51   as LANGUAGE JAVA NAME
52    'oracle.xml.sql.query.OracleXMLStaticQuery.setRowIdAttrValue(int, java.lang.String)';
53 
54 
55   PROCEDURE setCollIdAttrName(ctxHdl IN ctxType, attrName IN VARCHAR2)
56   as LANGUAGE JAVA NAME
57    'oracle.xml.sql.query.OracleXMLStaticQuery.setCollIdAttrName(int, java.lang.String)';
58 
59 
60   PROCEDURE p_useTypeForCollElemTag(ctxHdl IN ctxType, flag IN NUMBER)
61   as LANGUAGE JAVA NAME
62    'oracle.xml.sql.query.OracleXMLStaticQuery.useTypeForCollElemTag(int,byte)';
63 
64   PROCEDURE useTypeForCollElemTag(ctxHdl IN ctxType, flag IN BOOLEAN := true) is
65   begin
66     if flag = true then
67       p_useTypeForCollElemTag(ctxHdl, 1);
68     else
69       p_useTypeForCollElemTag(ctxHdl, 0);
70     end if;
71   end useTypeForCollElemTag;
72 
73 
74   PROCEDURE p_useNullAttrInd(ctxHdl IN ctxType, flag IN NUMBER)
75   as LANGUAGE JAVA NAME
76    'oracle.xml.sql.query.OracleXMLStaticQuery.useNullAttributeIndicator(int, byte)';
77 
78   PROCEDURE useNullAttributeIndicator(ctxHdl IN ctxType, flag IN BOOLEAN := true) is
79   begin
80     if flag = true then
81       p_useNullAttrInd(ctxHdl, 1);
82     else
83       p_useNullAttrInd(ctxHdl, 0);
84     end if;
85   end useNullAttributeIndicator;
86 
87   PROCEDURE p_setSQLToXMLNameEsc(ctxHdl IN ctxType, flag IN NUMBER)
88   as LANGUAGE JAVA NAME
89    'oracle.xml.sql.query.OracleXMLStaticQuery.setSQLToXMLNameEscaping(int, byte)';
90 
91   PROCEDURE setSQLToXMLNameEscaping(ctxHdl IN ctxType, flag IN BOOLEAN := true) is
92   begin
93     if flag = true then
94       p_setSQLToXMLNameEsc(ctxHdl, 1);
95     else
96       p_setSQLToXMLNameEsc(ctxHdl, 0);
97     end if;
98   end setSQLToXMLNameEscaping;
99 
100   PROCEDURE setTagCase(ctxHdl IN ctxType, tCase IN NUMBER)
101   as LANGUAGE JAVA NAME
102    'oracle.xml.sql.query.OracleXMLStaticQuery.setTagCase(int, byte)';
103 
104 
105   PROCEDURE setDateFormat(ctxHdl IN ctxType, mask IN VARCHAR2)
106   as LANGUAGE JAVA NAME
107    'oracle.xml.sql.query.OracleXMLStaticQuery.setDateFormat(int, java.lang.String)';
108 
109 
110   PROCEDURE setMaxRows (ctxHdl IN ctxType, rows IN NUMBER)
111   as LANGUAGE JAVA NAME
112    'oracle.xml.sql.query.OracleXMLStaticQuery.setMaxRows(int, int)';
113 
114 
115   PROCEDURE setSkipRows(ctxHdl IN ctxType, rows IN NUMBER)
116   as LANGUAGE JAVA NAME
117    'oracle.xml.sql.query.OracleXMLStaticQuery.setSkipRows(int, int)';
118 
119 
120   PROCEDURE p_setStylesheetHeader(ctxHdl IN ctxType, uri IN VARCHAR2, type IN VARCHAR2)
121   as LANGUAGE JAVA NAME
122    'oracle.xml.sql.query.OracleXMLStaticQuery.setStylesheetHeader(int, java.lang.String, java.lang.String)';
123 
124   PROCEDURE setStylesheetHeader(ctxHdl IN ctxType, uri IN VARCHAR2, type IN VARCHAR2 := 'text/xsl') is
125   begin
126     p_setStylesheetHeader(ctxHdl, uri, type);
127   end setStylesheetHeader;
128 
129 
130   PROCEDURE p_setXSLT(ctxHdl IN ctxType, uri IN VARCHAR2, ref IN VARCHAR2)
131   as LANGUAGE JAVA NAME
132    'oracle.xml.sql.query.OracleXMLStaticQuery.setXSLT(int, java.lang.String, java.lang.String)';
133 
134   PROCEDURE setXSLT(ctxHdl IN ctxType, uri IN VARCHAR2, ref IN VARCHAR2 := null) IS
135   begin
136     p_setXSLT(ctxHdl, uri, ref);
137   end setXSLT;
138 
139   PROCEDURE p_setXSLT(ctxHdl IN ctxType, stylesheet IN CLOB, ref IN VARCHAR2)
140   as LANGUAGE JAVA NAME
141    'oracle.xml.sql.query.OracleXMLStaticQuery.setXSLT(int, oracle.sql.CLOB, java.lang.String)';
142 
143   PROCEDURE setXSLT(ctxHdl IN ctxType, stylesheet IN CLOB, ref IN VARCHAR2 := null) IS
144   begin
145     p_setXSLT(ctxHdl, stylesheet, ref);
146   end setXSLT;
147 
148   PROCEDURE setXSLTParam(ctxHdl IN ctxType, name IN VARCHAR2,value IN VARCHAR2)
149   as LANGUAGE JAVA NAME
150    'oracle.xml.sql.query.OracleXMLStaticQuery.setXSLTParam(int, java.lang.String, java.lang.String)';
151 
152   PROCEDURE removeXSLTParam(ctxHdl IN ctxType, name IN VARCHAR2)
153   as LANGUAGE JAVA NAME
154    'oracle.xml.sql.query.OracleXMLStaticQuery.removeXSLTParam(int, java.lang.String)';
155 
156   PROCEDURE p_setEncodingTag(ctxHdl IN ctxType, enc IN VARCHAR2)
157   as LANGUAGE JAVA NAME
158    'oracle.xml.sql.query.OracleXMLStaticQuery.setEncodingTag(int, java.lang.String)';
159 
160   PROCEDURE setEncodingTag(ctxHdl IN ctxType,enc IN VARCHAR2 := DB_ENCODING) is
161   begin
162     p_setEncodingTag(ctxHdl, enc);
163   end setEncodingTag;
164 
165   PROCEDURE setBindValue(ctxHdl IN ctxType, bindName IN VARCHAR2, bindValue IN VARCHAR2)
166   as LANGUAGE JAVA NAME
167    'oracle.xml.sql.query.OracleXMLStaticQuery.setBindValue(int, java.lang.String, java.lang.String)';
168 
169 
170   PROCEDURE clearBindValues(ctxHdl IN ctxType)
171   as LANGUAGE JAVA NAME
172    'oracle.xml.sql.query.OracleXMLStaticQuery.clearBindValues(int)';
173 
174   PROCEDURE p_setMetaHeader(ctxHdl IN ctxType, header IN CLOB)
175   as LANGUAGE JAVA NAME
176    'oracle.xml.sql.query.OracleXMLStaticQuery.setMetaHeader(int, oracle.sql.CLOB)';
177 
178   PROCEDURE setMetaHeader(ctxHdl IN ctxType, header IN CLOB := null) IS
179   begin
180     p_setMetaHeader(ctxHdl, header);
181   end setMetaHeader;
182 
183   PROCEDURE p_setDataHeader(ctxHdl IN ctxType, header IN CLOB, tag IN VARCHAR2)
184   as LANGUAGE JAVA NAME
185    'oracle.xml.sql.query.OracleXMLStaticQuery.setDataHeader(int, oracle.sql.CLOB, java.lang.String)';
186 
187   PROCEDURE setDataHeader(ctxHdl IN ctxType, header IN CLOB := null, tag IN VARCHAR2 := null) is
188   begin
189     p_setDataHeader(ctxHdl, header, tag);
190   end setDataHeader;
191 
192 
193   PROCEDURE p_setRaiseException(ctxHdl IN ctxType, flag IN NUMBER)
194   as LANGUAGE JAVA NAME
195    'oracle.xml.sql.query.OracleXMLStaticQuery.setRaiseException(int, byte)';
196 
197   PROCEDURE setRaiseException(ctxHdl IN ctxType, flag IN BOOLEAN := true) is
198   begin
199     if flag = true then
200       p_setRaiseException(ctxHdl, 1);
201     else
202       p_setRaiseException(ctxHdl, 0);
203     end if;
204   end setRaiseException;
205 
206   PROCEDURE p_setRaiseNoRowsExc(ctxHdl IN ctxType, flag IN NUMBER)
207   as LANGUAGE JAVA NAME
208    'oracle.xml.sql.query.OracleXMLStaticQuery.setRaiseNoRowsException(int, byte)';
209 
210   PROCEDURE setRaiseNoRowsException(ctxHdl IN ctxType, flag IN BOOLEAN := true) is
211   begin
212     if flag = true then
213       p_setRaiseNoRowsExc(ctxHdl, 1);
214     else
215       p_setRaiseNoRowsExc(ctxHdl, 0);
216     end if;
217   end setRaiseNoRowsException;
218 
219   PROCEDURE p_propOrigExc(ctxHdl IN ctxType, flag IN NUMBER)
220   as LANGUAGE JAVA NAME
221    'oracle.xml.sql.query.OracleXMLStaticQuery.propagateOriginalException(int, byte)';
222 
223   PROCEDURE propagateOriginalException(ctxHdl IN ctxType, flag IN BOOLEAN := true) is
224   begin
225     if flag = true then
226       p_propOrigExc(ctxHdl, 1);
227     else
228       p_propOrigExc(ctxHdl, 0);
229     end if;
230   end propagateOriginalException;
231 
232   PROCEDURE getExceptionContent(ctxHdl IN ctxType, errNo OUT NUMBER, errMsg OUT VARCHAR2)
233   as LANGUAGE JAVA NAME
234    'oracle.xml.sql.query.OracleXMLStaticQuery.getExceptionContent(int, int[], java.lang.String[])';
235 
236   PROCEDURE p_setStrictLegalXMLCharCheck(ctxHdl IN ctxType, flag IN NUMBER)
237   as LANGUAGE JAVA NAME
238    'oracle.xml.sql.query.OracleXMLStaticQuery.setStrictLegalXMLCharCheck(int, byte)';
239 
240   PROCEDURE setStrictLegalXMLCharCheck(ctxHdl IN ctxType, flag IN BOOLEAN := true) is
241   begin
242     if flag = true then
243       p_setStrictLegalXMLCharCheck(ctxHdl, 1);
244     else
245       p_setStrictLegalXMLCharCheck(ctxHdl, 0);
246     end if;
247   end setStrictLegalXMLCharCheck;
248 
249   ------------------- generation ----------------------------------------------
250   FUNCTION getDTD(ctxHdl IN ctxType, withVer IN BOOLEAN := false) RETURN CLOB IS
251     clb CLOB;
252   begin
253     dbms_lob.createtemporary(clb, true, DBMS_LOB.SESSION);
254     getDTD(ctxHdl, clb, withVer);
255     return clb;
256   end getDTD;
257 
258   PROCEDURE p_getDTD(ctxHdl IN ctxType, xDoc IN CLOB, withVer IN NUMBER)
259   as LANGUAGE JAVA NAME
260    'oracle.xml.sql.query.OracleXMLStaticQuery.getDTD(int, oracle.sql.CLOB, byte)';
261 
262   PROCEDURE getDTD(ctxHdl IN ctxType, xDoc IN CLOB, withVer IN BOOLEAN := false) IS
263   begin
264     if withVer = true then
265       p_getDTD(ctxHdl, xDoc, 1);
266     else
267       p_getDTD(ctxHdl, xDoc, 0);
268     end if;
269   end getDTD;
270 
271 
272   FUNCTION getXML(ctxHdl IN ctxType, metaType IN NUMBER := NONE) RETURN CLOB IS
273     clb CLOB;
274   begin
275     dbms_lob.createtemporary(clb, true, DBMS_LOB.SESSION);
276     getXML(ctxHdl, clb, metaType);
277     return clb;
278   end getXML;
279 
280   PROCEDURE p_getXML(ctxHdl IN ctxType, xDoc IN CLOB, metaType IN NUMBER)
281   as LANGUAGE JAVA NAME
282    'oracle.xml.sql.query.OracleXMLStaticQuery.getXML(int, oracle.sql.CLOB, byte)';
283 
284   PROCEDURE getXML(ctxHdl IN ctxType, xDoc IN CLOB, metaType IN NUMBER := NONE) IS
285   begin
286     p_getXML(ctxHdl, xDoc, metaType);
287   end getXML;
288 
289   FUNCTION getXML(sqlQuery IN VARCHAR2, metaType IN NUMBER := NONE) RETURN CLOB IS
290     ctx    ctxType;
291     clb    CLOB;
292   begin
293     ctx := newContext(sqlQuery);
294     clb := getXML(ctx, metaType);
295     closeContext(ctx);
299   FUNCTION getXML(sqlQuery IN CLOB, metaType IN NUMBER := NONE) RETURN CLOB IS
296     return clb;
297   end getXML;
298 
300     ctx    ctxType;
301     clb    CLOB;
302   begin
303     ctx := newContext(sqlQuery);
304     clb := getXML(ctx, metaType);
305     closeContext(ctx);
306     return clb;
307   end getXML;
308 
309 
310   PROCEDURE resetResultSet(ctxHdl IN ctxType)
311   as LANGUAGE JAVA NAME
312    'oracle.xml.sql.query.OracleXMLStaticQuery.resetResultSet(int)';
313 
314 
315   FUNCTION getNumRowsProcessed(ctxHdl IN ctxType) RETURN NUMBER
316   as LANGUAGE JAVA NAME
317    'oracle.xml.sql.query.OracleXMLStaticQuery.getNumRowsProcessed(int) return long';
318 
319 
320 END DBMS_XMLQUERY;