1
2
3
4
5
6
7
8
9
10
11
12
13 package com.eviware.soapui.support.scripting;
14
15 import java.util.HashMap;
16 import java.util.Map;
17
18 import com.eviware.soapui.model.ModelItem;
19 import com.eviware.soapui.support.scripting.groovy.GroovyScriptEngineFactory;
20
21 /***
22 * Registry of available script engines
23 *
24 * @author ole.matzura
25 */
26
27 public class SoapUIScriptEngineRegistry
28 {
29 public static final String GROOVY_ID = GroovyScriptEngineFactory.ID;
30
31 private static Map<String,SoapUIScriptEngineFactory> factories = new HashMap<String, SoapUIScriptEngineFactory>();
32
33 public static void registerScriptEngine( String id, SoapUIScriptEngineFactory factory )
34 {
35 factories.put( id, factory );
36 }
37
38 public static SoapUIScriptEngineFactory getFactory( String id )
39 {
40 return factories.get( id );
41 }
42
43 public static SoapUIScriptEngine create( String id, ModelItem modelItem )
44 {
45 return factories.get( id ).createScriptEngine( modelItem );
46 }
47
48 static
49 {
50 registerScriptEngine( GroovyScriptEngineFactory.ID, new GroovyScriptEngineFactory() );
51 }
52 }