[jboss-svn-commits] JBL Code SVN: r19525 - in labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools: benchmark/waltz and 3 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Apr 11 08:27:45 EDT 2008
Author: mark.proctor at jboss.com
Date: 2008-04-11 08:27:45 -0400 (Fri, 11 Apr 2008)
New Revision: 19525
Modified:
labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/manners/MannersBenchmark.java
labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/waltz/WaltzBenchmark.java
labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/FibonacciExample.java
labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/HonestPoliticianExample.java
labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/AgendaGroupDelegate.java
labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/CellGridImpl.java
labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/ui/ConwayGUI.java
Log:
general formatting
Modified: labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/manners/MannersBenchmark.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/manners/MannersBenchmark.java 2008-04-11 12:27:12 UTC (rev 19524)
+++ labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/manners/MannersBenchmark.java 2008-04-11 12:27:45 UTC (rev 19525)
@@ -21,168 +21,163 @@
import org.drools.rule.Package;
public class MannersBenchmark {
- /** Number of guests at the dinner (default: 16). */
- private int numGuests = 16;
+ /** Number of guests at the dinner (default: 16). */
+ private int numGuests = 16;
- /** Number of seats at the table (default: 16). */
- private int numSeats = 16;
+ /** Number of seats at the table (default: 16). */
+ private int numSeats = 16;
- /** Minimum number of hobbies each guest should have (default: 2). */
- private int minHobbies = 2;
+ /** Minimum number of hobbies each guest should have (default: 2). */
+ private int minHobbies = 2;
- /** Maximun number of hobbies each guest should have (default: 3). */
- private int maxHobbies = 3;
+ /** Maximun number of hobbies each guest should have (default: 3). */
+ private int maxHobbies = 3;
- public static void main(final String[] args) throws Exception {
- PackageBuilderConfiguration config = new PackageBuilderConfiguration();
- PackageBuilder builder = new PackageBuilder(config);
- builder.addPackageFromDrl(new InputStreamReader(MannersBenchmark.class
- .getResourceAsStream("manners.drl")));
- Package pkg = builder.getPackage();
-
+ public static void main(final String[] args) throws Exception {
+ PackageBuilderConfiguration config = new PackageBuilderConfiguration();
+ PackageBuilder builder = new PackageBuilder( config );
+ builder.addPackageFromDrl( new InputStreamReader( MannersBenchmark.class.getResourceAsStream( "manners.drl" ) ) );
+ Package pkg = builder.getPackage();
RuleBaseConfiguration conf = new RuleBaseConfiguration();
conf.setShadowProxy( false );
-
+
// add the package to a rulebase
- final RuleBase ruleBase = RuleBaseFactory.newRuleBase(conf);
- ruleBase.addPackage(pkg);
+ final RuleBase ruleBase = RuleBaseFactory.newRuleBase( conf );
+ ruleBase.addPackage( pkg );
- StatefulSession session = ruleBase.newStatefulSession();
+ StatefulSession session = ruleBase.newStatefulSession();
- String filename;
- if (args.length != 0) {
- String arg = args[0];
- filename = arg;
- } else {
- filename = "manners64.dat";
- }
+ String filename;
+ if ( args.length != 0 ) {
+ String arg = args[0];
+ filename = arg;
+ } else {
+ filename = "manners64.dat";
+ }
- InputStream is = MannersBenchmark.class.getResourceAsStream(filename);
- List list = getInputObjects(is);
- for (Iterator it = list.iterator(); it.hasNext();) {
- Object object = it.next();
- session.insert(object);
- }
+ InputStream is = MannersBenchmark.class.getResourceAsStream( filename );
+ List list = getInputObjects( is );
+ for ( Iterator it = list.iterator(); it.hasNext(); ) {
+ Object object = it.next();
+ session.insert( object );
+ }
- session.insert(new Count(1));
+ session.insert( new Count( 1 ) );
- long start = System.currentTimeMillis();
- session.fireAllRules();
- System.err.println(System.currentTimeMillis() - start);
+ long start = System.currentTimeMillis();
+ session.fireAllRules();
+ System.err.println( System.currentTimeMillis() - start );
session.dispose();
- }
+ }
- /**
- * Convert the facts from the <code>InputStream</code> to a list of
- * objects.
- */
- protected static List getInputObjects(InputStream inputStream)
- throws IOException {
- List list = new ArrayList();
+ /**
+ * Convert the facts from the <code>InputStream</code> to a list of
+ * objects.
+ */
+ protected static List getInputObjects(InputStream inputStream) throws IOException {
+ List list = new ArrayList();
- BufferedReader br = new BufferedReader(new InputStreamReader(
- inputStream));
+ BufferedReader br = new BufferedReader( new InputStreamReader( inputStream ) );
- String line;
- while ((line = br.readLine()) != null) {
- if (line.trim().length() == 0 || line.trim().startsWith(";")) {
- continue;
- }
- StringTokenizer st = new StringTokenizer(line, "() ");
- String type = st.nextToken();
+ String line;
+ while ( (line = br.readLine()) != null ) {
+ if ( line.trim().length() == 0 || line.trim().startsWith( ";" ) ) {
+ continue;
+ }
+ StringTokenizer st = new StringTokenizer( line,
+ "() " );
+ String type = st.nextToken();
- if ("guest".equals(type)) {
- if (!"name".equals(st.nextToken())) {
- throw new IOException("expected 'name' in: " + line);
- }
- String name = st.nextToken();
- if (!"sex".equals(st.nextToken())) {
- throw new IOException("expected 'sex' in: " + line);
- }
- String sex = st.nextToken();
- if (!"hobby".equals(st.nextToken())) {
- throw new IOException("expected 'hobby' in: " + line);
- }
- String hobby = st.nextToken();
+ if ( "guest".equals( type ) ) {
+ if ( !"name".equals( st.nextToken() ) ) {
+ throw new IOException( "expected 'name' in: " + line );
+ }
+ String name = st.nextToken();
+ if ( !"sex".equals( st.nextToken() ) ) {
+ throw new IOException( "expected 'sex' in: " + line );
+ }
+ String sex = st.nextToken();
+ if ( !"hobby".equals( st.nextToken() ) ) {
+ throw new IOException( "expected 'hobby' in: " + line );
+ }
+ String hobby = st.nextToken();
- Guest guest = new Guest(name, Sex.resolve(sex), Hobby
- .resolve(hobby));
+ Guest guest = new Guest( name,
+ Sex.resolve( sex ),
+ Hobby.resolve( hobby ) );
- list.add(guest);
- }
+ list.add( guest );
+ }
- if ("last_seat".equals(type)) {
- if (!"seat".equals(st.nextToken())) {
- throw new IOException("expected 'seat' in: " + line);
- }
- list.add(new LastSeat(new Integer(st.nextToken()).intValue()));
- }
+ if ( "last_seat".equals( type ) ) {
+ if ( !"seat".equals( st.nextToken() ) ) {
+ throw new IOException( "expected 'seat' in: " + line );
+ }
+ list.add( new LastSeat( new Integer( st.nextToken() ).intValue() ) );
+ }
- if ("context".equals(type)) {
- if (!"state".equals(st.nextToken())) {
- throw new IOException("expected 'state' in: " + line);
- }
- list.add(new Context(st.nextToken()));
- }
- }
- inputStream.close();
+ if ( "context".equals( type ) ) {
+ if ( !"state".equals( st.nextToken() ) ) {
+ throw new IOException( "expected 'state' in: " + line );
+ }
+ list.add( new Context( st.nextToken() ) );
+ }
+ }
+ inputStream.close();
- return list;
- }
+ return list;
+ }
- private InputStream generateData() {
- final String LINE_SEPARATOR = System.getProperty("line.separator");
+ private InputStream generateData() {
+ final String LINE_SEPARATOR = System.getProperty( "line.separator" );
- StringWriter writer = new StringWriter();
+ StringWriter writer = new StringWriter();
- int maxMale = numGuests / 2;
- int maxFemale = numGuests / 2;
+ int maxMale = numGuests / 2;
+ int maxFemale = numGuests / 2;
- int maleCount = 0;
- int femaleCount = 0;
+ int maleCount = 0;
+ int femaleCount = 0;
- // init hobbies
- List hobbyList = new ArrayList();
- for (int i = 1; i <= maxHobbies; i++) {
- hobbyList.add("h" + i);
- }
+ // init hobbies
+ List hobbyList = new ArrayList();
+ for ( int i = 1; i <= maxHobbies; i++ ) {
+ hobbyList.add( "h" + i );
+ }
- Random rnd = new Random();
- for (int i = 1; i <= numGuests; i++) {
- char sex = rnd.nextBoolean() ? 'm' : 'f';
- if (sex == 'm' && maleCount == maxMale) {
- sex = 'f';
- }
- if (sex == 'f' && femaleCount == maxFemale) {
- sex = 'm';
- }
- if (sex == 'm') {
- maleCount++;
- }
- if (sex == 'f') {
- femaleCount++;
- }
+ Random rnd = new Random();
+ for ( int i = 1; i <= numGuests; i++ ) {
+ char sex = rnd.nextBoolean() ? 'm' : 'f';
+ if ( sex == 'm' && maleCount == maxMale ) {
+ sex = 'f';
+ }
+ if ( sex == 'f' && femaleCount == maxFemale ) {
+ sex = 'm';
+ }
+ if ( sex == 'm' ) {
+ maleCount++;
+ }
+ if ( sex == 'f' ) {
+ femaleCount++;
+ }
- List guestHobbies = new ArrayList(hobbyList);
+ List guestHobbies = new ArrayList( hobbyList );
- int numHobbies = minHobbies
- + rnd.nextInt(maxHobbies - minHobbies + 1);
- for (int j = 0; j < numHobbies; j++) {
- int hobbyIndex = rnd.nextInt(guestHobbies.size());
- String hobby = (String) guestHobbies.get(hobbyIndex);
- writer.write("(guest (name n" + i + ") (sex " + sex
- + ") (hobby " + hobby + "))" + LINE_SEPARATOR);
- guestHobbies.remove(hobbyIndex);
- }
- }
- writer.write("(last_seat (seat " + numSeats + "))" + LINE_SEPARATOR);
+ int numHobbies = minHobbies + rnd.nextInt( maxHobbies - minHobbies + 1 );
+ for ( int j = 0; j < numHobbies; j++ ) {
+ int hobbyIndex = rnd.nextInt( guestHobbies.size() );
+ String hobby = (String) guestHobbies.get( hobbyIndex );
+ writer.write( "(guest (name n" + i + ") (sex " + sex + ") (hobby " + hobby + "))" + LINE_SEPARATOR );
+ guestHobbies.remove( hobbyIndex );
+ }
+ }
+ writer.write( "(last_seat (seat " + numSeats + "))" + LINE_SEPARATOR );
- writer.write(LINE_SEPARATOR);
- writer.write("(context (state start))" + LINE_SEPARATOR);
+ writer.write( LINE_SEPARATOR );
+ writer.write( "(context (state start))" + LINE_SEPARATOR );
- return new ByteArrayInputStream(writer.getBuffer().toString()
- .getBytes());
- }
+ return new ByteArrayInputStream( writer.getBuffer().toString().getBytes() );
+ }
}
Modified: labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/waltz/WaltzBenchmark.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/waltz/WaltzBenchmark.java 2008-04-11 12:27:12 UTC (rev 19524)
+++ labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/benchmark/waltz/WaltzBenchmark.java 2008-04-11 12:27:45 UTC (rev 19525)
@@ -1,4 +1,5 @@
package org.drools.benchmark.waltz;
+
/*
* Copyright 2005 JBoss Inc
*
@@ -15,8 +16,6 @@
* limitations under the License.
*/
-
-
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
@@ -30,59 +29,60 @@
import org.drools.WorkingMemory;
import org.drools.compiler.PackageBuilder;
import org.drools.rule.Package;
-
+
/**
* This is a sample file to launch a rule package from a rule source file.
*/
public abstract class WaltzBenchmark {
public static void main(final String[] args) throws Exception {
- PackageBuilder builder = new PackageBuilder();
- builder.addPackageFromDrl( new InputStreamReader( WaltzBenchmark.class.getResourceAsStream( "waltz.drl" ) ) );
- Package pkg = builder.getPackage();
- //add the package to a rulebase
- RuleBaseConfiguration conf = new RuleBaseConfiguration();
- //conf.setAlphaMemory( true );
- conf.setShadowProxy( false );
- final RuleBase ruleBase = RuleBaseFactory.newRuleBase( conf );
- ruleBase.addPackage( pkg );
-
- StatefulSession session = ruleBase.newStatefulSession();
-
- String filename;
- if ( args.length != 0 ) {
- String arg = args[0];
- filename = arg;
- } else {
- filename = "waltz12.dat";
- }
-
- loadLines( session, filename );
-
- Stage stage = new Stage(Stage.DUPLICATE);
- session.insert( stage );
-
- long start = System.currentTimeMillis();
- session.fireAllRules();
- System.out.println( (System.currentTimeMillis() - start) / 1000 );
- session.dispose();
+ PackageBuilder builder = new PackageBuilder();
+ builder.addPackageFromDrl( new InputStreamReader( WaltzBenchmark.class.getResourceAsStream( "waltz.drl" ) ) );
+ Package pkg = builder.getPackage();
+ //add the package to a rulebase
+ RuleBaseConfiguration conf = new RuleBaseConfiguration();
+ //conf.setAlphaMemory( true );
+ conf.setShadowProxy( false );
+ final RuleBase ruleBase = RuleBaseFactory.newRuleBase( conf );
+ ruleBase.addPackage( pkg );
+
+ StatefulSession session = ruleBase.newStatefulSession();
+
+ String filename;
+ if ( args.length != 0 ) {
+ String arg = args[0];
+ filename = arg;
+ } else {
+ filename = "waltz12.dat";
+ }
+
+ loadLines( session,
+ filename );
+
+ Stage stage = new Stage( Stage.DUPLICATE );
+ session.insert( stage );
+
+ long start = System.currentTimeMillis();
+ session.fireAllRules();
+ System.out.println( (System.currentTimeMillis() - start) / 1000 );
+ session.dispose();
}
-
- private static void loadLines(WorkingMemory wm, String filename) throws IOException {
- BufferedReader reader = new BufferedReader(new InputStreamReader( WaltzBenchmark.class.getResourceAsStream( filename ) ));
+ private static void loadLines(WorkingMemory wm,
+ String filename) throws IOException {
+ BufferedReader reader = new BufferedReader( new InputStreamReader( WaltzBenchmark.class.getResourceAsStream( filename ) ) );
Pattern pat = Pattern.compile( ".*make line \\^p1 ([0-9]*) \\^p2 ([0-9]*).*" );
String line = reader.readLine();
- while(line != null) {
+ while ( line != null ) {
Matcher m = pat.matcher( line );
- if(m.matches()) {
- Line l = new Line(Integer.parseInt( m.group( 1 ) ),
- Integer.parseInt( m.group( 2 ) ) );
+ if ( m.matches() ) {
+ Line l = new Line( Integer.parseInt( m.group( 1 ) ),
+ Integer.parseInt( m.group( 2 ) ) );
wm.insert( l );
}
line = reader.readLine();
}
reader.close();
}
-
+
}
\ No newline at end of file
Modified: labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/FibonacciExample.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/FibonacciExample.java 2008-04-11 12:27:12 UTC (rev 19524)
+++ labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/FibonacciExample.java 2008-04-11 12:27:45 UTC (rev 19525)
@@ -23,7 +23,7 @@
final WorkingMemoryFileLogger logger = new WorkingMemoryFileLogger( session );
logger.setFileName( "log/fibonacci" );
- session.insert( new Fibonacci( 10 ) );
+ session.insert( new Fibonacci( 50 ) );
session.fireAllRules();
Modified: labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/HonestPoliticianExample.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/HonestPoliticianExample.java 2008-04-11 12:27:12 UTC (rev 19524)
+++ labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/HonestPoliticianExample.java 2008-04-11 12:27:45 UTC (rev 19525)
@@ -17,7 +17,7 @@
public static void main(final String[] args) throws Exception {
PackageBuilderConfiguration conf = new PackageBuilderConfiguration();
- final PackageBuilder builder = new PackageBuilder(conf);
+ final PackageBuilder builder = new PackageBuilder( conf );
builder.addPackageFromDrl( new InputStreamReader( HonestPoliticianExample.class.getResourceAsStream( "HonestPolitician.drl" ) ) );
final RuleBase ruleBase = RuleBaseFactory.newRuleBase();
@@ -28,57 +28,62 @@
final WorkingMemoryFileLogger logger = new WorkingMemoryFileLogger( session );
logger.setFileName( "log/honest-politician" );
- final Politician blair = new Politician("blair", true);
- final Politician bush = new Politician("bush", true);
- final Politician chirac = new Politician("chirac", true);
- final Politician schroder = new Politician("schroder", true);
-
+ final Politician blair = new Politician( "blair",
+ true );
+ final Politician bush = new Politician( "bush",
+ true );
+ final Politician chirac = new Politician( "chirac",
+ true );
+ final Politician schroder = new Politician( "schroder",
+ true );
+
session.insert( blair );
session.insert( bush );
session.insert( chirac );
session.insert( schroder );
session.fireAllRules();
-
+
logger.writeToDisk();
-
+
session.dispose();
}
-
+
public static class Politician {
- private String name;
-
- private boolean honest;
-
- public Politician() {
-
- }
-
- public Politician(String name, boolean honest) {
- super();
- this.name = name;
- this.honest = honest;
- }
-
- public boolean isHonest() {
- return honest;
- }
-
- public void setHonest(boolean honest) {
- this.honest = honest;
- }
+ private String name;
- public String getName() {
- return name;
- }
+ private boolean honest;
+
+ public Politician() {
+
+ }
+
+ public Politician(String name,
+ boolean honest) {
+ super();
+ this.name = name;
+ this.honest = honest;
+ }
+
+ public boolean isHonest() {
+ return honest;
+ }
+
+ public void setHonest(boolean honest) {
+ this.honest = honest;
+ }
+
+ public String getName() {
+ return name;
+ }
}
public static class Hope {
-
- public Hope() {
-
- }
-
+
+ public Hope() {
+
+ }
+
}
-
+
}
Modified: labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/AgendaGroupDelegate.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/AgendaGroupDelegate.java 2008-04-11 12:27:12 UTC (rev 19524)
+++ labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/AgendaGroupDelegate.java 2008-04-11 12:27:45 UTC (rev 19525)
@@ -1,12 +1,16 @@
package org.drools.examples.conway;
+import java.io.File;
import java.io.InputStreamReader;
import java.io.Reader;
import org.drools.RuleBase;
+import org.drools.RuleBaseConfiguration;
import org.drools.RuleBaseFactory;
import org.drools.StatefulSession;
+import org.drools.audit.WorkingMemoryFileLogger;
import org.drools.compiler.PackageBuilder;
+import org.drools.compiler.PackageBuilderConfiguration;
public class AgendaGroupDelegate implements ConwayRuleDelegate {
private StatefulSession session;
@@ -14,14 +18,16 @@
public AgendaGroupDelegate() {
final Reader drl = new InputStreamReader( AgendaGroupDelegate.class.getResourceAsStream( "/org/drools/examples/conway/conway-agendagroup.drl" ) );
- try {
- PackageBuilder builder = new PackageBuilder();
+ try {
+ PackageBuilderConfiguration conf = new PackageBuilderConfiguration();
+ conf.setDumpDir( new File( "." ) );
+ PackageBuilder builder = new PackageBuilder( conf );
builder.addPackageFromDrl( drl );
-
- RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase( );
ruleBase.addPackage( builder.getPackage() );
- this.session = ruleBase.newStatefulSession();
+ this.session = ruleBase.newStatefulSession( );
} catch ( Exception e ) {
throw new RuntimeException( e );
Modified: labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/CellGridImpl.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/CellGridImpl.java 2008-04-11 12:27:12 UTC (rev 19524)
+++ labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/CellGridImpl.java 2008-04-11 12:27:45 UTC (rev 19525)
@@ -186,7 +186,9 @@
for ( int i = 0; i < this.cells.length; i++ ) {
for ( int j = 0; j < this.cells[i].length; j++ ) {
Cell cell = this.cells[i][j];
- System.out.print( cell.getLiveNeighbors() + ((cell.getCellState() == CellState.DEAD) ? "D" : "L") + " " );
+ if ( cell != null ) {
+ System.out.print( cell.getLiveNeighbors() + ((cell.getCellState() == CellState.DEAD) ? "D" : "L") + " " );
+ }
}
System.out.println( "" );
}
Modified: labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/ui/ConwayGUI.java
===================================================================
--- labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/ui/ConwayGUI.java 2008-04-11 12:27:12 UTC (rev 19524)
+++ labs/jbossrules/branches/4.0.x/drools-examples/drools-examples-drl/src/main/java/org/drools/examples/conway/ui/ConwayGUI.java 2008-04-11 12:27:45 UTC (rev 19525)
@@ -50,7 +50,6 @@
final String clearLabel = ConwayApplicationProperties.getProperty( "clear.label" );
this.clearButton = new JButton( clearLabel );
- //this.grid = new CellGridAgendaGroup( 30, 30 );
this.grid = new CellGridImpl( 30, 30, executionControl );
final CellGridCanvas canvas = new CellGridCanvas( grid );
More information about the jboss-svn-commits
mailing list