@Override public OrganizationalEntity persistOrgEntity(OrganizationalEntity orgEntity) { check(); if (!StringUtils.isEmpty(orgEntity.getId())) { try { this.em.persist( orgEntity ); if( this.pessimisticLocking ) { this.em.flush(); return this.em.find(OrganizationalEntityImpl.class, orgEntity.getId(), LockModeType.PESSIMISTIC_WRITE ); } } catch (EntityExistsException e) { throw new RuntimeException("Organizational entity already exists with " + orgEntity + " id, please check that there is no group and user with same id"); } } return orgEntity; }
buffer.append( "package " + context.getPkg().getName() + ";" + lineSeparator ); if ( context.getProcess() != null && ((org.jbpm.process.core.Process) context.getProcess()).getImports() != null) { for ( String decl : ((org.jbpm.process.core.Process)context.getProcess()).getImports() ) { if ( !context.getPkg().getImports().containsKey( systemImport ) ) { buffer.append( "import ").append( systemImport ).append( ";" ).append( lineSeparator ); for ( final Iterator it = context.getPkg().getStaticImports().iterator(); it.hasNext(); ) { buffer.append( "import static " + it.next() + ";" + lineSeparator ); buffer.append( "public class " + StringUtils.ucFirst( processDescr.getClassName() ) + " {" + lineSeparator ); buffer.append( " private static final long serialVersionUID = 510l;" + lineSeparator );
@Test public void test_indexOfOutOfQuotes() { assertEquals(0, indexOfOutOfQuotes("bla\"bla\"bla", "bla")); assertEquals(5, indexOfOutOfQuotes("\"bla\"bla", "bla")); assertEquals(-1, indexOfOutOfQuotes("\"bla\"", "bla")); assertEquals(0, indexOfOutOfQuotes("bla\"bla\"bla", "bla", 0)); assertEquals(8, indexOfOutOfQuotes("bla\"bla\"bla", "bla", 1)); assertEquals(-1, indexOfOutOfQuotes("bla\"bla\"bla", "bla", 9)); } }
@Override public ComponentMetadata parseElement(ParserContext context, Element element) { String id = getId(context, element); String ref = element.getAttribute(ATTRIBUTE_KRUNTIME_MANAGER_REF); MutableBeanMetadata beanMetadata = (MutableBeanMetadata) context.createMetadata(BeanMetadata.class); beanMetadata.setClassName("org.kie.aries.blueprint.factorybeans.KieRuntimeManagerFactoryBean"); beanMetadata.setFactoryMethod("createSession"); beanMetadata.setId(id); if (!StringUtils.isEmpty(ref)) { beanMetadata.addArgument(createRef(context, ref), null, 0); } else { throw new ComponentDefinitionException("Mandatory attribute 'kruntimeManager-ref' missing for ksession. Cannot continue."); } beanMetadata.setActivation(ComponentMetadata.ACTIVATION_LAZY); return beanMetadata; }
@Override public ComponentMetadata parseElement(ParserContext context, Element element) { String id = getId(context, element); if (StringUtils.isEmpty(id)){ throw new ComponentDefinitionException("'id' attribute is missing for environment definition."); MutableMapMetadata envParamMetadata = context.createMetadata(MutableMapMetadata.class); envParamMetadata.setKeyType(String.class.getName()); envParamMetadata.setValueType(Object.class.getName()); checkAndSetReference(context, element, envParamMetadata, ELEMENT_CALENDARS, EnvironmentName.CALENDARS, ATTRIBUTE_REF); MutableBeanMetadata beanMetadata = context.createMetadata(MutableBeanMetadata.class); beanMetadata.setClassName(SerializablePlaceholderResolverStrategy.class.getName()); beanMetadata.setActivation(MutableBeanMetadata.ACTIVATION_LAZY); if (!StringUtils.isEmpty(ref)) { beanMetadata.addArgument(createRef(context, ref), null, 0); if (!StringUtils.isEmpty(ref)) { if (!StringUtils.isEmpty(ref)) { if (!StringUtils.isEmpty(ref)) { strategiesCollectionMetadata.addValue(createRef(context, ref)); } else {
private static String checkAndSetID(Element parent, Element element) { String id = element.getAttribute("id"); if ( StringUtils.isEmpty(id)) { // this is an anonymous (no id) bean, set a temp id to ensure we can reference it internally. id = parent.getAttribute("id")+"_fl"+i; element.setAttribute("id", id); i++; } return id; } }
String id = getId(context, element); String releaseIdRef = element.getAttribute("releaseId"); MutableBeanMetadata beanMetadata = (MutableBeanMetadata) context.createMetadata(BeanMetadata.class); beanMetadata.setClassName("org.kie.aries.blueprint.factorybeans.KieObjectsFactoryBean"); beanMetadata.setFactoryMethod("fetchKBase"); beanMetadata.setId(id); beanMetadata.addArgument(createValue(context, id),null,0); if (!StringUtils.isEmpty(releaseIdRef)) { beanMetadata.addArgument(createRef(context, releaseIdRef),null,1); } else { beanMetadata.setActivation(ComponentMetadata.ACTIVATION_LAZY); MutablePassThroughMetadata passThroughMetadata = context.createMetadata(MutablePassThroughMetadata.class); passThroughMetadata.setObject(kBaseOptionsAdaptor); beanMetadata.addArgument(passThroughMetadata, null, 2); ksessionElement.setAttribute(KieSessionElementParser.ID_ATTRIBUTE, ksessionElement.getAttribute("name")); ksessionElement.setAttribute(KieSessionElementParser.ATTRIBUTE_KBASE_REF, id); context.getComponentDefinitionRegistry().registerComponentDefinition(new KieSessionElementParser().parseElement(context, ksessionElement));
public static MutableCollectionMetadata parseBatchElement(KieSessionElementParser kieSessionElementParser, ParserContext context, Element element){ if (n instanceof Element) { Element e = (Element) n; MutableBeanMetadata componentMetadata = context.createMetadata(MutableBeanMetadata.class); if ("insert-object".equals(e.getLocalName())) { String ref = e.getAttribute("ref"); if (StringUtils.isEmpty(ref)){ throw new ComponentDefinitionException("'ref' attribute is missing for insert-object for bean definition ("+ kieSessionElementParser.getId(context, element)+")"); componentMetadata.setClassName(InsertObjectCommand.class.getName()); if (StringUtils.isEmpty(ref)){ throw new ComponentDefinitionException("'ref' attribute is missing for set-global for bean definition ("+ kieSessionElementParser.getId(context, element)+")"); if (StringUtils.isEmpty(identifier)){ throw new ComponentDefinitionException("'identifier' attribute is missing for set-global for bean definition ("+ kieSessionElementParser.getId(context, element)+")"); if (!StringUtils.isEmpty(max)) { try { if (!StringUtils.isEmpty(processInstanceId)) { if (StringUtils.isEmpty(ref)){ throw new ComponentDefinitionException("'ref' attribute is missing for signal-event for bean definition ("+ kieSessionElementParser.getId(context, element)+")"); if (StringUtils.isEmpty(eventType)){ throw new ComponentDefinitionException("'event-type' attribute is missing for signal-event for bean definition ("+ kieSessionElementParser.getId(context, element)+")");
BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition( DroolsResourceAdapter.class ); if ( StringUtils.hasText( element.getAttribute( REF ) ) ) { String ref = element.getAttribute( REF ); emptyAttributeCheck( element.getLocalName(), REF, ref ); String name = element.getAttribute( NAME ); factory.addPropertyValue( "name", org.drools.core.util.StringUtils.isEmpty(name) ? null : name); String description = element.getAttribute( DESCRIPTION ); factory.addPropertyValue( "description", org.drools.core.util.StringUtils.isEmpty(description) ? null : description);
protected void checkAndSetReference(ParserContext context, Element envElement, MutableMapMetadata envParamMetadata, String elementTag, String propName, String refAttribute) { String prefix = envElement.getPrefix(); NodeList nodeList = envElement.getElementsByTagName(prefix+":"+elementTag); if ( nodeList != null && nodeList.getLength() > 0){ Node childNode = nodeList.item(0); if ( childNode instanceof Element) { Element childElement = (Element)childNode; String ref = childElement.getAttribute(refAttribute); if (!StringUtils.isEmpty(ref)){ // envParamMetadata. MutableRefMetadata refData = context.createMetadata(MutableRefMetadata.class); refData.setComponentId(ref); // createRef(context, ref); // ((RefMetadataImpl)refData).setComponentId(propName); envParamMetadata.addEntry(createValue(context, propName), refData); } } } } }
private int getAttributeValueAsInt(Element elem, String name, int def) { String value = elem.getAttribute(name); return StringUtils.isEmpty(value) ? def : Integer.parseInt(value); }
public static MutableCollectionMetadata parseConsoleLoggers(KieSessionElementParser kieLoggerElementParser, ParserContext context, Element element){ MutableRefMetadata refMetadata = context.createMetadata(MutableRefMetadata.class); refMetadata.setComponentId(componentMetadata.getId()); collectionMetadata.addValue(refMetadata); NodeList fileLoggerList = element.getElementsByTagName(prefix+":fileLogger"); if ( fileLoggerList != null && fileLoggerList.getLength() > 0){ for (int i=0; i < fileLoggerList.getLength(); i++){ if (StringUtils.isEmpty(LOGGER_ATTRIBUTE_FILE)){ throw new ComponentDefinitionException(LOGGER_ATTRIBUTE_FILE+" attribute is missing for logger ("+ kieLoggerElementParser.getId(context, element)+")"); if (!StringUtils.isEmpty(LOGGER_ATTRIBUTE_FILE) && "true".equalsIgnoreCase(threaded)){ componentMetadata.addProperty("loggerType", createValue(context, KieLoggerAdaptor.KNOWLEDGE_LOGGER_TYPE.LOGGER_TYPE_THREADED_FILE.toString())); String interval = kieLoggerElementParser.getAttributeValue(loggerNode, LOGGER_ATTRIBUTE_INTERVAL); if ( !StringUtils.isEmpty(interval)){ try{ int nInterval = Integer.parseInt(interval); if (StringUtils.isEmpty(LOGGER_ATTRIBUTE_FILE)){ throw new ComponentDefinitionException(LOGGER_ATTRIBUTE_FILE+" attribute is missing for logger ("+ kieLoggerElementParser.getId(context, element)+")");
public static void buildResourcesList(Class cls, String kBaseQName, List<String> list) { String fileStr = null; InputStream is = null; try { is = cls.getResourceAsStream( "/" + kBaseQName + ".files.dat" ); fileStr = org.drools.core.util.StringUtils.toString( is ); } catch ( IOException e ) { throw new RuntimeException( "Unable to fine files for KnowledgeBase " + kBaseQName ); } finally { if ( is != null ) { try { is.close(); } catch (IOException e) { throw new RuntimeException( "Unable to fine files for KnowledgeBase " + kBaseQName ); } } } if (!StringUtils.isEmpty(fileStr)) { for( String entry : fileStr.split( "," ) ) { if (!StringUtils.isEmpty(entry)) { list.add( entry.trim() ); } } } }
context.getPkg().getName()); StringUtils.ucFirst(context.getProcessDescr().getClassName())); context.getProcessDescr().getClassName() + StringUtils.ucFirst(className) + "Invoker"); globalTypes.add(context.getPkg().getGlobals().get(globals[i]).replace('$', '.'));
public void generateTemplates(final String ruleTemplate, final String invokerTemplate, final ProcessBuildContext context, final String className, final Map vars, final Object invokerLookup, final BaseDescr descrLookup) { TemplateRegistry registry = getRuleTemplateRegistry(); context.getMethods().add((String) TemplateRuntime.execute(registry.getNamedTemplate(ruleTemplate), null, new MapVariableResolverFactory(vars), registry) ); registry = getInvokerTemplateRegistry(); final String invokerClassName = context.getPkg().getName() + "." + context.getProcessDescr().getClassName() + StringUtils.ucFirst(className) + "Invoker"; context.getInvokers().put(invokerClassName, (String)TemplateRuntime.execute(registry.getNamedTemplate(invokerTemplate), null, new MapVariableResolverFactory(vars), registry) ); context.addInvokerLookup(invokerClassName, invokerLookup); context.addDescrLookups(invokerClassName, descrLookup); }
@Override public ComponentMetadata parseElement(ParserContext context, Element element) { String id = getId(context, element); String ref = element.getAttribute(ATTRIBUTE_KRUNTIME_MANAGER_REF); MutableBeanMetadata beanMetadata = (MutableBeanMetadata) context.createMetadata(BeanMetadata.class); beanMetadata.setClassName("org.kie.aries.blueprint.factorybeans.KieRuntimeManagerFactoryBean"); beanMetadata.setFactoryMethod("createSession"); beanMetadata.setId(id); if (!StringUtils.isEmpty(ref)) { beanMetadata.addArgument(createRef(context, ref), null, 0); } else { throw new ComponentDefinitionException("Mandatory attribute 'kruntimeManager-ref' missing for ksession. Cannot continue."); } beanMetadata.setActivation(ComponentMetadata.ACTIVATION_LAZY); return beanMetadata; }
@Override public ComponentMetadata parseElement(ParserContext context, Element element) { String id = getId(context, element); if (StringUtils.isEmpty(id)){ throw new ComponentDefinitionException("'id' attribute is missing for environment definition."); MutableMapMetadata envParamMetadata = context.createMetadata(MutableMapMetadata.class); envParamMetadata.setKeyType(String.class.getName()); envParamMetadata.setValueType(Object.class.getName()); checkAndSetReference(context, element, envParamMetadata, ELEMENT_CALENDARS, EnvironmentName.CALENDARS, ATTRIBUTE_REF); MutableBeanMetadata beanMetadata = context.createMetadata(MutableBeanMetadata.class); beanMetadata.setClassName(SerializablePlaceholderResolverStrategy.class.getName()); beanMetadata.setActivation(MutableBeanMetadata.ACTIVATION_LAZY); if (!StringUtils.isEmpty(ref)) { beanMetadata.addArgument(createRef(context, ref), null, 0); if (!StringUtils.isEmpty(ref)) { if (!StringUtils.isEmpty(ref)) { if (!StringUtils.isEmpty(ref)) { strategiesCollectionMetadata.addValue(createRef(context, ref)); } else {
private static String checkAndSetID(Element parent, Element element) { String id = element.getAttribute("id"); if (StringUtils.isEmpty(id)) { // this is an anonymous (no id) bean, set a temp id to ensure we can reference it internally. id = parent.getAttribute("id") + "_fl" + i; element.setAttribute("id", id); i++; } return id; } }