1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.core.config;
18
19 import org.apache.logging.log4j.Logger;
20 import org.apache.logging.log4j.core.config.plugins.Plugin;
21 import org.apache.logging.log4j.core.config.plugins.PluginAttribute;
22 import org.apache.logging.log4j.core.config.plugins.PluginFactory;
23 import org.apache.logging.log4j.core.config.plugins.PluginValue;
24 import org.apache.logging.log4j.status.StatusLogger;
25
26
27
28
29 @Plugin(name = "property", category = Node.CATEGORY, printObject = true)
30 public final class Property {
31
32 private static final Logger LOGGER = StatusLogger.getLogger();
33
34 private final String name;
35 private final String value;
36
37 private Property(final String name, final String value) {
38 this.name = name;
39 this.value = value;
40 }
41
42
43
44
45
46 public String getName() {
47 return name;
48 }
49
50
51
52
53
54 public String getValue() {
55 return value;
56 }
57
58
59
60
61
62
63
64
65 @PluginFactory
66 public static Property createProperty(
67 @PluginAttribute("name") final String name,
68 @PluginValue("value") final String value) {
69 if (name == null) {
70 LOGGER.error("Property name cannot be null");
71 }
72 return new Property(name, value);
73 }
74
75 @Override
76 public String toString() {
77 return name + '=' + value;
78 }
79 }