1
2
3
4
5
6 package org.weda.common.impl;
7
8 import org.apache.hivemind.Element;
9 import org.apache.hivemind.schema.SchemaProcessor;
10 import org.apache.hivemind.schema.rules.BaseRule;
11 import org.apache.hivemind.util.InstanceCreationUtils;
12
13 /**
14 *
15 * @author Mikhail Titov
16 */
17 public class CreateObjectRule extends BaseRule {
18 public void begin(SchemaProcessor processor, Element element) {
19 Object elem = processor.pop();
20 String className = null;
21 if (elem instanceof Class)
22 className = ((Class)elem).getName();
23 else
24 className = elem.toString();
25 Object obj =
26 InstanceCreationUtils.createInstance(
27 processor.getDefiningModule()
28 , className, element.getLocation());
29 processor.push(obj);
30 }
31
32 public void end(SchemaProcessor processor, Element element) {
33 processor.pop();
34 }
35
36
37
38 }