1
2
3
4
5
6
7
8
9
10 package org.mule.impl.model;
11
12 import org.mule.MuleManager;
13 import org.mule.umo.UMOComponent;
14 import org.mule.umo.UMODescriptor;
15 import org.mule.umo.UMOException;
16 import org.mule.umo.model.UMOModel;
17
18 import java.util.Iterator;
19
20
21
22
23 public final class ModelHelper
24 {
25 public static final String SYSTEM_MODEL = "_system";
26
27
28 private ModelHelper ()
29 {
30
31 }
32
33 public static String getSystemModelType()
34 {
35 return "seda";
36 }
37
38 public static boolean isComponentRegistered(String name)
39 {
40 for (Iterator iterator = MuleManager.getInstance().getModels().values().iterator(); iterator.hasNext();)
41 {
42 UMOModel m = (UMOModel) iterator.next();
43 if (m.isComponentRegistered(name))
44 {
45 return true;
46 }
47 }
48 return false;
49 }
50
51 public static UMOComponent getComponent(String name)
52 {
53 for (Iterator iterator = MuleManager.getInstance().getModels().values().iterator(); iterator.hasNext();)
54 {
55 UMOModel m = (UMOModel) iterator.next();
56 if (m.isComponentRegistered(name))
57 {
58 return m.getComponent(name);
59 }
60 }
61 return null;
62 }
63
64 public static UMODescriptor getDescriptor(String name)
65 {
66 for (Iterator iterator = MuleManager.getInstance().getModels().values().iterator(); iterator.hasNext();)
67 {
68 UMOModel m = (UMOModel) iterator.next();
69 if (m.isComponentRegistered(name))
70 {
71 return m.getDescriptor(name);
72 }
73 }
74 return null;
75 }
76
77
78 public static void registerSystemComponent(UMODescriptor d) throws UMOException
79 {
80 UMOModel model = MuleManager.getInstance().lookupModel(SYSTEM_MODEL);
81 if(model==null)
82 {
83 model = ModelFactory.createModel("seda");
84 model.setName(SYSTEM_MODEL);
85 MuleManager.getInstance().registerModel(model);
86 }
87 model.registerComponent(d);
88 }
89 }