1
2
3
4
5
6
7
8
9
10
11 package org.mule.components.script.jsr223;
12
13 import org.mule.MuleManager;
14 import org.mule.umo.UMOEventContext;
15 import org.mule.umo.lifecycle.InitialisationException;
16 import org.mule.util.MuleLogger;
17
18 import javax.script.Bindings;
19
20 public class AbstractScriptComponent extends Scriptable
21 {
22 private Bindings bindings;
23
24 public void initialise() throws InitialisationException
25 {
26 super.initialise();
27 bindings = getScriptEngine().createBindings();
28 }
29
30 protected void populateBindings(Bindings namespace, UMOEventContext context)
31 {
32 namespace.put("eventContext", context);
33 namespace.put("managementContext", MuleManager.getInstance());
34 namespace.put("message", context.getMessage());
35 namespace.put("descriptor", context.getComponentDescriptor());
36 namespace.put("componentNamespace", this.bindings);
37 namespace.put("log", new MuleLogger(logger));
38 }
39
40 public Bindings getBindings()
41 {
42 return bindings;
43 }
44 }
45
46