DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSE_DEBUG_PUB

Source


1 PACKAGE BODY cse_debug_pub AS
2 /* $Header: CSEPDBGB.pls 120.3 2006/08/16 20:21:33 brmanesh noship $  */
3 
4   l_debug varchar2(1) := nvl(fnd_profile.value('cse_debug_option'),'N');
5 
6   FUNCTION set_debug_file(p_file in varchar2 default null) RETURN varchar2 IS
7     rtn_val    varchar2(100);
8     l_cse      varchar2(3) := 'cse';
9     l_sysdate  date := sysdate;
10   BEGIN
11 
12     IF g_dir is null THEN
13       g_dir  := nvl(fnd_profile.value('cse_debug_log_directory'), '/tmp');
14     END IF;
15 
16     IF g_file IS null THEN
17       IF p_file IS null THEN
18         g_file := l_cse||'.'||to_char(l_sysdate,'DDMONYYYY')||'.dbg';
19       ELSE
20         g_file := P_FILE;
21       END IF;
22     END IF;
23 
24     rtn_val := g_dir||'/'|| g_file;
25     return(rtn_val);
26 
27   EXCEPTION
28     WHEN others THEN
29       debug_off;
30       rtn_val := null;
31       return(rtn_val);
32   END set_debug_file;
33 
34 
35   PROCEDURE debug_on IS
36     l_file  varchar2(250);
37   BEGIN
38     IF g_file is null THEN
39       l_file := set_debug_file;
40     END IF;
41     g_file_ptr := utl_file.fopen(g_dir, g_file, 'a');
42     cse_debug_pub.g_debug := TRUE;
43   EXCEPTION
44     WHEN others THEN
45       null;
46   END debug_on;
47 
48 
49   PROCEDURE debug_off IS
50   BEGIN
51     cse_debug_pub.g_debug := FALSE;
52     utl_file.fclose(g_file_ptr);
53   EXCEPTION
54     WHEN others THEN
55       null;
56   END debug_off;
57 
58 
59   FUNCTION isdebugon RETURN boolean IS
60   BEGIN
61     RETURN(CSE_DEBUG_PUB.G_DEBUG);
62   END isdebugon;
63 
64 
65   PROCEDURE set_debug_level(p_debug_level in number ) IS
66   BEGIN
67     IF p_debug_level = G_BASIC THEN
68       g_debug_level := G_BASIC;
69     ELSE
70       g_debug_level := G_DETAILED;
71     END IF;
72   END set_debug_level;
73 
74 
75   PROCEDURE add(debug_msg in Varchar2, debug_level in Number ) IS
76   BEGIN
77     IF l_debug = 'Y' THEN
78       debug_on;
79       IF (isdebugon) THEN
80         IF g_file IS not null THEN
81           IF (g_debug_level >= debug_level) THEN
82             utl_file.put_line(g_file_ptr, debug_msg);
83             utl_file.fflush(g_file_ptr);
84           END IF;
85         END IF; -- file
86       END IF; -- debug on
87       debug_off;
88     END IF;
89   EXCEPTION
90     WHEN others THEN
91       debug_off; -- Internal exception turn the debug off
92   END add; -- Add
93 
94 END cse_debug_pub;