Skip to content

Commit 640d2c0

Browse files
committed
fix installer for filters. split synonyms to own file
1 parent 4f04f60 commit 640d2c0

File tree

8 files changed

+175
-82
lines changed

8 files changed

+175
-82
lines changed

src/Appender/Appender.type.plb

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
create or replace
2+
TYPE BODY Appender
3+
as
4+
member function getName return varchar2
5+
is
6+
begin
7+
return m_name;
8+
end;
9+
10+
member procedure append(event LogEvent)
11+
is
12+
begin
13+
null;
14+
end;
15+
16+
member function getLayout return Layout
17+
is
18+
begin
19+
return m_layout;
20+
end;
21+
22+
member function toString return varchar2
23+
is
24+
begin
25+
return 'Appender('||m_name||',...)';
26+
end;
27+
28+
map member function Compare return varchar2
29+
is
30+
begin
31+
return toString();
32+
end;
33+
34+
constructor function Appender(name VARCHAR2, filter Filter, layout Layout,ignoreExceptions boolean ) return self as result
35+
is
36+
begin
37+
m_name := name;
38+
m_filter := filter;
39+
m_layout := layout;
40+
return;
41+
end;
42+
43+
44+
45+
member procedure addFilter(Filter filter)
46+
IS BEGIN
47+
if self.m_filter IS NULL THEN
48+
self.m_filter := filter;
49+
ELSIF self.m_filter is of (CompositeFilter) THEN
50+
null;-- treat(self.m_filter as CompositeFilter).addFilter(filter);
51+
ELSE
52+
NULL;
53+
--final Filter[] filters = new Filter[] {self.filter, filter};
54+
--self.filter = CompositeFilter.createFilters(filters);
55+
END IF;
56+
END;
57+
58+
/**
59+
* Remove a Filter.
60+
* @param filter The Filter to remove.
61+
*/
62+
member procedure removeFilter(Filter filter)
63+
IS BEGIN
64+
if (self.m_filter = filter) THEN
65+
self.m_filter := null;
66+
elsif (filter is of (CompositeFilter)) then
67+
--CompositeFilter composite = (CompositeFilter) filter;
68+
--composite = composite.removeFilter(filter);
69+
--if (composite.size() > 1) {
70+
--self.filter = composite;
71+
--} else if (composite.size() == 1) {
72+
--final Iterator<Filter> iter = composite.iterator();
73+
--self.filter = iter.next();
74+
--} else {
75+
--self.filter = null;
76+
--}
77+
null;
78+
end if;
79+
END;
80+
81+
member function hasFilter return boolean
82+
is begin
83+
return m_filter IS NOT NULL;
84+
end;
85+
86+
member function isFiltered(event LogEvent) return boolean
87+
IS BEGIN
88+
return m_filter is not null AND m_filter.dofilter(event) = Result.DENY;
89+
--return filter != null && filter.filter(event) == Filter.Result.DENY;
90+
END;
91+
end;
92+
/
93+
show errors

src/Appender/Appender.type.pls

Lines changed: 0 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -36,57 +36,3 @@ not final not instantiable ;
3636
/
3737
show errors
3838

39-
40-
create or replace
41-
TYPE BODY Appender
42-
as
43-
44-
member procedure addFilter(Filter filter)
45-
IS BEGIN
46-
if self.m_filter IS NULL THEN
47-
self.m_filter := filter;
48-
ELSIF self.m_filter is of (CompositeFilter) THEN
49-
self.m_filter.addFilter(filter);
50-
ELSE
51-
NULL;
52-
--final Filter[] filters = new Filter[] {self.filter, filter};
53-
--self.filter = CompositeFilter.createFilters(filters);
54-
END IF;
55-
END;
56-
57-
/**
58-
* Remove a Filter.
59-
* @param filter The Filter to remove.
60-
*/
61-
member procedure removeFilter(Filter filter)
62-
IS BEGIN
63-
if (self.m_filter = filter) THEN
64-
self.m_filter := null;
65-
elsif (filter is of (CompositeFilter)) then
66-
--CompositeFilter composite = (CompositeFilter) filter;
67-
--composite = composite.removeFilter(filter);
68-
--if (composite.size() > 1) {
69-
--self.filter = composite;
70-
--} else if (composite.size() == 1) {
71-
--final Iterator<Filter> iter = composite.iterator();
72-
--self.filter = iter.next();
73-
--} else {
74-
--self.filter = null;
75-
--}
76-
null;
77-
end if;
78-
END;
79-
80-
member function hasFilter return boolean
81-
is begin
82-
return m_filter IS NOT NULL;
83-
end;
84-
85-
member function isFiltered(event LogEvent) return boolean
86-
IS BEGIN
87-
return m_filter is not null AND m_filter.dofilter(event) = Result.DENY;
88-
--return filter != null && filter.filter(event) == Filter.Result.DENY;
89-
END;
90-
end;
91-
/
92-
show errors

src/Appender/SMTPAppender.type.pls

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,9 @@ as
3939

4040
dolog boolean := true;
4141

42-
4342
BEGIN
44-
if isfiltered() then
45-
IF
46-
end if;
43+
--if isfiltered() then
44+
--end if;
4745
if dolog THEN
4846
dbms_output.put_line('EMAIL');
4947
send_mail(p_to => 'dsplbrun@abdn.ac.uk'

src/Core/LogImpl.pkb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,8 @@ k_appenders(k_appenders.last) := dbmsOutputAppender('dbmsoutput',null, k_layout,
112112
k_appenders.EXTEND;
113113
k_appenders(k_appenders.LAST) := TableAppender('tableoutput',NULL, NULL, FALSE);
114114

115-
k_appenders.EXTEND;
116-
k_appenders(k_appenders.LAST) := SMTPAppender('SMTPoutput',ThresholdFilter(LogLevel.ERROR,null,null), k_layout, FALSE);
115+
--k_appenders.EXTEND;
116+
--k_appenders(k_appenders.LAST) := SMTPAppender('SMTPoutput',ThresholdFilter(LogLevel.ERROR,null,null), k_layout, FALSE);
117117

118118

119119
END;

src/grants.sql

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,33 @@
11
--types
22
grant execute on log4_object to public;
33
grant execute on Logger to public;
4-
grant execute on Filter to public;
54
grant execute on Marker to public;
5+
grant execute on Result to public;
66
grant execute on LogLevel to public;
77
grant execute on GenericException to public;
8-
grant execute on DBMSOutputAppender to public;
8+
9+
grant execute on LogEvent to public;
10+
grant execute on Log4oracleLogEvent to public;
11+
12+
--layouts
913
grant execute on Layout to public;
1014
grant execute on PatternLayout to public;
15+
grant execute on SimpleLayout to public;
16+
17+
--Message
18+
grant execute on Message to public;
19+
grant execute on ObjectMessage to public;
20+
grant execute on ParameterizedMessage to public;
21+
grant execute on SimpleMessage to public;
22+
23+
--appender types
24+
grant execute on DBMSOutputAppender to public;
25+
grant execute on SMTPAppender to public;
26+
grant execute on TableAppender to public;
27+
28+
--Filters
29+
grant execute on Filter to public;
30+
grant execute on ThresholdFilter to public;
1131

1232
--tables
1333
grant select,delete on log_table to public;
@@ -18,20 +38,3 @@ grant execute on LogManager to public;
1838
grant execute on MarkerManager to public;
1939
grant execute on ThreadContext to public;
2040

21-
22-
create public synonym Logger for log4.Logger;
23-
create public synonym LogLevel for log4.Logger;
24-
create public synonym GenericException for log4.GenericException;
25-
26-
create public synonym LogManager for log4.LogManager;
27-
create public synonym MarkerManager for log4.MarkerManager;
28-
create public synonym ThreadContext for log4.ThreadContext;
29-
30-
create public synonym log_table for log4.log_table;
31-
create public synonym log_levels for log4.log_levels;
32-
33-
create public synonym DBMSOutputAppender for log4.DBMSOutputAppender ;
34-
create public synonym Layout for log4.Layout ;
35-
create public synonym PatternLayout for log4.PatternLayout ;
36-
37-

src/install.sql

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,8 +177,6 @@ prompt &line1
177177
@@Layout/Layout.pls
178178

179179

180-
@@Appender/Appender.type.pls
181-
182180
@@Core/Log4oracleLogEvent.type.pls
183181

184182
@@Core/Pattern/PatternConverter.sql
@@ -221,6 +219,12 @@ prompt &line1
221219
--logger must be last
222220
@@Core/Logger.type.pls
223221

222+
@@Core/Result.type.pls
223+
@@Core/Filter.type.pls
224+
@@Core/ThresholdFilter.type.pls
225+
@@Core/CompositeFilter.type.pls
226+
227+
@@Appender/Appender.type.pls
224228

225229
--
226230

@@ -231,6 +235,7 @@ prompt &line1
231235
@@Config/log_levels.sql
232236

233237
@@Appender/DBMSOutputAppender.type.pls
238+
@@Appender/SMTPAppender.type.pls
234239

235240
@@Appender/log_table_plain.sql
236241
@@Appender/TableAppender.type.pls
@@ -266,6 +271,7 @@ prompt &line1
266271
@@Core/LogImpl.pkb
267272
@@Core/ThreadContext.pkb
268273

274+
@@Appender/Appender.type.plb
269275

270276
@@Layout/LayoutBody.pls
271277
@@Layout/PatternLayoutBody.pls

src/synonyms.sql

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
--types
2+
create or replace public synonym log4_object for log4.log4_object;
3+
create or replace public synonym Logger for log4.Logger;
4+
create or replace public synonym Marker for log4.Marker;
5+
create or replace public synonym Result for log4.Result;
6+
create or replace public synonym LogLevel for log4.LogLevel;
7+
create or replace public synonym GenericException for log4.GenericException;
8+
9+
create or replace public synonym LogEvent for log4.LogEvent;
10+
create or replace public synonym Log4oracleLogEvent for log4.Log4oracleLogEvent;
11+
12+
--layouts
13+
create or replace public synonym Layout for log4.Layout;
14+
create or replace public synonym PatternLayout for log4.PatternLayout;
15+
create or replace public synonym SimpleLayout for log4.SimpleLayout;
16+
17+
--Message
18+
create or replace public synonym Message for log4.Message;
19+
create or replace public synonym ObjectMessage for log4.ObjectMessage;
20+
create or replace public synonym ParameterizedMessage for log4.ParameterizedMessage;
21+
create or replace public synonym SimpleMessage for log4.SimpleMessage;
22+
23+
--appender types
24+
create or replace public synonym DBMSOutputAppender for log4.DBMSOutputAppender;
25+
create or replace public synonym SMTPAppender for log4.SMTPAppender;
26+
create or replace public synonym TableAppender for log4.TableAppender;
27+
28+
--Filters
29+
create or replace public synonym Filter for log4.Filter;
30+
create or replace public synonym ThresholdFilter for log4.ThresholdFilter;
31+
32+
--tables
33+
create or replace public synonym log_table for log4.log_table;
34+
create or replace public synonym log_levels for log4.log_levels;
35+
36+
--packages
37+
create or replace public synonym LogManager for log4.LogManager;
38+
create or replace public synonym MarkerManager for log4.MarkerManager;
39+
create or replace public synonym ThreadContext for log4.ThreadContext;
40+

src/uninstall.sql

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
drop table log_table;
22
drop table log_levels;
33

4-
drop type log4_object force;
54
drop type log4_array force;
65
drop type logger force;
76
drop type Marker force;
@@ -51,8 +50,15 @@ drop TYPE BODY TABLEAPPENDER;
5150
drop TYPE TABLEAPPENDER;
5251
drop TYPE BODY DBMSOUTPUTAPPENDER;
5352
drop TYPE DBMSOUTPUTAPPENDER;
53+
drop TYPE SMTPAPPENDER;
5454
drop TYPE APPENDER;
5555

56+
drop TYPE THRESHOLDFILTER;
57+
drop TYPE COMPOSITEFILTER;
58+
drop TYPE FILTERARRAY;
59+
drop TYPE FILTER;
60+
drop TYPE RESULT;
61+
5662
drop type THREADCONTEXTCONTEXTMAP;
5763
drop type THREADCONTEXTCONTEXTSTACK;
5864
drop type ThreadContextStack;
@@ -82,5 +88,6 @@ drop type PARAMETERIZEDMESSAGE;
8288
drop type LOGGERPATTERNCONVERTER;
8389
drop type PATTERNFORMATTER;
8490

91+
drop type log4_object;
8592

8693
prompt you can now run: purge recyclebin;;

0 commit comments

Comments
 (0)