[jboss-svn-commits] JBL Code SVN: r19326 - in labs/jbossrules/branches/mic_20080325/drools-jbrms/src: main/java/org/drools/brms/client/decisiontable and 3 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Mar 30 21:53:07 EDT 2008


Author: michael.neale at jboss.com
Date: 2008-03-30 21:53:07 -0400 (Sun, 30 Mar 2008)
New Revision: 19326

Modified:
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionInsertColumn.java
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionSetColumn.java
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDTColumnConfig.java
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDecisionTableWidget.java
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java
   labs/jbossrules/branches/mic_20080325/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java
Log:
tidy up, and DT improvements

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/common/ErrorPopup.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -43,7 +43,7 @@
     	Window w = new Window();
     	w.setTitle("Error");
     	w.setWidth(500);
-    	w.setHeight((longMessage != null) ? 500 : 150);
+    	w.setHeight((longMessage != null) ? 300 : 150);
     	w.setModal(true);
     	w.setShadow(true);
     	w.setClosable(true);

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionInsertColumn.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionInsertColumn.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionInsertColumn.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -51,13 +51,6 @@
 
 		setTitle("Action column configuration (inserting a new fact)");
 
-		final TextBox header = new TextBox();
-		header.setText(col.header);
-		header.addChangeListener(new ChangeListener() {
-			public void onChange(Widget w) {
-				editingCol.header = header.getText();
-			} });
-		addAttribute("Column header (description):", header);
 
 
 		HorizontalPanel pattern = new HorizontalPanel();
@@ -96,6 +89,15 @@
 		vl.add(new InfoPopup("Value list", "Value lists are an optional comma separated list of values to show as a drop down."));
 		addAttribute("(optional) value list:", vl);
 
+		final TextBox header = new TextBox();
+		header.setText(col.header);
+		header.addChangeListener(new ChangeListener() {
+			public void onChange(Widget w) {
+				editingCol.header = header.getText();
+			} });
+		addAttribute("Column header (description):", header);
+
+
 		Button apply = new Button("Apply changes");
 		apply.addClickListener(new ClickListener() {
 			public void onClick(Widget w) {

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionSetColumn.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionSetColumn.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/ActionSetColumn.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -44,14 +44,8 @@
 		super.setModal(false);
 		setTitle("Column configuration (set a field on a fact)");
 
-		final TextBox header = new TextBox();
-		header.setText(col.header);
-		header.addChangeListener(new ChangeListener() {
-			public void onChange(Widget w) {
-				editingCol.header = header.getText();
-			} });
-		addAttribute("Column header (description):", header);
 
+
 		HorizontalPanel pattern = new HorizontalPanel();
 		pattern.add(bindingLabel);
 		doBindingLabel();
@@ -88,6 +82,15 @@
 		vl.add(new InfoPopup("Value list", "Value lists are an optional comma separated list of values to show as a drop down."));
 		addAttribute("(optional) value list:", vl);
 
+		final TextBox header = new TextBox();
+		header.setText(col.header);
+		header.addChangeListener(new ChangeListener() {
+			public void onChange(Widget w) {
+				editingCol.header = header.getText();
+			} });
+		addAttribute("Column header (description):", header);
+
+
 		Button apply = new Button("Apply changes");
 		apply.addClickListener(new ClickListener() {
 			public void onClick(Widget w) {

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDTColumnConfig.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDTColumnConfig.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDTColumnConfig.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -59,13 +59,6 @@
 
 		setTitle("Condition column configuration");
 
-		final TextBox header = new TextBox();
-		header.setText(col.header);
-		header.addChangeListener(new ChangeListener() {
-			public void onChange(Widget w) {
-				editingCol.header = header.getText();
-			} });
-		addAttribute("Column header (description):", header);
 
 
 		HorizontalPanel pattern = new HorizontalPanel();
@@ -159,6 +152,15 @@
 		vl.add(new InfoPopup("Value list", "Value lists are an optional comma separated list of values to show as a drop down."));
 		addAttribute("(optional) value list:", vl);
 
+		final TextBox header = new TextBox();
+		header.setText(col.header);
+		header.addChangeListener(new ChangeListener() {
+			public void onChange(Widget w) {
+				editingCol.header = header.getText();
+			} });
+		addAttribute("Column header (description):", header);
+
+
 		Button apply = new Button("Apply changes");
 		apply.addClickListener(new ClickListener() {
 			public void onClick(Widget w) {

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDecisionTableWidget.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDecisionTableWidget.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/GuidedDecisionTableWidget.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -83,6 +83,7 @@
 	private VerticalPanel actionsConfigWidget;
 	private Map colMap;
 	private SuggestionCompletionEngine sce;
+	private GroupingStore store;
 
 
 	public GuidedDecisionTableWidget(RuleAsset asset) {
@@ -123,7 +124,13 @@
         actions.add(getActions());
         config.add(actions);
 
+        FieldSet grouping = new FieldSet("(options)");
+        grouping.setCollapsible(true);
+        grouping.setCollapsed(true);
+        grouping.add(getGrouping());
+        config.add(grouping);
 
+
         layout.add(config);
 
         refreshGrid();
@@ -132,6 +139,55 @@
         initWidget(layout);
     }
 
+	private Widget getGrouping() {
+		final ListBox list = new ListBox();
+
+		list.addItem("Description", "desc");
+		for (Iterator iterator = dt.attributeCols.iterator(); iterator.hasNext();) {
+			AttributeCol c = (AttributeCol) iterator.next();
+			list.addItem(c.attr, c.attr);
+			if (c.attr.equals(dt.groupField)) {
+				list.setSelectedIndex(list.getItemCount() - 1);
+			}
+		}
+		for (Iterator iterator = dt.conditionCols.iterator(); iterator.hasNext();) {
+			ConditionCol c = (ConditionCol) iterator.next();
+			list.addItem(c.header, c.header);
+			if (c.header.equals(dt.groupField)) {
+				list.setSelectedIndex(list.getItemCount() - 1);
+			}
+		}
+		for (Iterator iterator = dt.actionCols.iterator(); iterator.hasNext();) {
+			ActionCol c = (ActionCol) iterator.next();
+			list.addItem(c.header, c.header);
+			if (c.header.equals(dt.groupField)) {
+				list.setSelectedIndex(list.getItemCount() - 1);
+			}
+		}
+
+		list.addItem("-- none --", "");
+		if (dt.groupField == null) {
+			list.setSelectedIndex(list.getItemCount() - 1);
+		}
+
+		HorizontalPanel h = new HorizontalPanel();
+		h.add(new SmallLabel("Group by column: "));
+		h.add(list);
+
+		Button ok = new Button("Apply");
+		ok.addClickListener(new ClickListener() {
+			public void onClick(Widget w) {
+				dt.groupField = list.getValue(list.getSelectedIndex());
+				scrapeData(-1);
+				refreshGrid();
+			}
+		});
+
+		h.add(ok);
+
+		return h;
+	}
+
 	private Widget getActions() {
 		actionsConfigWidget = new VerticalPanel();
 		refreshActionsWidget();
@@ -456,6 +512,10 @@
 				}
 			}
 		}
+//		String groupF = store.getGroupField();
+//		if (groupF == null || groupF.equals("")) {
+//			dt.groupField = groupF;
+//		}
 	}
 
 	/**
@@ -533,6 +593,9 @@
 				setDataIndex("desc");
 				setSortable(true);
 				setHeader("Description");
+				if (dt.descriptionWidth != -1) {
+					setWidth(dt.descriptionWidth);
+				}
 			}
 		};
 		colCount++;
@@ -623,11 +686,14 @@
 
 
         ColumnModel cm = new ColumnModel(cols);
-        final GroupingStore store = new GroupingStore();
+        store = new GroupingStore();
         store.setReader(reader);
         store.setDataProxy(proxy);
         store.setSortInfo(new SortState("num", SortDir.ASC));
-        store.setGroupField("desc");
+        if (this.dt.groupField != null) {
+        	store.setGroupField(dt.groupField);
+        }
+
         store.load();
 
 
@@ -640,6 +706,7 @@
         gv.setForceFit(true);
         gv.setGroupTextTpl("{text} ({[values.rs.length]} {[values.rs.length > 1 ? \"Items\" : \"Item\"]})");
 
+
         grid.setView(gv);
 
 
@@ -648,6 +715,7 @@
         grid.setHeight(500);
 
 
+
         grid.addGridCellListener(new GridCellListenerAdapter() {
         	public void onCellDblClick(GridPanel grid, int rowIndex,
         			int colIndex, EventObject e) {
@@ -802,7 +870,7 @@
 		w.setAutoDestroy(true);
 		w.setPlain(true);
 		w.setBodyBorder(false);
-		w.setTitle("Set value for " + dta);
+		w.setTitle(dta);
 		final TextBox box = new TextBox();
 		box.setText(val);
 		box.addKeyboardListener(new KeyboardListenerAdapter() {

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/drools/brms/server/ServiceImplementation.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -848,7 +848,7 @@
             repository.loadCategory( categoryPath ).remove();
             repository.save();
         } catch (RulesRepositoryException e) {
-            throw new SerializableException( e.getMessage() );
+        	throw new DetailedSerializableException("Unable to remove category. It is probably still used (even by archived items).", e.getMessage());
         }
     }
 

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/main/java/org/jboss/seam/remoting/gwt/GWTToSeamAdapter.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -85,8 +85,11 @@
                     StringWriter sw = new StringWriter();
                     PrintWriter w = new PrintWriter(sw);
                     cause.printStackTrace( w );
-                    DetailedSerializableException det = new DetailedSerializableException("An error occurred executing the action.", sw.toString());
-                    throw new InvocationTargetException(det);
+                    if (cause instanceof DetailedSerializableException) {
+                    	throw new InvocationTargetException(cause);
+                    } else {
+                        throw new InvocationTargetException(new DetailedSerializableException("An error occurred executing the action.", sw.toString()));
+                    }
                 }
             }
 

Modified: labs/jbossrules/branches/mic_20080325/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java
===================================================================
--- labs/jbossrules/branches/mic_20080325/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java	2008-03-31 01:52:12 UTC (rev 19325)
+++ labs/jbossrules/branches/mic_20080325/drools-jbrms/src/test/java/org/drools/brms/server/ServiceImplementationTest.java	2008-03-31 01:53:07 UTC (rev 19326)
@@ -820,10 +820,13 @@
 		String[] children = impl.loadChildCategories("/");
 		impl.createCategory("/", "testRemoveCategory", "foo");
 
+
 		impl.removeCategory("testRemoveCategory");
 		String[] _children = impl.loadChildCategories("/");
 		assertEquals(children.length, _children.length);
 
+
+
 	}
 
 	public void testRemoveAsset() throws Exception {




More information about the jboss-svn-commits mailing list