[jboss-svn-commits] JBL Code SVN: r21388 - in labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor: server/contenthandler and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 6 16:15:10 EDT 2008


Author: arhan
Date: 2008-08-06 16:15:10 -0400 (Wed, 06 Aug 2008)
New Revision: 21388

Modified:
   labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/client/ruleeditor/XmlFileWidget.java
   labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/server/contenthandler/XmlFileHandler.java
Log:
GSOC2008: xml editor and handler

Modified: labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/client/ruleeditor/XmlFileWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/client/ruleeditor/XmlFileWidget.java	2008-08-06 14:31:09 UTC (rev 21387)
+++ labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/client/ruleeditor/XmlFileWidget.java	2008-08-06 20:15:10 UTC (rev 21388)
@@ -1,24 +1,33 @@
 package org.drools.guvnor.client.ruleeditor;
 
-import com.google.gwt.core.client.GWT;
-import org.drools.guvnor.client.common.HTMLFileManagerFields;
+import com.google.gwt.user.client.ui.TextArea;
 import org.drools.guvnor.client.packages.AssetAttachmentFileWidget;
 import org.drools.guvnor.client.rpc.RuleAsset;
+import org.drools.guvnor.client.rpc.RuleContentText;
 
 /**
- *
+ * xml content editor
  */
-public class XmlFileWidget extends AssetAttachmentFileWidget {
+public class XmlFileWidget extends AssetAttachmentFileWidget implements SaveEventListener {
 
     RuleAsset asset;
+    private TextArea text;
 
     public XmlFileWidget(final RuleAsset asset, final RuleViewer viewer) {
         super(asset, viewer);
         this.asset = asset;
+        text = new TextArea();
+        text.setHeight("300px");
+        text.setWidth("600px");
 
-        //TODO: reflect xml tree and a text area containing the textual XML representation
-        //TODO: 
+        if (asset.content != null) {
+            RuleContentText xmlContent = (RuleContentText) asset.content;
+            text.setText(xmlContent.content);
+        }
 
+        layout.addRow(text);
+
+        //TODO: add tree representation of the document 
     }
 
     public String getIcon() {
@@ -28,4 +37,16 @@
     public String getOverallStyleName() {
         return "decision-Table-upload";      //TODO: define style?
     }
-}
+
+    public void onSave() {
+        //TODO: validate if the XML is valid 
+
+        RuleContentText rct = new RuleContentText();
+        rct.content = text.getText();
+        asset.content = rct;
+    }
+
+    public void onAfterSave() {
+
+    }
+}
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/server/contenthandler/XmlFileHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/server/contenthandler/XmlFileHandler.java	2008-08-06 14:31:09 UTC (rev 21387)
+++ labs/jbossrules/trunk/drools-guvnor/modules/xml/src/org/drools/guvnor/server/contenthandler/XmlFileHandler.java	2008-08-06 20:15:10 UTC (rev 21388)
@@ -1,21 +1,25 @@
 package org.drools.guvnor.server.contenthandler;
 
+import com.google.gwt.user.client.rpc.SerializableException;
 import org.drools.guvnor.client.rpc.RuleAsset;
+import org.drools.guvnor.client.rpc.RuleContentText;
+import org.drools.repository.AssetItem;
 import org.drools.repository.PackageItem;
-import org.drools.repository.AssetItem;
-import com.google.gwt.user.client.rpc.SerializableException;
 
 /**
- * TODO: put the file contents to RulesAsset.content
+ * @author Anton Arhipov
  */
-public class XmlFileHandler extends ContentHandler{
+public class XmlFileHandler extends ContentHandler {
     public void retrieveAssetContent(RuleAsset asset, PackageItem pkg, AssetItem item)
             throws SerializableException {
-
+        RuleContentText text = new RuleContentText();
+        text.content = item.getContent();
+        asset.content = text;
     }
 
     public void storeAssetContent(RuleAsset asset, AssetItem repoAsset)
             throws SerializableException {
-
+        RuleContentText text = (RuleContentText) asset.content;
+        repoAsset.updateContent(text.content);
     }
 }




More information about the jboss-svn-commits mailing list