public Map createVariableContext(final String className,
final String text,
final ProcessBuildContext context,
final String[] globals) {
final Map map = new HashMap();
map.put("methodName",
className);
map.put("package",
context.getPkg().getName());
map.put("processClassName",
StringUtils.ucFirst(context.getProcessDescr().getClassName()));
map.put("invokerClassName",
context.getProcessDescr().getClassName() + StringUtils.ucFirst(className) + "Invoker");
if (text != null) {
map.put("text",
text);
map.put("hashCode",
new Integer(text.hashCode()));
}
final List globalTypes = new ArrayList(globals.length);
for (int i = 0, length = globals.length; i < length; i++) {
globalTypes.add(context.getPkg().getGlobals().get(globals[i]).replace('$',
'.'));
}
map.put("globals",
globals);
map.put("globalTypes",
globalTypes);
return map;
}