1 package WF_MAILER_PARAMETER AUTHID CURRENT_USER as
2 /* $Header: wfmlrps.pls 120.2.12000000.1 2007/01/18 13:48:54 appldev ship $ */
3 --------------------------------------------------------------------------
4 --
5 -- PRIVATE global variables
6 --
7 TYPE wf_mailer_tags_rec_type IS RECORD
8 (
9 NAME varchar2(12),
10 TAG_ID NUMBER,
11 PATTERN varchar2(200),
12 ACTION varchar2(8)
13 );
14 TYPE wf_mailer_tags_tbl_type is TABLE OF wf_mailer_tags_rec_type
15 INDEX BY BINARY_INTEGER;
16
17 TYPE wf_mailer_params_rec_type IS RECORD
18 (
19 NAME varchar2(12),
20 PARAMETER varchar2(30),
21 VALUE varchar2 (200),
22 REQUIRED varchar2(1),
23 ERRMSG varchar2(30)
24 );
25 TYPE wf_mailer_params_tbl_type is TABLE OF wf_mailer_params_rec_type
26 INDEX BY BINARY_INTEGER;
27
28 TYPE wf_mailer_tags_c IS REF CURSOR;
29
30 --------------------------------------------------------------------------
31 -- GetValue - To return a parameter value
32 -- IN
33 -- The name for the mailer instance
34 -- The name of the parameter
35 -- RETURNS
36 -- the value of the node/parameter combination. If this
37 -- does not exist, then the -WF_DEFAULT-/parameter combination
38 FUNCTION GetValue(pName IN VARCHAR2, pParam IN VARCHAR2) RETURN VARCHAR2;
39
40 -- GetValue - To return a parameter value where the parameter
41 -- value can be overridden by a message attribute.
42 -- IN
43 -- Notification ID
44 -- The name for the mailer instance
45 -- The name of the parameter
46 -- RETURNS
47 -- the value of the node/parameter combination. If this
48 -- does not exist, then the -WF_DEFAULT-/parameter combination
49 -- Where the value is in extended notation, then the NID is checked
50 -- for the availablity of the message attribute.
51 FUNCTION GetValue(pNID IN NUMBER, pName IN VARCHAR2, pParam IN VARCHAR2)
52 RETURN VARCHAR2;
53
54 -- GetValues - To return a PL/SQL table of parameters
55 -- IN
56 -- The name for the mailer instance
57 -- OUT
58 -- PL/SQL table of the parameters for the speicified mailer name.
59 PROCEDURE GetValues(pName IN VARCHAR2,
60 pParams IN OUT NOCOPY wf_mailer_params_tbl_type);
61
62 -- GetValues - To return a PL/SQL table of parameters
63 -- IN
64 -- The name for the mailer instance
65 -- OUT
66 -- Series of parameters and their values
67 -- NOTE
68 -- This overoaded from of GetValues is provided for thin
69 -- java clients.
70 PROCEDURE GetValues(pName IN VARCHAR2,
71 pParam01 OUT NOCOPY VARCHAR2,
72 pValue01 OUT NOCOPY VARCHAR2,
73 pParam02 OUT NOCOPY VARCHAR2,
74 pValue02 OUT NOCOPY VARCHAR2,
75 pParam03 OUT NOCOPY VARCHAR2,
76 pValue03 OUT NOCOPY VARCHAR2,
77 pParam04 OUT NOCOPY VARCHAR2,
78 pValue04 OUT NOCOPY VARCHAR2,
79 pParam05 OUT NOCOPY VARCHAR2,
80 pValue05 OUT NOCOPY VARCHAR2,
81 pParam06 OUT NOCOPY VARCHAR2,
82 pValue06 OUT NOCOPY VARCHAR2,
83 pParam07 OUT NOCOPY VARCHAR2,
84 pValue07 OUT NOCOPY VARCHAR2,
85 pParam08 OUT NOCOPY VARCHAR2,
86 pValue08 OUT NOCOPY VARCHAR2,
87 pParam09 OUT NOCOPY VARCHAR2,
88 pValue09 OUT NOCOPY VARCHAR2,
89 pParam10 OUT NOCOPY VARCHAR2,
90 pValue10 OUT NOCOPY VARCHAR2,
91 pParam11 OUT NOCOPY VARCHAR2,
92 pValue11 OUT NOCOPY VARCHAR2,
93 pParam12 OUT NOCOPY VARCHAR2,
94 pValue12 OUT NOCOPY VARCHAR2,
95 pParam13 OUT NOCOPY VARCHAR2,
96 pValue13 OUT NOCOPY VARCHAR2,
97 pParam14 OUT NOCOPY VARCHAR2,
98 pValue14 OUT NOCOPY VARCHAR2,
99 pParam15 OUT NOCOPY VARCHAR2,
100 pValue15 OUT NOCOPY VARCHAR2,
101 pParam16 OUT NOCOPY VARCHAR2,
102 pValue16 OUT NOCOPY VARCHAR2,
103 pParam17 OUT NOCOPY VARCHAR2,
104 pValue17 OUT NOCOPY VARCHAR2,
105 pParam18 OUT NOCOPY VARCHAR2,
106 pValue18 OUT NOCOPY VARCHAR2,
107 pParam19 OUT NOCOPY VARCHAR2,
108 pValue19 OUT NOCOPY VARCHAR2,
109 pParam20 OUT NOCOPY VARCHAR2,
110 pValue20 OUT NOCOPY VARCHAR2,
111 pParam21 OUT NOCOPY VARCHAR2,
112 pValue21 OUT NOCOPY VARCHAR2,
113 pParam22 OUT NOCOPY VARCHAR2,
114 pValue22 OUT NOCOPY VARCHAR2,
115 pParam23 OUT NOCOPY VARCHAR2,
116 pValue23 OUT NOCOPY VARCHAR2,
117 pParam24 OUT NOCOPY VARCHAR2,
118 pValue24 OUT NOCOPY VARCHAR2,
119 pParam25 OUT NOCOPY VARCHAR2,
120 pValue25 OUT NOCOPY VARCHAR2,
121 pParam26 OUT NOCOPY VARCHAR2,
122 pValue26 OUT NOCOPY VARCHAR2,
123 pParam27 OUT NOCOPY VARCHAR2,
124 pValue27 OUT NOCOPY VARCHAR2,
125 pParam28 OUT NOCOPY VARCHAR2,
126 pValue28 OUT NOCOPY VARCHAR2,
127 pParam29 OUT NOCOPY VARCHAR2,
128 pValue29 OUT NOCOPY VARCHAR2,
129 pParam30 OUT NOCOPY VARCHAR2,
130 pValue30 OUT NOCOPY VARCHAR2,
131 pParam31 OUT NOCOPY VARCHAR2,
132 pValue31 OUT NOCOPY VARCHAR2,
133 pParam32 OUT NOCOPY VARCHAR2,
134 pValue32 OUT NOCOPY VARCHAR2,
135 pParam33 OUT NOCOPY VARCHAR2,
136 pValue33 OUT NOCOPY VARCHAR2,
137 pParam34 OUT NOCOPY VARCHAR2,
138 pValue34 OUT NOCOPY VARCHAR2,
139 pParam35 OUT NOCOPY VARCHAR2,
140 pValue35 OUT NOCOPY VARCHAR2,
141 pParam36 OUT NOCOPY VARCHAR2,
142 pValue36 OUT NOCOPY VARCHAR2,
143 pParam37 OUT NOCOPY VARCHAR2,
144 pValue37 OUT NOCOPY VARCHAR2,
145 pParam38 OUT NOCOPY VARCHAR2,
146 pValue38 OUT NOCOPY VARCHAR2,
147 pParam39 OUT NOCOPY VARCHAR2,
148 pValue39 OUT NOCOPY VARCHAR2,
149 pParam40 OUT NOCOPY VARCHAR2,
150 pValue40 OUT NOCOPY VARCHAR2
151 );
152
153 -- PRIVATE
154 -- PutParameter - To insert a new parameter. For use by the
155 -- loader.
156 PROCEDURE PutParameter(pName IN VARCHAR2, pParameter IN VARCHAR2,
157 pValue IN VARCHAR2, pRequired IN VARCHAR2,
158 pCB IN VARCHAR2, pAllowReload IN VARCHAR2);
159
160 -- PUBLIC
161 -- PutValue - Assign a value to the Node/Parameter combination
162 -- IN
163 -- Name for the mailer instance
164 -- Name of the parameter
165 -- The value to set the parameter to.
166 -- Return message
167 PROCEDURE PutValue(pName IN VARCHAR2, pParam IN VARCHAR2,
168 pvalue IN VARCHAR2,
169 pResult IN OUT NOCOPY VARCHAR2);
170
171 -- PUBLIC
172 -- PutValues - Assign a PL/SQL table of parameters value to the Parameter
173 -- table
174 -- IN
175 -- Name for the mailer instance
176 -- PL/SQL table of parameter values.
177 PROCEDURE PutValues(pName IN VARCHAR2,
178 pParams IN OUT NOCOPY wf_mailer_params_tbl_type);
179
180 -- PutValues - Assign a PL/SQL table of parameters value to the Parameter
181 -- table
182 -- IN
183 -- Name for the mailer instance
184 -- PL/SQL table of parameter values.
185 -- This overoaded from of PutValues is provided for thin
186 -- java clients.
187 PROCEDURE PutValues(pName IN VARCHAR2,
188 pFlag OUT NOCOPY VARCHAR2,
189 pParam01 IN OUT NOCOPY VARCHAR2,
190 pValue01 IN OUT NOCOPY VARCHAR2, pResult01 OUT VARCHAR2,
191 pParam02 IN OUT NOCOPY VARCHAR2,
192 pValue02 IN OUT NOCOPY VARCHAR2, pResult02 OUT VARCHAR2,
193 pParam03 IN OUT NOCOPY VARCHAR2,
194 pValue03 IN OUT NOCOPY VARCHAR2, pResult03 OUT VARCHAR2,
195 pParam04 IN OUT NOCOPY VARCHAR2,
196 pValue04 IN OUT NOCOPY VARCHAR2, pResult04 OUT VARCHAR2,
197 pParam05 IN OUT NOCOPY VARCHAR2,
198 pValue05 IN OUT NOCOPY VARCHAR2, pResult05 OUT VARCHAR2,
199 pParam06 IN OUT NOCOPY VARCHAR2,
200 pValue06 IN OUT NOCOPY VARCHAR2, pResult06 OUT VARCHAR2,
201 pParam07 IN OUT NOCOPY VARCHAR2,
202 pValue07 IN OUT NOCOPY VARCHAR2, pResult07 OUT VARCHAR2,
203 pParam08 IN OUT NOCOPY VARCHAR2,
204 pValue08 IN OUT NOCOPY VARCHAR2, pResult08 OUT VARCHAR2,
205 pParam09 IN OUT NOCOPY VARCHAR2,
206 pValue09 IN OUT NOCOPY VARCHAR2, pResult09 OUT VARCHAR2,
207 pParam10 IN OUT NOCOPY VARCHAR2,
208 pValue10 IN OUT NOCOPY VARCHAR2, pResult10 OUT VARCHAR2,
209 pParam11 IN OUT NOCOPY VARCHAR2,
210 pValue11 IN OUT NOCOPY VARCHAR2, pResult11 OUT VARCHAR2,
211 pParam12 IN OUT NOCOPY VARCHAR2,
212 pValue12 IN OUT NOCOPY VARCHAR2, pResult12 OUT VARCHAR2,
213 pParam13 IN OUT NOCOPY VARCHAR2,
214 pValue13 IN OUT NOCOPY VARCHAR2, pResult13 OUT VARCHAR2,
215 pParam14 IN OUT NOCOPY VARCHAR2,
216 pValue14 IN OUT NOCOPY VARCHAR2, pResult14 OUT VARCHAR2,
217 pParam15 IN OUT NOCOPY VARCHAR2,
218 pValue15 IN OUT NOCOPY VARCHAR2, pResult15 OUT VARCHAR2,
219 pParam16 IN OUT NOCOPY VARCHAR2,
220 pValue16 IN OUT NOCOPY VARCHAR2, pResult16 OUT VARCHAR2,
221 pParam17 IN OUT NOCOPY VARCHAR2,
222 pValue17 IN OUT NOCOPY VARCHAR2, pResult17 OUT VARCHAR2,
223 pParam18 IN OUT NOCOPY VARCHAR2,
224 pValue18 IN OUT NOCOPY VARCHAR2, pResult18 OUT VARCHAR2,
225 pParam19 IN OUT NOCOPY VARCHAR2,
226 pValue19 IN OUT NOCOPY VARCHAR2, pResult19 OUT VARCHAR2,
227 pParam20 IN OUT NOCOPY VARCHAR2,
228 pValue20 IN OUT NOCOPY VARCHAR2, pResult20 OUT VARCHAR2,
229 pParam21 IN OUT NOCOPY VARCHAR2,
230 pValue21 IN OUT NOCOPY VARCHAR2, pResult21 OUT VARCHAR2,
231 pParam22 IN OUT NOCOPY VARCHAR2,
232 pValue22 IN OUT NOCOPY VARCHAR2, pResult22 OUT VARCHAR2,
233 pParam23 IN OUT NOCOPY VARCHAR2,
234 pValue23 IN OUT NOCOPY VARCHAR2, pResult23 OUT VARCHAR2,
235 pParam24 IN OUT NOCOPY VARCHAR2,
236 pValue24 IN OUT NOCOPY VARCHAR2, pResult24 OUT VARCHAR2,
237 pParam25 IN OUT NOCOPY VARCHAR2,
238 pValue25 IN OUT NOCOPY VARCHAR2, pResult25 OUT VARCHAR2,
239 pParam26 IN OUT NOCOPY VARCHAR2,
240 pValue26 IN OUT NOCOPY VARCHAR2, pResult26 OUT VARCHAR2,
241 pParam27 IN OUT NOCOPY VARCHAR2,
242 pValue27 IN OUT NOCOPY VARCHAR2, pResult27 OUT VARCHAR2,
243 pParam28 IN OUT NOCOPY VARCHAR2,
244 pValue28 IN OUT NOCOPY VARCHAR2, pResult28 OUT VARCHAR2,
245 pParam29 IN OUT NOCOPY VARCHAR2,
246 pValue29 IN OUT NOCOPY VARCHAR2, pResult29 OUT VARCHAR2,
247 pParam30 IN OUT NOCOPY VARCHAR2,
248 pValue30 IN OUT NOCOPY VARCHAR2, pResult30 OUT VARCHAR2,
249 pParam31 IN OUT NOCOPY VARCHAR2,
250 pValue31 IN OUT NOCOPY VARCHAR2, pResult31 OUT VARCHAR2,
251 pParam32 IN OUT NOCOPY VARCHAR2,
252 pValue32 IN OUT NOCOPY VARCHAR2, pResult32 OUT VARCHAR2,
253 pParam33 IN OUT NOCOPY VARCHAR2,
254 pValue33 IN OUT NOCOPY VARCHAR2, pResult33 OUT VARCHAR2,
255 pParam34 IN OUT NOCOPY VARCHAR2,
256 pValue34 IN OUT NOCOPY VARCHAR2, pResult34 OUT VARCHAR2,
257 pParam35 IN OUT NOCOPY VARCHAR2,
258 pValue35 IN OUT NOCOPY VARCHAR2, pResult35 OUT VARCHAR2,
259 pParam36 IN OUT NOCOPY VARCHAR2,
260 pValue36 IN OUT NOCOPY VARCHAR2, pResult36 OUT VARCHAR2,
261 pParam37 IN OUT NOCOPY VARCHAR2,
262 pValue37 IN OUT NOCOPY VARCHAR2, pResult37 OUT VARCHAR2,
263 pParam38 IN OUT NOCOPY VARCHAR2,
264 pValue38 IN OUT NOCOPY VARCHAR2, pResult38 OUT VARCHAR2,
265 pParam39 IN OUT NOCOPY VARCHAR2,
266 pValue39 IN OUT NOCOPY VARCHAR2, pResult39 OUT VARCHAR2,
267 pParam40 IN OUT NOCOPY VARCHAR2,
268 pValue40 IN OUT NOCOPY VARCHAR2, pResult40 OUT VARCHAR2
269 );
270
271
272 -- get_mailer_tags_c - Return the REF Cursor for the list of tags
273 -- IN
274 -- Service name
275 -- RETURN
276 -- wf_mailer_tags_c type
277 FUNCTION get_mailer_tags_c(pServiceName IN VARCHAR2)
278 RETURN wf_mailer_tags_c;
279
280
281 -- GetTAGs - Return a list of tags and their actions
282 -- IN
283 -- The name for the instance
284 -- OUT
285 -- The list of tags in a PL/SQL Table of wf_mailer_tags_rec_type
286 PROCEDURE GetTAGS(pName IN VARCHAR2, pTags in out NOCOPY wf_mailer_tags_tbl_type);
287
288 -- PutTAG - Updates or inserts a new TAG reference
289 -- IN
290 -- The name for the instance
291 -- The id for the specific tag
292 -- The action to take if the pattern is matched
293 -- The pattern to match
294 PROCEDURE PutTAG(pName IN VARCHAR2, ptag_id in NUMBER, paction IN VARCHAR2,
295 ppattern IN VARCHAR2);
296
297 -- PutTAG - Updates or inserts a new TAG reference
298 -- IN
299 -- The name for the instance
300 -- The id for the specific tag
301 -- The action to take if the pattern is matched
302 -- The patter to match
303 -- The result of the put operation
304 PROCEDURE PutTAG(pName IN VARCHAR2, ptag_id in NUMBER, paction IN VARCHAR2,
305 ppattern IN VARCHAR2, pResult OUT NOCOPY VARCHAR2);
306
307 -- ValidSTR
308 -- Validate a string value. Basic rule is that it can not
309 -- be NULL;
310 -- IN
311 -- Parameter to validate
312 -- Value to validate
313 -- OUT
314 -- Result of the validatation
315 PROCEDURE ValidSTR(pParam IN VARCHAR2, pValue IN VARCHAR2,
316 pResult IN OUT NOCOPY VARCHAR2);
317
318 -- ValidINT
319 -- Validate a numeric value. Basic rule is that it can not
320 -- be NULL and must be a valid number;
321 -- IN
322 -- Parameter to validate
323 -- Value to validate
324 -- OUT
325 -- Result of the validatation
326 PROCEDURE ValidINT(pParam IN VARCHAR2, pValue IN VARCHAR2,
327 pResult IN OUT NOCOPY VARCHAR2);
328
329 -- ValidLOG
330 -- Validate a boolean value. Basic rule is that it can not
331 -- be YES/NO
332 -- IN
333 -- Parameter to validate
334 -- Value to validate
335 -- OUT
336 -- Result of the validatation
337 PROCEDURE ValidLOG(pParam IN VARCHAR2, pValue IN VARCHAR2,
338 pResult IN OUT NOCOPY VARCHAR2);
339
340
341 -- Validate a protocol
342 -- IN
343 -- Parameter to validate
344 -- Value to validate
345 -- OUT
346 -- Result of the validatation
347 PROCEDURE ValidPROTOCOL(pParam IN VARCHAR2, pValue IN VARCHAR2,
348 pResult IN OUT NOCOPY VARCHAR2);
349
350 -- ValidSENDARG
351 -- Validate the sendmail arguments
352 -- IN
353 -- Parameter to validate
354 -- Value to validate
355 -- OUT
356 -- Result of the validatation
357 PROCEDURE ValidSENDARG(pParam IN VARCHAR2, pValue IN VARCHAR2,
358 pResult IN OUT NOCOPY VARCHAR2);
359
360 FUNCTION GetValueForCorr (pCorrId IN VARCHAR2, pName IN VARCHAR2) RETURN VARCHAR2;
361
362
363 -- GetValueForCorr - To return a parameter value based on the
364 -- content of the message attribute of with the
365 -- name pattern of #WFM_<PARAM>
366 -- IN
367 -- The Notification ID
368 -- The correlation id for the mailer instance
369 -- The name of the parameter
370 -- RETURNS
371 -- the value of the parameter.
372 FUNCTION GetValueForCorr(pNid IN VARCHAR2, pCorrId IN VARCHAR2,
373 pName IN VARCHAR2,
374 pInAttr OUT NOCOPY VARCHAR2) RETURN VARCHAR2;
375
376
377 end WF_MAILER_PARAMETER;