[jboss-svn-commits] JBL Code SVN: r32016 - in labs/jbossrules/branches/factsConstraints_baunax_esteban: drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Mar 10 10:13:49 EST 2010
Author: eaa
Date: 2010-03-10 10:13:49 -0500 (Wed, 10 Mar 2010)
New Revision: 32016
Added:
labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/FactTypeFilter.java
labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/DefaultFieldDataProviderImpl.java
labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/predefined/
Modified:
labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/META-INF/MANIFEST.MF
labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java
labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/FieldDataProvider.java
Log:
Added default FieldDataProvider implementation.
Modified: labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/META-INF/MANIFEST.MF
===================================================================
--- labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/META-INF/MANIFEST.MF 2010-03-10 14:20:00 UTC (rev 32015)
+++ labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/META-INF/MANIFEST.MF 2010-03-10 15:13:49 UTC (rev 32016)
@@ -54,12 +54,12 @@
lang;version="5.1.0.SNAPSHOT"
Tool: Bnd-0.0.357
Bundle-Name: Drools :: Compiler
-Created-By: 1.6.0_18 (Sun Microsystems Inc.)
+Created-By: 1.6.0_14 (Sun Microsystems Inc.)
Require-Bundle: org.drools.core;bundle-version="5.1.0.SNAPSHOT"
Bundle-Vendor: JBoss Inc.
DynamicImport-Package: *
Bundle-Version: 5.1.0.SNAPSHOT
-Bnd-LastModified: 1266695776762
+Bnd-LastModified: 1268231103501
Bundle-Activator: org.drools.osgi.compiler.Activator
Bundle-ManifestVersion: 2
Bundle-Description: A rule production system
Added: labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/FactTypeFilter.java
===================================================================
--- labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/FactTypeFilter.java (rev 0)
+++ labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/FactTypeFilter.java 2010-03-10 15:13:49 UTC (rev 32016)
@@ -0,0 +1,15 @@
+package org.drools.guvnor.client.modeldriven;
+
+/**
+ *
+ * @author esteban.aliverti at gmail.com
+ */
+public interface FactTypeFilter {
+
+ /**
+ * Indicates if a fact should be filtered or not.
+ * @param originalFact the fact.
+ * @return if a fact should be filtered or not.
+ */
+ public boolean filter(String originalFact);
+}
Modified: labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java
===================================================================
--- labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java 2010-03-10 14:20:00 UTC (rev 32015)
+++ labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java 2010-03-10 15:13:49 UTC (rev 32016)
@@ -662,6 +662,15 @@
}
}
+ public void filterFactTypes(FactTypeFilter filter){
+
+ for (String factType : this.getFactTypes()) {
+ if (filter.filter(factType)){
+ this.modelFields.remove(factType);
+ }
+ }
+ }
+
public void setFieldsForTypes(Map<String,ModelField[]> fieldsForType){
this.modelFields.clear();
this.modelFields.putAll(fieldsForType);
Added: labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/DefaultFieldDataProviderImpl.java
===================================================================
--- labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/DefaultFieldDataProviderImpl.java (rev 0)
+++ labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/DefaultFieldDataProviderImpl.java 2010-03-10 15:13:49 UTC (rev 32016)
@@ -0,0 +1,63 @@
+package org.drools.factconstraint.dataprovider;
+
+import org.drools.factconstraint.*;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ *
+ * @author esteban.aliverti at gmail.com
+ */
+public abstract class DefaultFieldDataProviderImpl implements FieldDataProvider {
+
+ private String factType;
+ private String fieldName;
+ private Map<String, Object> arguments = new HashMap<String, Object>();
+
+ public DefaultFieldDataProviderImpl() {
+
+ }
+
+ protected Object getMandatoryArgument(String key) throws ArgumentNotSetException {
+ if (!this.arguments.containsKey(key)) {
+ throw new ArgumentNotSetException("The argument " + key + " doesn't exist.");
+ }
+
+ Object value = this.getArgumentValue(key);
+
+ if (value == null) {
+ throw new ArgumentNotSetException("The argument " + key + " is null.");
+ }
+
+ return value;
+ }
+
+ public void setFactType(String factType) {
+ this.factType = factType;
+ }
+
+ public void setFieldName(String fieldName) {
+ this.fieldName = fieldName;
+ }
+
+ public String getFactType() {
+ return factType;
+ }
+
+ public String getFieldName() {
+ return fieldName;
+ }
+
+ public String[] getArgumentKeys() {
+ return this.arguments.keySet().toArray(new String[this.arguments.size()]);
+ }
+
+ public Object getArgumentValue(String key) {
+ return this.arguments.get(key);
+ }
+
+ public void setArgumentValue(String key, Object value) {
+ this.arguments.put(key, value);
+ }
+
+}
Modified: labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/FieldDataProvider.java
===================================================================
--- labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/FieldDataProvider.java 2010-03-10 14:20:00 UTC (rev 32015)
+++ labs/jbossrules/branches/factsConstraints_baunax_esteban/drools-factconstraint/src/main/java/org/drools/factconstraint/dataprovider/FieldDataProvider.java 2010-03-10 15:13:49 UTC (rev 32016)
@@ -9,6 +9,11 @@
public interface FieldDataProvider {
public void setFactTYpe(String factType);
public void setFieldName(String fieldName);
+
+ public String[] getArgumentKeys();
+ public Object getArgumentValue(String key);
+ public void setArgumentValue(String key, Object value);
+
public Map<Object,String> getData();
public Object getDefault();
}
More information about the jboss-svn-commits
mailing list