[jboss-svn-commits] JBL Code SVN: r32482 - in labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega: drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt and 8 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Apr 8 16:43:25 EDT 2010
Author: baunax
Date: 2010-04-08 16:43:23 -0400 (Thu, 08 Apr 2010)
New Revision: 32482
Added:
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleTemplateEditor.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTXMLPersistence.java
Modified:
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/RuleModel.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/TemplateModel.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ActionToolbar.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/WorkingSetEditor.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/TemplateModelHandler.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTPersistence.java
labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/test/java/org/drools/guvnor/server/util/BRDRTPersistenceTest.java
Log:
- Edition of the rule template
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/RuleModel.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/RuleModel.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/RuleModel.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -19,6 +19,8 @@
public IPattern[] lhs = new IPattern[0];
public IAction[] rhs = new IAction[0];
+ public RuleModel() {
+ }
/**
* This will return the fact pattern that a variable is bound to.
*
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/TemplateModel.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/TemplateModel.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/TemplateModel.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -1,7 +1,9 @@
package org.drools.guvnor.client.modeldriven.dt;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.drools.guvnor.client.modeldriven.brl.ActionFieldValue;
import org.drools.guvnor.client.modeldriven.brl.ActionInsertFact;
@@ -28,8 +30,17 @@
table.add(row);
}
- public List<String> getInterpolationVariables() {
- List<String> result = new ArrayList<String>();
+ public String[] getInterpolationVariablesList() {
+ Map<String, Integer> vars = getInterpolationVariables();
+ String[] ret = new String[vars.size()];
+ for (Map.Entry<String, Integer> entry: vars.entrySet()) {
+ ret[entry.getValue()] = entry.getKey();
+ }
+ return ret;
+ }
+
+ public Map<String, Integer> getInterpolationVariables() {
+ Map<String, Integer> result = new HashMap<String, Integer>();
for (IPattern pattern : this.lhs) {
if (pattern instanceof FactPattern) {
FactPattern fact = (FactPattern) pattern;
@@ -37,7 +48,7 @@
if (fc instanceof ISingleFieldConstraint) {
ISingleFieldConstraint con = (ISingleFieldConstraint) fc;
if (ISingleFieldConstraint.TYPE_TEMPLATE == con.constraintValueType) {
- result.add(con.value);
+ result.put(con.value, result.size());
}
}
}
@@ -48,7 +59,7 @@
ActionInsertFact fact = (ActionInsertFact) action;
for (ActionFieldValue afv : fact.fieldValues) {
if (afv.nature == ActionFieldValue.TYPE_TEMPLATE ) {
- result.add(afv.value);
+ result.put(afv.value, result.size());
}
}
}
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -624,7 +624,6 @@
buf.append(fieldValues[i].value.substring(1));
} else if (SuggestionCompletionEngine.TYPE_STRING.equals(fieldValues[i].type)) {
buf.append("\"");
-
buf.append(generateFieldValue(fieldValues[i]));
buf.append("\"");
} else {
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -19,7 +19,7 @@
private XStream xt;
private static final BRLPersistence INSTANCE = new BRXMLPersistence();
- private BRXMLPersistence() {
+ protected BRXMLPersistence() {
this.xt = new XStream( new DomDriver() );
this.xt.alias( "rule",
@@ -108,12 +108,9 @@
* @see org.drools.guvnor.server.util.BRLPersistence#toModel(java.lang.String)
*/
public RuleModel unmarshal(final String xml) {
- if ( xml == null ) {
- return new RuleModel();
+ if ( xml == null || xml.trim().length() == 0) {
+ return createEmptyModel();
}
- if ( xml.trim().equals( "" ) ) {
- return new RuleModel();
- }
RuleModel rm = (RuleModel) this.xt.fromXML( xml );
//Fixme , hack for a upgrade to add Metadata
if ( rm.metadataList == null ) {
@@ -125,6 +122,10 @@
return rm;
}
+ protected RuleModel createEmptyModel() {
+ return new RuleModel();
+ }
+
/**
*
* The way method calls are done changed after 5.0.0.CR1 so every rule done before that needs to be updated.
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -81,7 +81,7 @@
/**
* The following group the assets together for lists, helpers etc...
*/
- public static final String[] BUSINESS_RULE_FORMATS = new String[]{AssetFormats.BUSINESS_RULE, AssetFormats.DSL_TEMPLATE_RULE, AssetFormats.DECISION_SPREADSHEET_XLS, AssetFormats.DECISION_TABLE_GUIDED};
+ public static final String[] BUSINESS_RULE_FORMATS = new String[]{AssetFormats.BUSINESS_RULE, AssetFormats.DSL_TEMPLATE_RULE, AssetFormats.DECISION_SPREADSHEET_XLS, AssetFormats.DECISION_TABLE_GUIDED, AssetFormats.RULE_TEMPLATE};
/**
* These define assets that are really package level "things". Used to decide when to flush any caches.
@@ -93,13 +93,11 @@
* Package dependencies are needed before the package is validated, and any rule assets are processed.
*/
public static boolean isPackageDependency(String format) {
- for ( int i = 0; i < PACKAGE_DEPENCENCIES.length; i++ ) {
- if (PACKAGE_DEPENCENCIES[i].equals( format )) {
+ for (String dep : PACKAGE_DEPENCENCIES) {
+ if (dep.equals( format )) {
return true;
}
}
return false;
}
-
-
}
\ No newline at end of file
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -470,7 +470,7 @@
attributeConfigWidget.add( hp );
}
for ( int i = 0; i < dt.getMetadataCols().size(); i++ ) {
- MetadataCol at = (MetadataCol) dt.getMetadataCols().get( i );
+ MetadataCol at = dt.getMetadataCols().get( i );
HorizontalPanel hp = new HorizontalPanel();
hp.add( new HTML( " " ) ); //NON-NLS
hp.add( removeMeta( at ) );
@@ -770,8 +770,7 @@
}
};
- colMap.put( attr.attr,
- attr );
+ colMap.put( attr.attr, attr );
colCount++;
}
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -55,6 +55,7 @@
import org.drools.guvnor.client.modeldriven.brl.RuleMetadata;
import org.drools.guvnor.client.modeldriven.brl.RuleModel;
import org.drools.guvnor.client.packages.SuggestionCompletionCache;
+import org.drools.guvnor.client.rpc.AnalysisReportLine;
import org.drools.guvnor.client.rpc.RuleAsset;
import org.drools.guvnor.client.ruleeditor.RuleViewer;
import org.drools.guvnor.client.security.Capabilities;
@@ -62,7 +63,6 @@
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.ClickListener;
@@ -80,14 +80,6 @@
import com.google.gwt.user.client.ui.Widget;
import com.gwtext.client.core.ExtElement;
import com.gwtext.client.util.Format;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Set;
-import org.drools.guvnor.client.common.LoadingPopup;
-import org.drools.guvnor.client.packages.WorkingSetManager;
-import org.drools.guvnor.client.rpc.AnalysisReport;
-import org.drools.guvnor.client.rpc.AnalysisReportLine;
-import org.drools.guvnor.client.rpc.RepositoryServiceFactory;
/**
* This is the parent widget that contains the model based rule builder.
@@ -103,7 +95,6 @@
private boolean showingOptions = false;
private int currentLayoutRow = 0;
private String packageName;
- private RuleAsset asset;
private ModellerWidgetFactory widgetFactory;
public RuleModeller(RuleAsset asset, RuleViewer viewer, ModellerWidgetFactory widgetFactory) {
@@ -111,7 +102,6 @@
}
public RuleModeller(RuleAsset asset, ModellerWidgetFactory widgetFactory) {
- this.asset = asset;
this.model = (RuleModel) asset.content;
this.packageName = asset.metaData.packageName;
@@ -487,7 +477,7 @@
// The list of facts
//
final String[] facts = completions.getFactTypes();
- if (facts != null && facts.length > 0) {
+ if (facts.length > 0) {
choices.addItem("..................");
for (int i = 0; i < facts.length; i++) {
@@ -636,7 +626,6 @@
popup.setWidth(-1);
popup.setTitle(constants.AddANewAction());
-
final ListBox positionCbo = new ListBox();
if (position == null) {
positionCbo.addItem(constants.Bottom(), String.valueOf(this.model.rhs.length));
@@ -650,10 +639,6 @@
positionCbo.setSelectedIndex(0);
}
-
-
-
-
final ListBox choices = new ListBox(true);
final Map<String, Command> cmds = new HashMap<String, Command>();
Added: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleTemplateEditor.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleTemplateEditor.java (rev 0)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleTemplateEditor.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -0,0 +1,201 @@
+package org.drools.guvnor.client.modeldriven.ui;
+
+import java.util.Map;
+
+import org.drools.guvnor.client.messages.Constants;
+import org.drools.guvnor.client.modeldriven.dt.TemplateModel;
+import org.drools.guvnor.client.rpc.RuleAsset;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.Widget;
+import com.gwtext.client.core.EventObject;
+import com.gwtext.client.data.ArrayReader;
+import com.gwtext.client.data.FieldDef;
+import com.gwtext.client.data.GroupingStore;
+import com.gwtext.client.data.MemoryProxy;
+import com.gwtext.client.data.Record;
+import com.gwtext.client.data.RecordDef;
+import com.gwtext.client.data.StringFieldDef;
+import com.gwtext.client.widgets.Panel;
+import com.gwtext.client.widgets.TabPanel;
+import com.gwtext.client.widgets.Toolbar;
+import com.gwtext.client.widgets.ToolbarMenuButton;
+import com.gwtext.client.widgets.form.TextField;
+import com.gwtext.client.widgets.grid.ColumnConfig;
+import com.gwtext.client.widgets.grid.ColumnModel;
+import com.gwtext.client.widgets.grid.EditorGridPanel;
+import com.gwtext.client.widgets.grid.GridEditor;
+import com.gwtext.client.widgets.grid.GridPanel;
+import com.gwtext.client.widgets.grid.GroupingView;
+import com.gwtext.client.widgets.grid.event.EditorGridListenerAdapter;
+import com.gwtext.client.widgets.menu.BaseItem;
+import com.gwtext.client.widgets.menu.Item;
+import com.gwtext.client.widgets.menu.Menu;
+import com.gwtext.client.widgets.menu.event.BaseItemListenerAdapter;
+
+public class RuleTemplateEditor extends Composite {
+
+ private TemplateModel model;
+ private GroupingStore store;
+ private Constants constants = ((Constants) GWT.create(Constants.class));
+
+ public RuleTemplateEditor(RuleAsset asset) {
+ model = (TemplateModel) asset.content;
+ TabPanel tPanel = new TabPanel();
+ tPanel.setAutoWidth(true);
+ tPanel.setAutoHeight(true);
+
+ Panel pnl = new Panel();
+ pnl.setAutoWidth(true);
+ pnl.setClosable(false);
+ pnl.setTitle("Template Editor");
+ pnl.setAutoHeight(true);
+ pnl.add(new RuleModeller(asset, new TemplateModellerWidgetFactory()));
+ tPanel.add(pnl);
+
+ pnl = new Panel();
+ pnl.setAutoWidth(true);
+ pnl.setClosable(false);
+ pnl.setTitle("Template Data");
+ pnl.setAutoHeight(true);
+ pnl.add(buildTemplateTable(asset));
+ tPanel.add(pnl);
+
+ tPanel.setActiveTab(0);
+ initWidget(tPanel);
+ }
+
+ private Widget buildTemplateTable(RuleAsset asset) {
+
+ final Map<String, Integer> vars = model.getInterpolationVariables();
+ if (vars.isEmpty()) {
+ return new Label("");
+ }
+
+ FieldDef[] fds = new FieldDef[vars.size()];
+ ColumnConfig[] cols = new ColumnConfig[fds.length];
+
+ for (Map.Entry<String, Integer> entry: vars.entrySet()) {
+ int idx = entry.getValue();
+ String var = entry.getKey();
+
+ cols[idx] = new ColumnConfig();
+ cols[idx].setHeader(var);
+ cols[idx].setDataIndex(var);
+ cols[idx].setSortable(false);
+ cols[idx].setWidth(50);
+ cols[idx].setResizable(true);
+ cols[idx].setEditor(new GridEditor(new TextField()));
+ fds[idx] = new StringFieldDef(var);
+ }
+ final RecordDef recordDef = new RecordDef(fds);
+ ArrayReader reader = new ArrayReader(recordDef);
+
+ MemoryProxy proxy = new MemoryProxy(model.getTable().toArray(new String[0][]));
+
+ ColumnModel cm = new ColumnModel(cols);
+ for (int i = 0; i < cm.getColumnCount(); i++) {
+ cm.setEditable(i, true);
+ }
+ System.out.println("cm.isCellEditable(0, 0): " + cm.isCellEditable(0, 0));
+ store = new GroupingStore(proxy, reader);
+ store.load();
+
+ final EditorGridPanel grid = new EditorGridPanel(store, cm);
+ grid.setStripeRows(true);
+
+ GroupingView gv = new GroupingView();
+
+ // to stretch it out
+ gv.setForceFit(true);
+ gv.setGroupTextTpl("{text} ({[values.rs.length]} {[values.rs.length > 1 ? \"" // NON-NLS
+ + constants.Items() + "\" : \"" + constants.Item() + "\"]})");
+
+ grid.setView(gv);
+
+ grid.setStore(store);
+ grid.setAutoWidth(true);
+ grid.setAutoHeight(true);
+
+ Toolbar tb = new Toolbar();
+ Menu menu = new Menu();
+
+ menu.addItem(new Item(constants.AddRow(), new BaseItemListenerAdapter() {
+ public void onClick(BaseItem item, EventObject e) {
+ String[] rowData = new String[recordDef.getFields().length];
+ for (int i = 0; i < rowData.length; i++) {
+ rowData[i] = "";
+ }
+ store.add(recordDef.createRecord(rowData));
+ model.addRow(rowData);
+ }
+ }));
+
+ ToolbarMenuButton tbb = new ToolbarMenuButton(constants.Modify(), menu);
+ tb.addButton(tbb);
+ grid.add(tb);
+
+ grid.addEditorGridListener(new EditorGridListenerAdapter() {
+ @Override
+ public void onAfterEdit(GridPanel grid, Record record, String field, Object newValue, Object oldValue,
+ int rowIndex, int colIndex) {
+ model.getTable().get(rowIndex)[vars.get(field)] = (String) newValue;
+ }
+ });
+
+// grid.addGridCellListener(new GridCellListenerAdapter() {
+// @Override
+// public void onCellDblClick(GridPanel grid, int rowIndex, int colIndex, EventObject e) {
+// final String dataIdx = grid.getColumnModel().getDataIndex( colIndex );
+// final Record r = store.getAt( rowIndex );
+// String val = r.getAsString( dataIdx );
+//// showTextEditor(e, grid.getColumnModel().g, r, val);
+// }
+// });
+
+ return grid;
+ }
+
+// private void showTextEditor(EventObject e, final String dta, final Record r, String val) {
+// final Window w = new Window();
+// w.setWidth(200);
+// w.setAutoDestroy(true);
+// w.setPlain(true);
+// w.setBodyBorder(false);
+// w.setTitle(dta);
+// final TextBox box = new TextBox();
+// box.setText(val);
+// box.addKeyboardListener(new KeyboardListenerAdapter() {
+// public void onKeyUp(Widget sender, char keyCode, int modifiers) {
+// if (keyCode == KeyboardListener.KEY_ENTER) {
+// r.set(dta, box.getText());
+//
+// w.destroy();
+// }
+// }
+// });
+//
+// if (dt.isNumeric(colConf, getSCE())) {
+// box.addKeyboardListener(ActionValueEditor.getNumericFilter(box));
+// }
+//
+// Panel p = new Panel();
+// p.add(box);
+// w.add(p);
+// w.setBorder(false);
+//
+// Button ok = new Button(constants.OK());
+// ok.addClickListener(new ClickListener() {
+// public void onClick(Widget wg) {
+// r.set(dta, box.getText());
+// w.destroy();
+// }
+// });
+// p.add(ok);
+//
+// w.setPosition(e.getPageX(), e.getPageY());
+// w.show();
+// }
+}
Property changes on: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleTemplateEditor.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ActionToolbar.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ActionToolbar.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ActionToolbar.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -53,9 +53,9 @@
*/
public class ActionToolbar extends Composite {
- static String[] VALIDATING_FORMATS = new String[]{BUSINESS_RULE, DSL_TEMPLATE_RULE, DECISION_SPREADSHEET_XLS, DRL, ENUMERATION, DECISION_TABLE_GUIDED, DRL_MODEL, DSL, FUNCTION};
+ static String[] VALIDATING_FORMATS = new String[]{BUSINESS_RULE, DSL_TEMPLATE_RULE, DECISION_SPREADSHEET_XLS, DRL, ENUMERATION, DECISION_TABLE_GUIDED, DRL_MODEL, DSL, FUNCTION, RULE_TEMPLATE};
- static String[] VERIFY_FORMATS = new String[]{BUSINESS_RULE, DECISION_SPREADSHEET_XLS, DRL, DECISION_TABLE_GUIDED, DRL_MODEL};
+ static String[] VERIFY_FORMATS = new String[]{BUSINESS_RULE, DECISION_SPREADSHEET_XLS, DRL, DECISION_TABLE_GUIDED, DRL_MODEL, RULE_TEMPLATE};
private Toolbar toolbar;
private CheckinAction checkinAction;
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -28,7 +28,7 @@
import org.drools.guvnor.client.factmodel.FactModelWidget;
import org.drools.guvnor.client.modeldriven.ui.RuleModeller;
import org.drools.guvnor.client.modeldriven.ui.RuleModellerWidgetFactory;
-import org.drools.guvnor.client.modeldriven.ui.TemplateModellerWidgetFactory;
+import org.drools.guvnor.client.modeldriven.ui.RuleTemplateEditor;
import org.drools.guvnor.client.packages.ModelAttachmentFileWidget;
import org.drools.guvnor.client.qa.ScenarioWidget;
import org.drools.guvnor.client.rpc.RuleAsset;
@@ -93,7 +93,7 @@
} else if (asset.metaData.format.equals(AssetFormats.WORKING_SET)) {
return new WorkingSetEditor(asset);
} else if (asset.metaData.format.equals(AssetFormats.RULE_TEMPLATE)) {
- return new RuleModeller(asset, new TemplateModellerWidgetFactory());
+ return new RuleTemplateEditor(asset);
} else {
return new DefaultContentUploadEditor(asset, viewer);
}
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/WorkingSetEditor.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/WorkingSetEditor.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/WorkingSetEditor.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -73,7 +73,7 @@
Panel pnl = new Panel();
pnl.setAutoWidth(true);
pnl.setClosable(false);
- pnl.setTitle("WS Definition");
+ pnl.setTitle("WS Definition"); //TODO {bauna} i18n
pnl.setAutoHeight(true);
pnl.add(buildDoubleList(wsData));
tPanel.add(pnl);
@@ -81,7 +81,7 @@
pnl = new Panel();
pnl.setAutoWidth(true);
pnl.setClosable(false);
- pnl.setTitle("WS Constraints");
+ pnl.setTitle("WS Constraints"); //TODO {bauna} i18n
pnl.setAutoHeight(true);
pnl.add(buildFactsConstraintsEditor(tPanel));
tPanel.add(pnl);
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/TemplateModelHandler.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/TemplateModelHandler.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/TemplateModelHandler.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -1,36 +1,19 @@
package org.drools.guvnor.server.contenthandler;
-import java.io.IOException;
-import java.io.StringReader;
-
-import org.drools.compiler.DroolsParserException;
-import org.drools.guvnor.server.builder.BRMSPackageBuilder;
-import org.drools.guvnor.server.builder.ContentPackageAssembler.ErrorLogger;
import org.drools.guvnor.server.util.BRDRTPersistence;
+import org.drools.guvnor.server.util.BRDRTXMLPersistence;
import org.drools.guvnor.server.util.BRLPersistence;
-import org.drools.repository.AssetItem;
public class TemplateModelHandler extends BRLContentHandler {
- public String getRawDRL(AssetItem asset) {
- return null;
- }
-
-// public void compile(BRMSPackageBuilder builder, AssetItem asset, ErrorLogger logger)
-// throws DroolsParserException, IOException {
-// builder.addPackageFromDrl( new StringReader( getSourceDRL( asset,
-// builder ) ) );
-// }
-
-
-
- public void assembleDRL(BRMSPackageBuilder builder, AssetItem asset, StringBuffer buf) {
-
- }
-
@Override
protected BRLPersistence getBrlDrlPersistence() {
return BRDRTPersistence.getInstance();
}
+ @Override
+ protected BRLPersistence getBrlXmlPersistence() {
+ return BRDRTXMLPersistence.getInstance();
+ }
+
}
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTPersistence.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTPersistence.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTPersistence.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -54,16 +54,14 @@
private Iterator<String[]> generateEmptyIterator(TemplateModel tplModel) {
List<String[]> l = new ArrayList<String[]>();
- List<String> interpolationVariables = tplModel.getInterpolationVariables();
- if (interpolationVariables == null || interpolationVariables.isEmpty()) {
+ String[] interpolationVariables = tplModel.getInterpolationVariablesList();
+ if (interpolationVariables == null || interpolationVariables.length == 0) {
l.add(new String[] { "" });
} else {
- String[] r = new String[interpolationVariables.size()];
- int i = 0;
- for (String var : interpolationVariables) {
- r[i++] = var + "_na";
+ for (int i = 0; i < interpolationVariables.length; i++) {
+ interpolationVariables[i] += "_na";
}
- l.add(r);
+ l.add(interpolationVariables);
}
return l.iterator();
}
@@ -73,8 +71,8 @@
TemplateModel tplModel = (TemplateModel) model;
buf.append("template header\n");
- List<String> interpolationVariables = tplModel.getInterpolationVariables();
- if (interpolationVariables.isEmpty()) {
+ String[] interpolationVariables = tplModel.getInterpolationVariablesList();
+ if (interpolationVariables.length == 0) {
buf.append("test_var").append('\n');
} else {
for (String var : interpolationVariables) {
Added: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTXMLPersistence.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTXMLPersistence.java (rev 0)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTXMLPersistence.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -0,0 +1,29 @@
+package org.drools.guvnor.server.util;
+
+import org.drools.guvnor.client.modeldriven.brl.RuleModel;
+import org.drools.guvnor.client.modeldriven.dt.TemplateModel;
+
+/**
+ * This class persists the template rule model to XML and back.
+ *
+ * This is the 'brl' xml format (Business Rule Language).
+ *
+ * @author Michael Neale
+ */
+public class BRDRTXMLPersistence extends BRXMLPersistence {
+
+ private static final BRLPersistence INSTANCE = new BRDRTXMLPersistence();
+
+ private BRDRTXMLPersistence() {
+ super();
+ }
+
+ public static BRLPersistence getInstance() {
+ return INSTANCE;
+ }
+
+ @Override
+ protected RuleModel createEmptyModel() {
+ return new TemplateModel();
+ }
+}
Property changes on: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/main/java/org/drools/guvnor/server/util/BRDRTXMLPersistence.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/test/java/org/drools/guvnor/server/util/BRDRTPersistenceTest.java
===================================================================
--- labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/test/java/org/drools/guvnor/server/util/BRDRTPersistenceTest.java 2010-04-08 20:01:28 UTC (rev 32481)
+++ labs/jbossrules/branches/guvnor_rules_templates_baunax_esteban_diega/drools-guvnor/src/test/java/org/drools/guvnor/server/util/BRDRTPersistenceTest.java 2010-04-08 20:43:23 UTC (rev 32482)
@@ -71,7 +71,6 @@
log.info("drl :\n{}", drl);
assertNotNull(drl);
assertEquals(expected, drl);
-
}
public void testEmptyDataWithRHS() {
More information about the jboss-svn-commits
mailing list