[jboss-svn-commits] JBL Code SVN: r18942 - in labs/jbossrules/branches/ming-serialization: drools-compiler/src/main/java/org/drools/rule/builder and 4 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Mar 13 16:44:18 EDT 2008
Author: mingjin
Date: 2008-03-13 16:44:18 -0400 (Thu, 13 Mar 2008)
New Revision: 18942
Modified:
labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/lang/dsl/DefaultExpander.java
labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/rule/builder/PatternBuilder.java
labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java
labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ClassObjectType.java
labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/FieldFactory.java
labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ValueType.java
labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java
labs/jbossrules/branches/ming-serialization/drools-core/src/test/java/org/drools/common/DroolsObjectIOTest.java
Log:
fixed more static references.
Modified: labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/lang/dsl/DefaultExpander.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/lang/dsl/DefaultExpander.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/lang/dsl/DefaultExpander.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -82,11 +82,11 @@
mapping );
for ( final Iterator it = mapping.getEntries().iterator(); it.hasNext(); ) {
final DSLMappingEntry entry = (DSLMappingEntry) it.next();
- if ( entry.getSection() == DSLMappingEntry.KEYWORD ) {
+ if ( DSLMappingEntry.KEYWORD.equals(entry.getSection()) ) {
this.keywords.add( entry );
- } else if ( entry.getSection() == DSLMappingEntry.CONDITION ) {
+ } else if ( DSLMappingEntry.CONDITION.equals(entry.getSection()) ) {
this.condition.add( entry );
- } else if ( entry.getSection() == DSLMappingEntry.CONSEQUENCE ) {
+ } else if ( DSLMappingEntry.CONSEQUENCE.equals(entry.getSection()) ) {
this.consequence.add( entry );
} else {
// if any, then add to them both condition and consequence
Modified: labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/rule/builder/PatternBuilder.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/rule/builder/PatternBuilder.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-compiler/src/main/java/org/drools/rule/builder/PatternBuilder.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -861,7 +861,7 @@
final boolean reportError) {
FieldExtractor extractor = null;
- if ( objectType.getValueType() == ValueType.FACTTEMPLATE_TYPE ) {
+ if ( ValueType.FACTTEMPLATE_TYPE.equals(objectType.getValueType()) ) {
//@todo use extractor cache
final FactTemplate factTemplate = ((FactTemplateObjectType) objectType).getFactTemplate();
extractor = new FactTemplateFieldExtractor( factTemplate,
Modified: labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -170,6 +170,7 @@
5 );
workingMemory.insert( stilton );
+// workingMemory = SerializationHelper.serializeObject(workingMemory);
workingMemory.fireAllRules();
assertEquals( new Integer( 5 ),
@@ -211,7 +212,7 @@
final Cheese brie = new Cheese( "brie",
5 );
workingMemory.insert( brie );
-
+// workingMemory = SerializationHelper.serializeObject(workingMemory);
workingMemory.fireAllRules();
assertEquals( 2,
@@ -663,7 +664,7 @@
RuleBase ruleBase = getRuleBase();
ruleBase.addPackage( pkg );
-// ruleBase = SerializationHelper.serializeObject(ruleBase);
+ ruleBase = SerializationHelper.serializeObject(ruleBase);
WorkingMemory workingMemory = ruleBase.newStatefulSession();
final List list = new ArrayList();
Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseClassFieldExtractor.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -79,6 +79,8 @@
index = in.readInt();
fieldType = (Class)in.readObject();
valueType = (ValueType)in.readObject();
+ if (valueType != null)
+ valueType = ValueType.determineValueType(valueType.getClassType());
}
public void writeExternal(ObjectOutput out) throws IOException {
Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ClassObjectType.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ClassObjectType.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ClassObjectType.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -79,6 +79,8 @@
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
objectTypeClass = (Class)in.readObject();
valueType = (ValueType)in.readObject();
+ if (valueType != null)
+ valueType = ValueType.determineValueType(valueType.getClassType());
isEvent = in.readBoolean();
}
Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/FieldFactory.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/FieldFactory.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/FieldFactory.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -43,53 +43,53 @@
valueType = ValueType.NULL_TYPE;
}
- if ( valueType == ValueType.NULL_TYPE ) {
+ if ( ValueType.NULL_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( null );
- } else if ( valueType == ValueType.PCHAR_TYPE ) {
+ } else if ( ValueType.PCHAR_TYPE.equals(valueType) ) {
field = new LongFieldImpl( value.charAt( 0 ) );
- } else if ( valueType == ValueType.PBYTE_TYPE ) {
+ } else if ( ValueType.PBYTE_TYPE.equals(valueType) ) {
field = new LongFieldImpl( Long.parseLong( value ) );
- } else if ( valueType == ValueType.PSHORT_TYPE ) {
+ } else if ( ValueType.PSHORT_TYPE.equals(valueType) ) {
field = new LongFieldImpl( Long.parseLong( value ) );
- } else if ( valueType == ValueType.PINTEGER_TYPE ) {
+ } else if ( ValueType.PINTEGER_TYPE.equals(valueType) ) {
field = new LongFieldImpl( Long.parseLong( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.PLONG_TYPE ) {
+ } else if ( ValueType.PLONG_TYPE.equals(valueType) ) {
field = new LongFieldImpl( Long.parseLong( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.PFLOAT_TYPE ) {
+ } else if ( ValueType.PFLOAT_TYPE.equals(valueType) ) {
field = new DoubleFieldImpl( Float.parseFloat( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.PDOUBLE_TYPE ) {
+ } else if ( ValueType.PDOUBLE_TYPE.equals(valueType) ) {
field = new DoubleFieldImpl( Double.parseDouble( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.PBOOLEAN_TYPE ) {
+ } else if ( ValueType.PBOOLEAN_TYPE.equals(valueType) ) {
field = new BooleanFieldImpl( Boolean.valueOf( value ).booleanValue() );
- } else if ( valueType == ValueType.CHAR_TYPE ) {
+ } else if ( ValueType.CHAR_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new Character( value.charAt( 0 ) ) );
- } else if ( valueType == ValueType.BYTE_TYPE ) {
+ } else if ( ValueType.BYTE_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new Byte( value ) );
- } else if ( valueType == ValueType.SHORT_TYPE ) {
+ } else if ( ValueType.SHORT_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new Short( value ) );
- } else if ( valueType == ValueType.INTEGER_TYPE ) {
+ } else if ( ValueType.INTEGER_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new Integer( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.LONG_TYPE ) {
+ } else if ( ValueType.LONG_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new Long( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.FLOAT_TYPE ) {
+ } else if ( ValueType.FLOAT_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new Float( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.DOUBLE_TYPE ) {
+ } else if ( ValueType.DOUBLE_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new Double( stripNumericType( value ) ) );
- } else if ( valueType == ValueType.BOOLEAN_TYPE ) {
+ } else if ( ValueType.BOOLEAN_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( Boolean.valueOf( value ) );
- } else if ( valueType == ValueType.STRING_TYPE ) {
+ } else if ( ValueType.STRING_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value.intern() );
- } else if ( valueType == ValueType.DATE_TYPE ) {
+ } else if ( ValueType.DATE_TYPE.equals(valueType) ) {
//MN: I think its fine like this, seems to work !
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.ARRAY_TYPE ) {
+ } else if ( ValueType.ARRAY_TYPE.equals(valueType) ) {
//MN: I think its fine like this.
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.OBJECT_TYPE ) {
+ } else if ( ValueType.OBJECT_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.BIG_DECIMAL_TYPE ) {
+ } else if ( ValueType.BIG_DECIMAL_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new BigDecimal( value ) );
- } else if ( valueType == ValueType.BIG_INTEGER_TYPE ) {
+ } else if ( ValueType.BIG_INTEGER_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( new BigInteger( value ) );
}
@@ -103,85 +103,85 @@
valueType = ValueType.NULL_TYPE;
}
- if ( valueType == ValueType.NULL_TYPE ) {
+ if ( ValueType.NULL_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( null );
- } else if ( valueType == ValueType.PCHAR_TYPE ) {
+ } else if ( ValueType.PCHAR_TYPE.equals(valueType) ) {
if( value instanceof String && ((String)value).length() == 1 ) {
field = new LongFieldImpl( ((String) value).charAt(0) );
} else {
field = new LongFieldImpl( ((Character) value).charValue() );
}
- } else if ( valueType == ValueType.PBYTE_TYPE ) {
+ } else if ( ValueType.PBYTE_TYPE.equals(valueType) ) {
if( value instanceof String ) {
field = new LongFieldImpl( Byte.parseByte( (String) value) );
} else {
field = new LongFieldImpl( ((Number) value).byteValue() );
}
- } else if ( valueType == ValueType.PSHORT_TYPE ) {
+ } else if ( ValueType.PSHORT_TYPE.equals(valueType) ) {
if( value instanceof String ) {
field = new LongFieldImpl( Short.parseShort( (String) value) );
} else {
field = new LongFieldImpl( ((Number) value).shortValue() );
}
- } else if ( valueType == ValueType.PINTEGER_TYPE ) {
+ } else if ( ValueType.PINTEGER_TYPE.equals(valueType) ) {
if( value instanceof String ) {
field = new LongFieldImpl( Integer.parseInt( stripNumericType( (String) value ) ) );
} else {
field = new LongFieldImpl( ((Number) value).intValue() );
}
- } else if ( valueType == ValueType.PLONG_TYPE ) {
+ } else if ( ValueType.PLONG_TYPE.equals(valueType) ) {
if( value instanceof String ) {
field = new LongFieldImpl( Long.parseLong( stripNumericType( (String) value ) ) );
} else {
field = new LongFieldImpl( ((Number) value).longValue() );
}
- } else if ( valueType == ValueType.PFLOAT_TYPE ) {
+ } else if ( ValueType.PFLOAT_TYPE.equals(valueType) ) {
if( value instanceof String ) {
field = new DoubleFieldImpl( Float.parseFloat( stripNumericType( (String) value ) ) );
} else {
field = new DoubleFieldImpl( ((Number) value).floatValue() );
}
- } else if ( valueType == ValueType.PDOUBLE_TYPE ) {
+ } else if ( ValueType.PDOUBLE_TYPE.equals(valueType) ) {
if( value instanceof String ) {
field = new DoubleFieldImpl( Double.parseDouble( stripNumericType( (String) value ) ) );
} else {
field = new DoubleFieldImpl( ((Number) value).doubleValue() );
}
- } else if ( valueType == ValueType.PBOOLEAN_TYPE ) {
+ } else if ( ValueType.PBOOLEAN_TYPE.equals(valueType) ) {
if( value instanceof String ) {
field = new BooleanFieldImpl( Boolean.valueOf( (String) value).booleanValue() );
} else {
field = new BooleanFieldImpl( ((Boolean) value).booleanValue() );
}
- } else if ( valueType == ValueType.CHAR_TYPE ) {
+ } else if ( ValueType.CHAR_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.BYTE_TYPE ) {
+ } else if ( ValueType.BYTE_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.SHORT_TYPE ) {
+ } else if ( ValueType.SHORT_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.INTEGER_TYPE ) {
+ } else if ( ValueType.INTEGER_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.LONG_TYPE ) {
+ } else if ( ValueType.LONG_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.FLOAT_TYPE ) {
+ } else if ( ValueType.FLOAT_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.DOUBLE_TYPE ) {
+ } else if ( ValueType.DOUBLE_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.BOOLEAN_TYPE ) {
+ } else if ( ValueType.BOOLEAN_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.STRING_TYPE ) {
+ } else if ( ValueType.STRING_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.DATE_TYPE ) {
+ } else if ( ValueType.DATE_TYPE.equals(valueType) ) {
//MN: I think its fine like this, seems to work !
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.ARRAY_TYPE ) {
+ } else if ( ValueType.ARRAY_TYPE.equals(valueType) ) {
//MN: I think its fine like this.
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.OBJECT_TYPE ) {
+ } else if ( ValueType.OBJECT_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.BIG_DECIMAL_TYPE ) {
+ } else if ( ValueType.BIG_DECIMAL_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
- } else if ( valueType == ValueType.BIG_INTEGER_TYPE ) {
+ } else if ( ValueType.BIG_INTEGER_TYPE.equals(valueType) ) {
field = new ObjectFieldImpl( value );
}
Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ValueType.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ValueType.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/ValueType.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -203,8 +203,12 @@
public boolean equals(final Object object) {
if ( object == this ) {
return true;
+ } else if (object instanceof ValueType) {
+ ValueType that = (ValueType)object;
+ return classType == that.classType &&
+ simpleType == that.simpleType &&
+ (name == that.name || name != null && name.equals(that.name));
}
-
return false;
}
@@ -213,7 +217,9 @@
}
public boolean isNumber() {
- return (this.simpleType == SimpleValueType.INTEGER || this.simpleType == SimpleValueType.DECIMAL || this.simpleType == SimpleValueType.CHAR);
+ return (this.simpleType == SimpleValueType.INTEGER ||
+ this.simpleType == SimpleValueType.DECIMAL ||
+ this.simpleType == SimpleValueType.CHAR);
}
public boolean isIntegerNumber() {
Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -101,9 +101,9 @@
* @param constraint
*/
public void addConstraint(Constraint constraint) {
- if ( constraint.getType() == ConstraintType.ALPHA ) {
+ if ( ConstraintType.ALPHA.equals(constraint.getType())) {
this.addAlphaConstraint( (AlphaNodeFieldConstraint) constraint );
- } else if ( constraint.getType() == ConstraintType.BETA ) {
+ } else if ( ConstraintType.BETA.equals(constraint.getType())) {
this.addBetaConstraint( (BetaNodeFieldConstraint) constraint );
} else {
throw new RuntimeDroolsException( "Constraint type MUST be known in advance.");
Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/test/java/org/drools/common/DroolsObjectIOTest.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/test/java/org/drools/common/DroolsObjectIOTest.java 2008-03-13 20:41:55 UTC (rev 18941)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/test/java/org/drools/common/DroolsObjectIOTest.java 2008-03-13 20:44:18 UTC (rev 18942)
@@ -29,11 +29,17 @@
private static final String TEST_FILE = "test.dat";
private static final GroupElement testGroupElement = new GroupElement();
+ static class Test implements Serializable {
+ String str = TEST_FILE;
+ }
public void testFileIO() throws Exception {
File file = new File(getClass().getResource("DroolsObjectIOTest.class").getFile());
+ ByteArrayOutputStream bytes = new ByteArrayOutputStream();
+ new ObjectOutputStream(bytes).writeObject(new Test());
+ Test t = (Test)new ObjectInputStream(new ByteArrayInputStream(bytes.toByteArray())).readObject();
+ String str = TEST_FILE;
+ file = new File(file.getParent().replaceAll("%20", " "), str);
- file = new File(file.getParent().replaceAll("%20", " "), TEST_FILE);
-
DroolsObjectOutputStream out = new DroolsObjectOutputStream(new FileOutputStream(file));
out.writeObject(testGroupElement);
More information about the jboss-svn-commits
mailing list