/** * does NOT check if its a valid BlockID and stuff.. this may be used for items. * * @return never NULL. always {0, -1}. Meta by default is -1. * @throws NumberFormatException the message is a formatted chat string. */ public static int[] parseIdAndMetaFromString(String msg, boolean blocksOnly) throws NumberFormatException { int ID; int meta = -1; // perhaps the ID:Meta format if (msg.contains(":")) { String[] pair = msg.split(":", 2); try { ID = Integer.parseInt(pair[0]); } catch (NumberFormatException e) { ID = getItemIDFromName(pair[0], blocksOnly); } try { meta = Integer.parseInt(pair[1]); } catch (NumberFormatException e) { throw new NumberFormatException(Localization.format(Localization.ERROR_NAN, pair[1])); } } else { try { ID = Integer.parseInt(msg); meta = -1; } catch (NumberFormatException e) { ID = getItemIDFromName(msg, blocksOnly); } } // try checking if its just an ID return new int[] {ID, meta}; }
protected Localization getLocalization(BaseElement dObj) { List<ExtensionElement> i18lnExtension = dObj.getExtensionElements().get(ELEMENT_I18LN_LOCALIZATION); if (!i18lnExtension.isEmpty()) { Map<String, List<ExtensionAttribute>> extensionAttributes = i18lnExtension.get(0).getAttributes(); localization.setLabeledEntityIdForName( extensionAttributes.get(ATTRIBUTE_DATA_LABELED_ENTITY_ID_FOR_NAME).get(0).getValue()); localization.setLabeledEntityIdForDescription( extensionAttributes .get(ATTRIBUTE_DATA_LABELED_ENTITY_ID_FOR_DESCRIPTION) .get(0) .getValue()); localization.setResourceBundleKeyForName( extensionAttributes.get(ATTRIBUTE_DATA_RESOURCE_BUNDLE_KEY_FOR_NAME).get(0).getValue()); localization.setResourceBundleKeyForDescription( extensionAttributes .get(ATTRIBUTE_DATA_RESOURCE_BUNDLE_KEY_FOR_DESCRIPTION) .get(0) .getValue()); } return localization; }
private void validateModel(BpmnModel model) { FlowElement flowElement = model.getMainProcess().getFlowElement("start1"); assertNotNull(flowElement); assertTrue(flowElement instanceof StartEvent); assertEquals("start1", flowElement.getId()); // verify the main process data objects List<ValuedDataObject> dataObjects = model.getMainProcess().getDataObjects(); assertEquals(1, dataObjects.size()); Map<String, ValuedDataObject> objectMap = new HashMap<String, ValuedDataObject>(); for (ValuedDataObject valueObj : dataObjects) { objectMap.put(valueObj.getId(), valueObj); } ValuedDataObject dataObj = objectMap.get("dObj1"); assertEquals("dObj1", dataObj.getId()); assertEquals("StringTest", dataObj.getName()); assertEquals("xsd:string", dataObj.getItemSubjectRef().getStructureRef()); assertTrue(dataObj.getValue() instanceof String); assertEquals("Testing123", dataObj.getValue()); /* * Verify DataObject attributes extension */ Map<String, String> attributes = getDataObjectAttributes(dataObj); assertEquals(2, attributes.size()); for (String key : attributes.keySet()) { if (key.equals("Attr1")) { assertTrue("1".equals(attributes.get(key))); } else if (key.equals("Attr2")) { assertTrue("2".equals(attributes.get(key))); } else { fail("Unknown key value"); } } /* * Verify DataObject localization extension */ Localization localization = getLocalization(dataObj); assertEquals("rbkfn-1", localization.getResourceBundleKeyForName()); assertEquals("rbkfd-1", localization.getResourceBundleKeyForDescription()); assertEquals("leifn-1", localization.getLabeledEntityIdForName()); assertEquals("leifd-1", localization.getLabeledEntityIdForDescription()); flowElement = model.getMainProcess().getFlowElement("subprocess1"); assertNotNull(flowElement); assertTrue(flowElement instanceof SubProcess); assertEquals("subprocess1", flowElement.getId()); SubProcess subProcess = (SubProcess) flowElement; assertEquals(6, subProcess.getFlowElements().size()); // verify the sub process data objects dataObjects = subProcess.getDataObjects(); assertEquals(1, dataObjects.size()); objectMap = new HashMap<String, ValuedDataObject>(); for (ValuedDataObject valueObj : dataObjects) { objectMap.put(valueObj.getId(), valueObj); } dataObj = objectMap.get("dObj2"); assertEquals("dObj2", dataObj.getId()); assertEquals("BooleanTest", dataObj.getName()); assertEquals("xsd:boolean", dataObj.getItemSubjectRef().getStructureRef()); assertTrue(dataObj.getValue() instanceof Boolean); assertEquals(Boolean.TRUE, dataObj.getValue()); /* * Verify DataObject attributes extension */ attributes = getDataObjectAttributes(dataObj); assertEquals(2, attributes.size()); for (String key : attributes.keySet()) { if (key.equals("Attr3")) { assertTrue("3".equals(attributes.get(key))); } else if (key.equals("Attr4")) { assertTrue("4".equals(attributes.get(key))); } else { fail("Unknown key value"); } } /* * Verify DataObject localization extension */ localization = getLocalization(dataObj); assertEquals("rbkfn-2", localization.getResourceBundleKeyForName()); assertEquals("rbkfd-2", localization.getResourceBundleKeyForDescription()); assertEquals("leifn-2", localization.getLabeledEntityIdForName()); assertEquals("leifd-2", localization.getLabeledEntityIdForDescription()); }
public void load() { Settings.load(this); Localization.init(this, Settings.localfile); }