1 /**
2  * Licensed under the Apache License, Version 2.0 (the "License");
3  * you may not use this file except in compliance with the License.
4  * You may obtain a copy of the License at
5  *
6  *      http://www.apache.org/licenses/LICENSE-2.0
7  *
8  * Unless required by applicable law or agreed to in writing, software
9  * distributed under the License is distributed on an "AS IS" BASIS,
10  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11  * See the License for the specific language governing permissions and
12  * limitations under the License.
13  */

14 package net.logstash.logback.composite.loggingevent;
15
16 import ch.qos.logback.classic.spi.ILoggingEvent;
17 import net.logstash.logback.composite.ContextJsonProvider;
18 import net.logstash.logback.composite.GlobalCustomFieldsJsonProvider;
19 import net.logstash.logback.composite.JsonProviders;
20 import net.logstash.logback.composite.LogstashVersionJsonProvider;
21
22 /**
23  * Used to make it make it more convenient to create well-known
24  * {@link JsonProviders} via xml configuration.
25  * <p>
26  * For example, instead of:
27  * {@code
28  *     <provider class="net.logstash.logback.composite.loggingevent.LoggingEventFormattedTimestampJsonProvider"/> 
29  * }
30  * you can just use:
31  * {@code
32  *     <timestamp/> 
33  * }
34  */

35 public class LoggingEventJsonProviders extends JsonProviders<ILoggingEvent> {
36
37     public void addTimestamp(LoggingEventFormattedTimestampJsonProvider provider) {
38         addProvider(provider);
39     }
40     public void addVersion(LogstashVersionJsonProvider<ILoggingEvent> provider) {
41         addProvider(provider);
42     }
43     public void addMessage(MessageJsonProvider provider) {
44         addProvider(provider);
45     }
46     public void addRawMessage(RawMessageJsonProvider provider) {
47         addProvider(provider);
48     }
49     public void addLoggerName(LoggerNameJsonProvider provider) {
50         addProvider(provider);
51     }
52     public void addThreadName(ThreadNameJsonProvider provider) {
53         addProvider(provider);
54     }
55     public void addLogLevel(LogLevelJsonProvider provider) {
56         addProvider(provider);
57     }
58     public void addLogLevelValue(LogLevelValueJsonProvider provider) {
59         addProvider(provider);
60     }
61     public void addCallerData(CallerDataJsonProvider provider) {
62         addProvider(provider);
63     }
64     public void addStackTrace(StackTraceJsonProvider provider) {
65         addProvider(provider);
66     }
67     public void addRootStackTraceElement(RootStackTraceElementJsonProvider provider) {
68         addProvider(provider);
69     }
70     public void addStackHash(StackHashJsonProvider provider) {
71         addProvider(provider);
72     }
73     public void addContext(ContextJsonProvider<ILoggingEvent> provider) {
74         addProvider(provider);
75     }
76     public void addContextName(ContextNameJsonProvider provider) {
77         addProvider(provider);
78     }
79     public void addJsonMessage(JsonMessageJsonProvider provider) {
80         addProvider(provider);
81     }
82     public void addMdc(MdcJsonProvider provider) {
83         addProvider(provider);
84     }
85     public void addContextMap(ContextMapJsonProvider provider) {
86         addProvider(provider);
87     }
88     public void addGlobalCustomFields(GlobalCustomFieldsJsonProvider<ILoggingEvent> provider) {
89         addProvider(provider);
90     }
91     public void addTags(TagsJsonProvider provider) {
92         addProvider(provider);
93     }
94     public void addLogstashMarkers(LogstashMarkersJsonProvider provider) {
95         addProvider(provider);
96     }
97     public void addPattern(LoggingEventPatternJsonProvider provider) {
98         addProvider(provider);
99     }
100     public void addArguments(ArgumentsJsonProvider provider) {
101         addProvider(provider);
102     }
103     public void addNestedField(LoggingEventNestedJsonProvider provider) {
104         addProvider(provider);
105     }
106     public void addUuid(UuidProvider provider) {
107         addProvider(provider);
108     }
109     public void addThrowableClassName(ThrowableClassNameJsonProvider provider) {
110         addProvider(provider);
111     }
112     public void addThrowableRootCauseClassName(ThrowableRootCauseClassNameJsonProvider provider) {
113         addProvider(provider);
114     }
115     public void addSequence(SequenceJsonProvider provider) { addProvider(provider); }
116
117 }
118