[jboss-svn-commits] JBL Code SVN: r10958 - in labs/jbossrules/trunk/drools-jbrms/src: main/java/org/drools/brms/server and 5 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Apr 12 23:56:08 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-04-12 23:56:08 -0400 (Thu, 12 Apr 2007)
New Revision: 10958
Added:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/AssetAssembler.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/PackageAssembler.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/package.html
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DRLFileContentHandler.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLDefinitionContentHandler.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/FunctionContentHandler.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/IRuleAsset.java
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/assembler/
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/assembler/PackageAssemblerTest.java
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/contenthandler/
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/contenthandler/ContentHandlerTest.java
Modified:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/ContentHandler.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLRuleContentHandler.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/PlainTextContentHandler.java
Log:
JBRULES-773 BRMS assembler
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css 2007-04-13 02:23:23 UTC (rev 10957)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css 2007-04-13 03:56:08 UTC (rev 10958)
@@ -341,6 +341,10 @@
background-color: #ccc;
}
+.category-explorer-Tree {
+ width: 100%;
+}
+
.rule-warning-Popup {
background-color: yellow;
border: 1px solid #aaaa99;
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/AssetAssembler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/AssetAssembler.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/AssetAssembler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,12 @@
+package org.drools.brms.server.assembler;
+
+import org.drools.repository.AssetItem;
+import org.drools.repository.PackageItem;
+
+public class AssetAssembler {
+
+ public void process(AssetItem item, PackageItem pkg) {
+
+ }
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/AssetAssembler.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/PackageAssembler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/PackageAssembler.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/PackageAssembler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,39 @@
+package org.drools.brms.server.assembler;
+
+import org.drools.lang.descr.PackageDescr;
+import org.drools.repository.PackageItem;
+import org.drools.rule.Package;
+
+public class PackageAssembler {
+
+
+ public void parsePackage(PackageItem pkgSource) {
+
+
+ }
+
+
+ public String getPackageDRL() {
+ return null;
+ }
+
+ public PackageDescr getAST() {
+ return null;
+ }
+
+ public Package getBinaryPackage() {
+ return null;
+ }
+
+
+ //OK OK, will need error handling...
+ public boolean hasErrors() {
+ return false;
+ }
+
+ public String[] listErrors() {
+ return null;
+ }
+
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/PackageAssembler.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/package.html
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/package.html (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/package.html 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,3 @@
+<body>
+ This package contains utilities for building and validating rule assets in the BRMS.
+</body>
\ No newline at end of file
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/assembler/package.html
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/ContentHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/ContentHandler.java 2007-04-13 02:23:23 UTC (rev 10957)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/ContentHandler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -24,11 +24,11 @@
handlers = new HashMap() {{
put(AssetFormats.BUSINESS_RULE, new BRXMLContentHandler());
put(AssetFormats.DSL_TEMPLATE_RULE, new DSLRuleContentHandler());
- put(AssetFormats.DRL, new PlainTextContentHandler());
- put(AssetFormats.DSL, new PlainTextContentHandler());
- put(AssetFormats.FUNCTION, new PlainTextContentHandler());
+ put(AssetFormats.DRL, new DRLFileContentHandler());
+ put(AssetFormats.DSL, new DSLDefinitionContentHandler());
+ put(AssetFormats.FUNCTION, new FunctionContentHandler());
put(AssetFormats.MODEL, new ModelContentHandler());
- put(AssetFormats.TECHNICAL_RULE, new PlainTextContentHandler());
+ put(AssetFormats.TECHNICAL_RULE, new DRLFileContentHandler());
}};
}
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DRLFileContentHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DRLFileContentHandler.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DRLFileContentHandler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,5 @@
+package org.drools.brms.server.contenthandler;
+
+public class DRLFileContentHandler extends PlainTextContentHandler {
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DRLFileContentHandler.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLDefinitionContentHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLDefinitionContentHandler.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLDefinitionContentHandler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,5 @@
+package org.drools.brms.server.contenthandler;
+
+public class DSLDefinitionContentHandler extends PlainTextContentHandler {
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLDefinitionContentHandler.java
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLRuleContentHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLRuleContentHandler.java 2007-04-13 02:23:23 UTC (rev 10957)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/DSLRuleContentHandler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -7,7 +7,7 @@
import com.google.gwt.user.client.rpc.SerializableException;
-public class DSLRuleContentHandler extends ContentHandler {
+public class DSLRuleContentHandler extends ContentHandler implements IRuleAsset {
public void retrieveAssetContent(RuleAsset asset,
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/FunctionContentHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/FunctionContentHandler.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/FunctionContentHandler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,5 @@
+package org.drools.brms.server.contenthandler;
+
+public class FunctionContentHandler extends PlainTextContentHandler {
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/FunctionContentHandler.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/IRuleAsset.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/IRuleAsset.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/IRuleAsset.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,11 @@
+package org.drools.brms.server.contenthandler;
+
+/**
+ * This inferface indicates that an asset is a rule asset content type,
+ * ie not a model, dsl etc that supports package compilation.
+ *
+ * @author Michael Neale
+ */
+public interface IRuleAsset {
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/IRuleAsset.java
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/PlainTextContentHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/PlainTextContentHandler.java 2007-04-13 02:23:23 UTC (rev 10957)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/contenthandler/PlainTextContentHandler.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -7,7 +7,7 @@
import com.google.gwt.user.client.rpc.SerializableException;
-public class PlainTextContentHandler extends ContentHandler {
+public abstract class PlainTextContentHandler extends ContentHandler {
public void retrieveAssetContent(RuleAsset asset,
Added: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/assembler/PackageAssemblerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/assembler/PackageAssemblerTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/assembler/PackageAssemblerTest.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,64 @@
+package org.drools.brms.server.assembler;
+
+import java.io.ByteArrayOutputStream;
+import java.io.StringReader;
+import java.util.Iterator;
+import java.util.jar.JarEntry;
+import java.util.jar.JarInputStream;
+
+import org.drools.brms.client.rpc.PackageConfigData;
+import org.drools.compiler.PackageBuilder;
+import org.drools.compiler.PackageBuilderConfiguration;
+import org.drools.resource.util.ByteArrayClassLoader;
+
+import junit.framework.TestCase;
+
+public class PackageAssemblerTest extends TestCase {
+
+ public void testDummy() {}
+
+ public void testPartialPackage() throws Exception {
+ ByteArrayClassLoader loader = new ByteArrayClassLoader( this.getClass().getClassLoader() );
+
+ JarInputStream jis = new JarInputStream( this.getClass().getResourceAsStream( "/billasurf.jar" ) );
+ JarEntry entry = null;
+ byte[] buf = new byte[1024];
+ int len = 0;
+ while ( (entry = jis.getNextJarEntry()) != null ) {
+ if ( !entry.isDirectory() ) {
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ while ( (len = jis.read( buf )) >= 0 ) {
+ out.write( buf, 0, len );
+ }
+ loader.addResource( entry.getName(), out.toByteArray() );
+ }
+ }
+
+ //now we have a loader
+
+ PackageBuilderConfiguration config = new PackageBuilderConfiguration();
+ config.setClassLoader( loader );
+
+ assertSame(loader, config.getClassLoader());
+
+
+ PackageBuilder builder = new PackageBuilder(config);
+
+
+
+ String header = "package foo.bar\n import com.billasurf.Person\n import com.billasurf.Board";
+ builder.addPackageFromDrl( new StringReader(header) );
+ assertFalse(builder.hasErrors());
+
+
+
+ String ruleAtom = "package foo.bar rule foo \n when \n Person() \n then \n System.out.println(42); end";
+ builder.addPackageFromDrl( new StringReader(ruleAtom) );
+ if (builder.hasErrors()) {
+ System.err.println(builder.getErrors()[0].getMessage());
+ }
+ assertFalse(builder.hasErrors());
+
+ }
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/assembler/PackageAssemblerTest.java
___________________________________________________________________
Name: svn:eol-style
+ native
Added: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/contenthandler/ContentHandlerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/contenthandler/ContentHandlerTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/contenthandler/ContentHandlerTest.java 2007-04-13 03:56:08 UTC (rev 10958)
@@ -0,0 +1,16 @@
+package org.drools.brms.server.contenthandler;
+
+import org.drools.brms.client.common.AssetFormats;
+
+import junit.framework.TestCase;
+
+public class ContentHandlerTest extends TestCase {
+
+ public void testContentFormat() {
+ assertTrue(ContentHandler.getHandler( AssetFormats.DRL ) instanceof DRLFileContentHandler);
+ assertTrue(ContentHandler.getHandler( AssetFormats.DSL ) instanceof DSLDefinitionContentHandler);
+ assertTrue(ContentHandler.getHandler( AssetFormats.BUSINESS_RULE ) instanceof BRXMLContentHandler);
+
+ }
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/contenthandler/ContentHandlerTest.java
___________________________________________________________________
Name: svn:eol-style
+ native
More information about the jboss-svn-commits
mailing list