8
8
import ch .qos .logback .core .model .InsertFromJNDIModel ;
9
9
import ch .qos .logback .core .model .Model ;
10
10
import ch .qos .logback .core .model .util .PropertyModelHandlerHelper ;
11
+ import ch .qos .logback .core .spi .ContextAwarePropertyContainer ;
11
12
import ch .qos .logback .core .util .JNDIUtil ;
12
13
import ch .qos .logback .core .util .OptionHelper ;
13
14
@@ -28,14 +29,22 @@ protected Class<InsertFromJNDIModel> getSupportedModelClass() {
28
29
29
30
@ Override
30
31
public void handle (ModelInterpretationContext mic , Model model ) throws ModelHandlerException {
31
- int errorCount = 0 ;
32
-
33
32
InsertFromJNDIModel ifjm = (InsertFromJNDIModel ) model ;
33
+ detachedHandle (mic , ifjm );
34
+ }
34
35
35
- String envEntryName = mic .subst (ifjm .getEnvEntryName ());
36
- String asKey = mic .subst (ifjm .getAs ());
36
+ /**
37
+ *
38
+ * @param capc
39
+ * @param ifjm
40
+ * @since 1.5.11
41
+ */
42
+ public void detachedHandle (ContextAwarePropertyContainer capc , InsertFromJNDIModel ifjm ) {
43
+ int errorCount = 0 ;
44
+ String envEntryName = capc .subst (ifjm .getEnvEntryName ());
45
+ String asKey = capc .subst (ifjm .getAs ());
37
46
38
- String scopeStr = mic .subst (ifjm .getScopeStr ());
47
+ String scopeStr = capc .subst (ifjm .getScopeStr ());
39
48
Scope scope = ActionUtil .stringToScope (scopeStr );
40
49
41
50
String envEntryValue ;
@@ -61,7 +70,7 @@ public void handle(ModelInterpretationContext mic, Model model) throws ModelHand
61
70
addError ("[" + envEntryName + "] has null or empty value" );
62
71
} else {
63
72
addInfo ("Setting variable [" + asKey + "] to [" + envEntryValue + "] in [" + scope + "] scope" );
64
- PropertyModelHandlerHelper .setProperty (mic , asKey , envEntryValue , scope );
73
+ PropertyModelHandlerHelper .setProperty (capc , asKey , envEntryValue , scope );
65
74
}
66
75
} catch (NamingException e ) {
67
76
addError ("Failed to lookup JNDI env-entry [" + envEntryName + "]" );
0 commit comments