DBA Data[Home] [Help]

PACKAGE BODY: APPS.AS_SEC_CONTEXT

Source


1 PACKAGE BODY AS_SEC_CONTEXT as
2 /* $Header: asseccxb.pls 115.1 2002/12/05 21:28:01 karaghav ship $ */
3 
4    PROCEDURE set_attr_values
5      (p_attr_names IN VARCHAR2_TABLE_100,
6       p_attr_vals IN VARCHAR2_TABLE_100
7      )
8    IS
9     newrec sec_attr_record;
10     BEGIN
11         IF p_attr_names IS NOT null THEN
12           IF p_attr_vals IS NOT null THEN
13              IF p_attr_vals.COUNT = p_attr_names.COUNT THEN
14                FOR i IN p_attr_names.FIRST .. p_attr_names.LAST
15                  LOOP
16                   newrec.sec_attr_name := p_attr_names(i);
17                   newrec.sec_attr_value := p_attr_vals(i);
18                   IF g_sec_attr_table IS NULL THEN
19                      g_sec_attr_table := sec_attr_tbl(newrec);
20                   ELSE
21                      g_sec_Attr_table.EXTEND;
22                      g_sec_attr_table(g_sec_attr_table.COUNT) := newrec;
23                   END IF;
24                 END LOOP;
25               END IF;
26            END IF;
27          END IF;
28     END;
29 
30    PROCEDURE set_attr_value(
31              p_attr_name IN VARCHAR2,
32              p_attr_value IN VARCHAR2)
33        IS
34        newrec sec_attr_record;
35        BEGIN
36          if p_attr_name IS NOT NULL THEN
37             if p_attr_value IS NOT NULL THEN
38               newrec.sec_attr_name := p_attr_name;
39               newrec.sec_attr_value := p_attr_value;
40               if g_sec_attr_table IS NULL THEN
41                 g_sec_attr_table := sec_attr_tbl(newrec);
42               else
43                 g_sec_attr_table.EXTEND;
44                 g_sec_attr_table(g_sec_attr_table.COUNT) := newrec;
45               end if;
46             end if;
47           end if;
48         END;
49 
50    FUNCTION get_attr_value
51      ( p_attr_name VARCHAR2) RETURN VARCHAR2
52      IS
53            BEGIN
54          IF g_sec_attr_table IS NULL THEN
55            RETURN NULL;
56          END IF;
57          IF g_sec_attr_table.COUNT = 0 THEN
58             RETURN NULL;
59          ELSE
60             FOR i IN g_sec_attr_table.FIRST .. g_sec_attr_table.LAST
61               LOOP
62                  IF g_sec_attr_table(i).sec_attr_name = p_attr_name THEN
63                     RETURN g_sec_attr_table(i).sec_attr_value;
64                  END IF;
65               END LOOP;
66             RETURN NULL;
67          END IF;
68        END;
69 
70    PROCEDURE INIT
71    IS
72      BEGIN
73         g_sec_attr_table := NULL;
74      END;
75 
76 END;