Skip to content

Commit

Permalink
BZ-1007971 - Decision logic design should be more intuitive
Browse files Browse the repository at this point in the history
KieFunctions import was added to the java class generated for processes
  • Loading branch information
wmedvede committed Nov 20, 2013
1 parent 9d67395 commit 430b89d
Showing 1 changed file with 13 additions and 0 deletions.
Expand Up @@ -16,7 +16,9 @@

package org.jbpm.process.builder.dialect.java;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import org.drools.core.util.StringUtils;
import org.drools.compiler.lang.descr.ProcessDescr;
Expand All @@ -32,6 +34,11 @@ public class JavaProcessClassBuilder
implements
ProcessClassBuilder {

protected static List<String> systemImports = new ArrayList<String>();
static {
systemImports.add( org.drools.core.util.KieFunctions.class.getName() );
}

/* (non-Javadoc)
* @see org.drools.core.rule.builder.dialect.java.RuleClassBuilder#buildRule(org.drools.core.rule.builder.BuildContext, org.drools.core.rule.builder.dialect.java.BuildUtils, RuleDescr)
*/
Expand All @@ -50,6 +57,12 @@ public String buildRule(final ProcessBuildContext context) {
buffer.append( "import " + decl.getTarget() + ";" + lineSeparator );
}

for ( String systemImport : systemImports ) {
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 );
}
Expand Down

0 comments on commit 430b89d

Please sign in to comment.