[jboss-svn-commits] JBL Code SVN: r11627 - in labs/jbossrules/trunk/drools-jbrms/src: main/java/org/drools/brms/client/common and 17 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 3 03:47:31 EDT 2007


Author: michael.neale at jboss.com
Date: 2007-05-03 03:47:31 -0400 (Thu, 03 May 2007)
New Revision: 11627

Added:
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/images/view_source.gif
Modified:
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Info.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeatureConfigurator.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/ActionRetractFactWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/FactPatternWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/AssetAttachmentFileWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/ModelAttachmentFileWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageBuilderWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageExplorerWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageSnapshotView.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryService.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryServiceAsync.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/QuickFindWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentAssemblyError.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentPackageAssembler.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/FileUploadServlet.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/PackageDeploymentServlet.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/TestEnvironmentSessionHelper.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java
   labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/packages/SuggestionCompletionCacheTest.java
   labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java
   labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java
   labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/ContentPackageAssemblerTest.java
   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/repository/RulesRepositoryDecoratorTest.java
   labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/FileManagerUtilsTest.java
   labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/GWTNoSeamTest.java
   labs/jbossrules/trunk/drools-jbrms/src/test/java/org/jboss/seam/remoting/gwt/SubServiceThingie.java
Log:
JBRULES-828 can view source at package level

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Info.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Info.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Info.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,16 +1,7 @@
 package org.drools.brms.client;
 
-import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.ui.ClickListener;
-import com.google.gwt.user.client.ui.FlexTable;
 import com.google.gwt.user.client.ui.Frame;
-import com.google.gwt.user.client.ui.HTML;
-import com.google.gwt.user.client.ui.HasHorizontalAlignment;
-import com.google.gwt.user.client.ui.Image;
-import com.google.gwt.user.client.ui.Label;
-import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.gwt.user.client.ui.Widget;
-import com.google.gwt.user.client.ui.FlexTable.FlexCellFormatter;
 
 /**
  * Introduction page.

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeatureConfigurator.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeatureConfigurator.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeatureConfigurator.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -19,7 +19,7 @@
 		list.addSink(Info.init());
 		list.addSink(RulesFeature.init());
 		list.addSink(PackageManagementFeature.init());
-		list.addSink(RuleBases.init());
+		//list.addSink(RuleBases.init());
 		list.addSink(DeploymentManagementFeature.init());
 		list.addSink(AdminFeature.init());
 		

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,7 +1,5 @@
 package org.drools.brms.client.common;
 
-import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.ui.Button;
 import com.google.gwt.user.client.ui.ClickListener;
 import com.google.gwt.user.client.ui.DialogBox;
 import com.google.gwt.user.client.ui.HorizontalPanel;

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/ActionRetractFactWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/ActionRetractFactWidget.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/ActionRetractFactWidget.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -7,7 +7,6 @@
 
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.FlexTable;
-import com.google.gwt.user.client.ui.Label;
 
 /**
  * This is used when you want to retract a fact. It will provide a list of 

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/FactPatternWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/FactPatternWidget.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/FactPatternWidget.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,6 +1,5 @@
 package org.drools.brms.client.modeldriven.ui;
 
-import org.drools.brms.client.common.FieldEditListener;
 import org.drools.brms.client.common.FormStylePopup;
 import org.drools.brms.client.common.ImageButton;
 import org.drools.brms.client.common.Lbl;

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/AssetAttachmentFileWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/AssetAttachmentFileWidget.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/AssetAttachmentFileWidget.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -18,9 +18,7 @@
 import com.google.gwt.user.client.ui.FormPanel;
 import com.google.gwt.user.client.ui.FormSubmitCompleteEvent;
 import com.google.gwt.user.client.ui.FormSubmitEvent;
-import com.google.gwt.user.client.ui.HTML;
 import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.Hyperlink;
 import com.google.gwt.user.client.ui.Image;
 import com.google.gwt.user.client.ui.Label;
 import com.google.gwt.user.client.ui.TextBox;

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/ModelAttachmentFileWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/ModelAttachmentFileWidget.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/ModelAttachmentFileWidget.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,29 +1,8 @@
 package org.drools.brms.client.packages;
 
-import org.drools.brms.client.common.ErrorPopup;
-import org.drools.brms.client.common.FormStyleLayout;
-import org.drools.brms.client.common.HTMLFileManagerFields;
 import org.drools.brms.client.rpc.RuleAsset;
 import org.drools.brms.client.ruleeditor.RuleViewer;
 
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.Command;
-import com.google.gwt.user.client.DeferredCommand;
-import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.ui.Button;
-import com.google.gwt.user.client.ui.ClickListener;
-import com.google.gwt.user.client.ui.Composite;
-import com.google.gwt.user.client.ui.FileUpload;
-import com.google.gwt.user.client.ui.FormHandler;
-import com.google.gwt.user.client.ui.FormPanel;
-import com.google.gwt.user.client.ui.FormSubmitCompleteEvent;
-import com.google.gwt.user.client.ui.FormSubmitEvent;
-import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.Image;
-import com.google.gwt.user.client.ui.Label;
-import com.google.gwt.user.client.ui.TextBox;
-import com.google.gwt.user.client.ui.Widget;
-
 /**
  * This wraps a file uploader utility for model packages.
  * Model packages are jar files. 

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageBuilderWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageBuilderWidget.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageBuilderWidget.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -8,7 +8,6 @@
 import org.drools.brms.client.common.FormStyleLayout;
 import org.drools.brms.client.common.FormStylePopup;
 import org.drools.brms.client.common.GenericCallback;
-import org.drools.brms.client.common.InfoPopup;
 import org.drools.brms.client.common.LoadingPopup;
 import org.drools.brms.client.rpc.BuilderResult;
 import org.drools.brms.client.rpc.PackageConfigData;
@@ -21,19 +20,18 @@
 import com.google.gwt.user.client.DeferredCommand;
 import com.google.gwt.user.client.Window;
 import com.google.gwt.user.client.rpc.AsyncCallback;
-import com.google.gwt.user.client.ui.AbsolutePanel;
 import com.google.gwt.user.client.ui.Button;
 import com.google.gwt.user.client.ui.ClickListener;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.FlexTable;
 import com.google.gwt.user.client.ui.HTML;
 import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.Hyperlink;
 import com.google.gwt.user.client.ui.Image;
 import com.google.gwt.user.client.ui.Label;
 import com.google.gwt.user.client.ui.Panel;
 import com.google.gwt.user.client.ui.RadioButton;
 import com.google.gwt.user.client.ui.SimplePanel;
+import com.google.gwt.user.client.ui.TextArea;
 import com.google.gwt.user.client.ui.TextBox;
 import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.gwt.user.client.ui.Widget;
@@ -51,7 +49,7 @@
     private EditItemEvent editEvent;
 
     
-    public PackageBuilderWidget(PackageConfigData conf, EditItemEvent editEvent) {
+    public PackageBuilderWidget(final PackageConfigData conf, EditItemEvent editEvent) {
         layout = new FormStyleLayout("images/package_builder.png", "Verify and assemble package");
         this.conf = conf;
         this.editEvent = editEvent;
@@ -64,6 +62,14 @@
                 doBuild(buildResults);
             }
         } );
+        
+        Button buildSource = new Button("Show package source");
+        buildSource.addClickListener( new ClickListener() {
+            public void onClick(Widget w) {
+                doBuildSource(conf.uuid, conf.name);
+            }
+        } );
+        layout.addAttribute( "View source for package", buildSource );
         layout.addAttribute( "Build binary package:", b);
         layout.addRow( new HTML("<i><small>Building a package will collect all the assets, validate and compile into a deployable package.</small></i>") );
         layout.addRow( buildResults );
@@ -78,6 +84,43 @@
     
     
     /**
+     * Actually build the source, and display it.
+     */
+    public static void doBuildSource(final String uuid, final String name) {
+        LoadingPopup.showMessage( "Assembling package source..." );
+        DeferredCommand.add( new Command() {
+            public void execute() {
+                RepositoryServiceFactory.getService().buildPackageSource( uuid, new GenericCallback() {
+                    public void onSuccess(Object data) {
+                        String content = (String) data;
+                        showSource(content, name);
+                    }
+                });
+            }
+        } );
+    }
+
+
+
+    /**
+     * Popup the view source.
+     */
+    private static void showSource(String content, String name) {
+        FormStylePopup pop = new FormStylePopup("images/view_source.gif", "Viewing source for: " + name);
+        TextArea area = new TextArea();
+        area.setVisibleLines( 48 );
+        area.setWidth( "100%" );
+        area.setCharacterWidth( 80 );
+        pop.addRow( area );
+        area.setText( content );
+        pop.setPopupPosition( 30, 30 );
+        LoadingPopup.close();
+        pop.show();
+    }
+
+
+
+    /**
      * Actually do the building.
      * @param buildResults The panel to stuff the results in.
      */

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageExplorerWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageExplorerWidget.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageExplorerWidget.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -15,7 +15,6 @@
 import com.google.gwt.user.client.Command;
 import com.google.gwt.user.client.DeferredCommand;
 import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.ui.AbsolutePanel;
 import com.google.gwt.user.client.ui.Button;
 import com.google.gwt.user.client.ui.ClickListener;
 import com.google.gwt.user.client.ui.Composite;
@@ -362,7 +361,7 @@
         RepositoryServiceFactory.getService().loadPackageConfig( uuid, new GenericCallback() {
 
             public void onSuccess(Object data) {
-                PackageConfigData conf = (PackageConfigData) data;
+                final PackageConfigData conf = (PackageConfigData) data;
                 
                 StackPanel sp = new StackPanel();
                 
@@ -384,6 +383,13 @@
                     });
                     infoLayout.addAttribute( "Download package:", download );
                     infoLayout.addAttribute( "Package URI:", new Label(uri) );
+                    Button viewSource = new Button("View package source");
+                    viewSource.addClickListener( new ClickListener() {
+                        public void onClick(Widget w) {
+                            PackageBuilderWidget.doBuildSource( conf.uuid, conf.name );
+                        }
+                    } );
+                    infoLayout.addAttribute( "Show package source:", viewSource );
                 }
                 
                 if (!conf.isSnapshot) {

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageSnapshotView.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageSnapshotView.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageSnapshotView.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -19,6 +19,7 @@
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.FlexTable;
 import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.HasHorizontalAlignment;
 import com.google.gwt.user.client.ui.HasVerticalAlignment;
 import com.google.gwt.user.client.ui.HorizontalPanel;
 import com.google.gwt.user.client.ui.Image;
@@ -114,10 +115,12 @@
             }
             public void onTreeItemStateChanged(TreeItem a) {}
         });
-        
+        packages.setVerticalAlignment( HasVerticalAlignment.ALIGN_TOP );
+        packages.setHorizontalAlignment( HasHorizontalAlignment.ALIGN_LEFT );
         packages.add( refresh );
-        
+        packages.setStyleName( "snapshot-List" );
         layout.setWidget( 0, 0, packages );
+        layout.getCellFormatter().setVerticalAlignment( 0, 0, HasVerticalAlignment.ALIGN_TOP );
     }
 
     /**

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryService.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryService.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryService.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -219,4 +219,16 @@
      */
     public BuilderResult[] buildPackage(String packageUUID) throws SerializableException;
     
+    /**
+     * This will return the effective DRL for a package.
+     * This would be the equivalent if all the rules were written by hand in the one file.
+     * It may not actually be compiled this way in the implementation, so this is for display and 
+     * debugging assistance only.
+     * 
+     * It should still generate 
+     * 
+     * @throws SerializableException
+     */
+    public String buildPackageSource(String packageUUID) throws SerializableException;
+    
 }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryServiceAsync.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryServiceAsync.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rpc/RepositoryServiceAsync.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -44,5 +44,7 @@
     public void removeCategory(java.lang.String p0, AsyncCallback cb);
     public void loadSuggestionCompletionEngine(java.lang.String p0, AsyncCallback cb);
     public void buildPackage(java.lang.String p0, AsyncCallback cb);
+    public void buildPackageSource(java.lang.String p0, AsyncCallback cb);
     public void changeState(java.lang.String p0, java.lang.String p1, boolean p2, AsyncCallback cb);
+
 }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/QuickFindWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/QuickFindWidget.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/QuickFindWidget.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -10,7 +10,6 @@
 import org.drools.brms.client.rpc.TableDataResult;
 import org.drools.brms.client.rpc.TableDataRow;
 
-import com.google.gwt.user.client.Window;
 import com.google.gwt.user.client.ui.Button;
 import com.google.gwt.user.client.ui.CheckBox;
 import com.google.gwt.user.client.ui.ClickListener;

Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/images/view_source.gif
===================================================================
(Binary files differ)


Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/images/view_source.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -4,8 +4,6 @@
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.ObjectOutputStream;
-import java.io.PipedInputStream;
-import java.io.PipedOutputStream;
 import java.text.DateFormat;
 import java.util.ArrayList;
 import java.util.Calendar;
@@ -17,7 +15,6 @@
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import javax.jcr.PathNotFoundException;
 import javax.jcr.RepositoryException;
 
 import org.apache.log4j.Logger;
@@ -49,7 +46,6 @@
 import org.drools.repository.RulesRepositoryException;
 import org.drools.repository.StateItem;
 import org.drools.repository.VersionableItem;
-import org.drools.rule.Package;
 import org.jboss.seam.annotations.AutoCreate;
 import org.jboss.seam.annotations.In;
 import org.jboss.seam.annotations.Name;
@@ -676,4 +672,11 @@
 
         }
     }
+
+    @WebRemote
+    public String buildPackageSource(String packageUUID) throws SerializableException {
+        PackageItem item = repository.loadPackageByUUID( packageUUID );
+        ContentPackageAssembler asm = new ContentPackageAssembler(item, false);
+        return asm.getDRL();
+    }
 }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentAssemblyError.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentAssemblyError.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentAssemblyError.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,6 +1,5 @@
 package org.drools.brms.server.builder;
 
-import org.drools.repository.PackageItem;
 import org.drools.repository.VersionableItem;
 
 /**

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentPackageAssembler.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentPackageAssembler.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/ContentPackageAssembler.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -196,7 +196,7 @@
     public String getDRL() {
         StringBuffer src = new StringBuffer();
         src.append( "package " + this.pkg.getName() + "\n");
-        src.append( this.pkg.getHeader() + "\n");
+        src.append( this.pkg.getHeader() + "\n\n");
         
         
         //now we load up the DSL files
@@ -211,7 +211,7 @@
         AssetItemIterator it = this.pkg.listAssetsByFormat( new String[] {AssetFormats.FUNCTION} );
         while(it.hasNext()) {
             AssetItem func = (AssetItem) it.next();
-            src.append( func.getContent() + "\n" );
+            src.append( func.getContent() + "\n\n" );
         }        
         
         //now the rules

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/FileUploadServlet.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/FileUploadServlet.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/FileUploadServlet.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -8,19 +8,13 @@
 import javax.jcr.PathNotFoundException;
 import javax.jcr.RepositoryException;
 import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.drools.brms.client.admin.BackupManager;
 import org.drools.brms.client.common.HTMLFileManagerFields;
-import org.drools.brms.client.packages.ModelAttachmentFileWidget;
 import org.drools.brms.server.util.FileManagerUtils;
 import org.drools.brms.server.util.FormData;
-import org.drools.brms.server.util.TestEnvironmentSessionHelper;
 import org.drools.repository.RulesRepository;
-import org.jboss.seam.Component;
-import org.jboss.seam.contexts.Contexts;
 
 /**
  * Files can be uploaded as part of the repo (eg model classes, spreadsheets).

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/PackageDeploymentServlet.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/PackageDeploymentServlet.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/files/PackageDeploymentServlet.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -7,11 +7,6 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.drools.brms.client.common.HTMLFileManagerFields;
-import org.drools.brms.server.util.FileManagerUtils;
-import org.drools.brms.server.util.FormData;
-import org.drools.repository.RulesRepository;
-
 /**
  * This servlet deals with providing packages in binary form.
  *   

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/TestEnvironmentSessionHelper.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/TestEnvironmentSessionHelper.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/TestEnvironmentSessionHelper.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -2,17 +2,13 @@
 
 import java.io.File;
 
-import javax.jcr.LoginException;
 import javax.jcr.Repository;
-import javax.jcr.RepositoryException;
 import javax.jcr.Session;
 import javax.jcr.SimpleCredentials;
-import javax.servlet.http.HttpSession;
 
 import org.drools.repository.JCRRepositoryConfigurator;
 import org.drools.repository.JackrabbitRepositoryConfigurator;
 import org.drools.repository.RepositorySessionUtil;
-import org.drools.repository.RulesRepository;
 import org.drools.repository.RulesRepositoryAdministrator;
 
 /**

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTRemoteServiceServlet.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -16,14 +16,6 @@
  * the License.
  */
 
-import com.google.gwt.user.client.rpc.RemoteService;
-import com.google.gwt.user.client.rpc.SerializableException;
-import com.google.gwt.user.client.rpc.SerializationException;
-import com.google.gwt.user.server.rpc.impl.ServerSerializableTypeOracle;
-import com.google.gwt.user.server.rpc.impl.ServerSerializableTypeOracleImpl;
-import com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader;
-import com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter;
-
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
@@ -43,6 +35,14 @@
 
 import org.jboss.seam.remoting.gwt.GWTToSeamAdapter.ReturnedObject;
 
+import com.google.gwt.user.client.rpc.RemoteService;
+import com.google.gwt.user.client.rpc.SerializableException;
+import com.google.gwt.user.client.rpc.SerializationException;
+import com.google.gwt.user.server.rpc.impl.ServerSerializableTypeOracle;
+import com.google.gwt.user.server.rpc.impl.ServerSerializableTypeOracleImpl;
+import com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader;
+import com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter;
+
 /**
  * 
  * @author @hacker Michael Neale

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/packages/SuggestionCompletionCacheTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/packages/SuggestionCompletionCacheTest.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/packages/SuggestionCompletionCacheTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,11 +1,11 @@
 package org.drools.brms.client.packages;
 
+import junit.framework.TestCase;
+
 import org.drools.brms.client.modeldriven.SuggestionCompletionEngine;
 
 import com.google.gwt.user.client.Command;
 
-import junit.framework.TestCase;
-
 public class SuggestionCompletionCacheTest extends TestCase {
 
     private boolean executed;

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -9,15 +9,12 @@
 
 import org.drools.Person;
 import org.drools.RuleBase;
-import org.drools.RuleBaseFactory;
 import org.drools.StatelessSession;
 import org.drools.brms.client.common.AssetFormats;
 import org.drools.brms.client.modeldriven.SuggestionCompletionEngine;
 import org.drools.brms.client.modeldriven.brxml.ActionFieldValue;
 import org.drools.brms.client.modeldriven.brxml.ActionSetField;
 import org.drools.brms.client.modeldriven.brxml.FactPattern;
-import org.drools.brms.client.modeldriven.brxml.IAction;
-import org.drools.brms.client.modeldriven.brxml.IPattern;
 import org.drools.brms.client.modeldriven.brxml.RuleModel;
 import org.drools.brms.client.rpc.BuilderResult;
 import org.drools.brms.client.rpc.PackageConfigData;
@@ -1030,6 +1027,40 @@
         assertNull(results);
         
     }
+    
+    public void testPackageSource() throws Exception {
+        ServiceImplementation impl = getService();
+        RulesRepository repo = impl.repository;
+        
+        //create our package
+        PackageItem pkg = repo.createPackage( "testPackageSource", "" );
+        pkg.updateHeader( "import org.goo.Ber" );
+        AssetItem rule1 = pkg.addAsset( "rule_1", "" );
+        rule1.updateFormat( AssetFormats.DRL );
+        rule1.updateContent( "rule 'rule1' \n when p:Person() \n then p.setAge(42); \n end"); 
+        rule1.checkin( "" );
+        repo.save();
+        
+        AssetItem func = pkg.addAsset( "funky", "" );
+        func.updateFormat( AssetFormats.FUNCTION );
+        func.updateContent( "this is a func" );
+        func.checkin( "" );
+        
+        String drl = impl.buildPackageSource( pkg.getUUID() );
+        assertNotNull(drl);
+        
+        assertTrue(drl.indexOf( "import org.goo.Ber" ) > -1);
+        assertTrue(drl.indexOf( "package testPackageSource" ) > -1);
+        assertTrue(drl.indexOf( "rule 'rule1'" ) > -1);
+        assertTrue(drl.indexOf( "this is a func" ) > -1);
+        assertTrue(drl.indexOf( "this is a func" ) < drl.indexOf( "rule 'rule1'" ));
+        assertTrue(drl.indexOf( "package testPackageSource" ) < drl.indexOf( "this is a func" ));
+        assertTrue(drl.indexOf( "package testPackageSource" ) < drl.indexOf( "import org.goo.Ber" ));
+        
+        
+        
+        
+    }
 
     private ServiceImplementation getService() throws Exception {
         ServiceImplementation impl = new ServiceImplementation();

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -7,10 +7,7 @@
 
 import junit.framework.TestCase;
 
-import org.drools.lang.descr.AndDescr;
 import org.drools.lang.descr.PackageDescr;
-import org.drools.lang.descr.PatternDescr;
-import org.drools.lang.descr.RuleDescr;
 import org.drools.rule.Package;
 
 public class BRMSPackageBuilderTest extends TestCase {

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/ContentPackageAssemblerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/ContentPackageAssemblerTest.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/ContentPackageAssemblerTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -15,7 +15,6 @@
 import org.drools.repository.PackageItem;
 import org.drools.repository.RulesRepository;
 import org.drools.rule.Package;
-import org.drools.util.BinaryRuleBaseLoader;
 
 /**
  * This will unit test package assembly into a binary.

Modified: 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	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/contenthandler/ContentHandlerTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,9 +1,9 @@
 package org.drools.brms.server.contenthandler;
 
+import junit.framework.TestCase;
+
 import org.drools.brms.client.common.AssetFormats;
 
-import junit.framework.TestCase;
-
 public class ContentHandlerTest extends TestCase {
 
     public void testContentFormat() {

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/repository/RulesRepositoryDecoratorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/repository/RulesRepositoryDecoratorTest.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/repository/RulesRepositoryDecoratorTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,9 +1,5 @@
 package org.drools.brms.server.repository;
 
-import javax.jcr.Session;
-
-import org.drools.repository.RulesRepository;
-
 import junit.framework.TestCase;
 
 public class RulesRepositoryDecoratorTest extends TestCase {

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/FileManagerUtilsTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/FileManagerUtilsTest.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/FileManagerUtilsTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -7,15 +7,11 @@
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
 
 import junit.framework.TestCase;
 
 import org.apache.commons.fileupload.FileItem;
 import org.drools.brms.client.packages.PackageSnapshotView;
-import org.drools.brms.server.builder.ContentPackageAssembler;
-import org.drools.brms.server.files.DeploymentURIHelperTest;
-import org.drools.brms.server.files.PackageDeploymentURIHelper;
 import org.drools.repository.AssetItem;
 import org.drools.repository.PackageItem;
 import org.drools.repository.RulesRepository;

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/GWTNoSeamTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/GWTNoSeamTest.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/GWTNoSeamTest.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,10 +1,10 @@
 package org.drools.brms.server.util;
 
+import junit.framework.TestCase;
+
 import org.drools.brms.server.ServiceImplementation;
 import org.jboss.seam.remoting.gwt.GWTToSeamAdapter;
 
-import junit.framework.TestCase;
-
 public class GWTNoSeamTest extends TestCase {
 
     /**

Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/jboss/seam/remoting/gwt/SubServiceThingie.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/jboss/seam/remoting/gwt/SubServiceThingie.java	2007-05-03 06:28:13 UTC (rev 11626)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/jboss/seam/remoting/gwt/SubServiceThingie.java	2007-05-03 07:47:31 UTC (rev 11627)
@@ -1,6 +1,5 @@
 package org.jboss.seam.remoting.gwt;
 
-import org.jboss.seam.annotations.WebRemote;
 
 public class SubServiceThingie extends MyServiceThingie {
 




More information about the jboss-svn-commits mailing list