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

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Jul 3 17:22:33 EDT 2007


Author: fmeyer
Date: 2007-07-03 17:22:33 -0400 (Tue, 03 Jul 2007)
New Revision: 13054

Modified:
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeature.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/PackageManagementFeature.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RulesFeature.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageManagerView.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/EditorLauncher.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/AssetBrowser.java
Log:
JBRULES-902 - Should open assets only 1 time


Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeature.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeature.java	2007-07-03 19:31:59 UTC (rev 13053)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSFeature.java	2007-07-03 21:22:33 UTC (rev 13054)
@@ -1,4 +1,5 @@
 package org.drools.brms.client;
+
 /*
  * Copyright 2005 JBoss Inc
  * 
@@ -15,55 +16,62 @@
  * limitations under the License.
  */
 
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
 
-
 import com.google.gwt.user.client.ui.Composite;
 
 /**
- * A 'feature' is a single panel of the JBRMS console. They are meant to be lazily
- * instantiated so that the application doesn't pay for all of them on startup.
+ * A 'feature' is a single panel of the JBRMS console. They are meant to be
+ * lazily instantiated so that the application doesn't pay for all of them on
+ * startup.
  */
 public abstract class JBRMSFeature extends Composite {
 
-  /**
-   * Encapsulated information about a JBRMS Feature. Each component is expected to have a
-   * static <code>init()</code> method that will be called by the layout on startup.
-   */
-  public abstract static class ComponentInfo {
-    private JBRMSFeature instance;
-    private String name, description;
+	static Map openedViewers = new HashMap();
 
-    public ComponentInfo(String name, String desc) {
-      this.name = name;
-      description = desc;
-    }
+	/**
+	 * Encapsulated information about a JBRMS Feature. Each component is
+	 * expected to have a static <code>init()</code> method that will be
+	 * called by the layout on startup.
+	 */
+	public abstract static class ComponentInfo {
+		private JBRMSFeature instance;
+		private String name, description;
 
-    public abstract JBRMSFeature createInstance();
+		public ComponentInfo(String name, String desc) {
+			this.name = name;
+			description = desc;
+		}
 
-    public String getDescription() {
-      return description;
-    }
+		public abstract JBRMSFeature createInstance();
 
-    public final JBRMSFeature getInstance() {
-      if (instance != null)
-        return instance;
-      return (instance = createInstance());
-    }
+		public String getDescription() {
+			return description;
+		}
 
-    public String getName() {
-      return name;
-    }
-  }
+		public final JBRMSFeature getInstance() {
+			if (instance != null)
+				return instance;
+			return (instance = createInstance());
+		}
 
-  /**
-   * Called just before this sink is hidden.
-   */
-  public void onHide() {
-  }
+		public String getName() {
+			return name;
+		}
+	}
 
-  /**
-   * Called just after this sink is shown.
-   */
-  public void onShow() {
-  }
+	/**
+	 * Called just before this sink is hidden.
+	 */
+	public void onHide() {
+	}
+
+	/**
+	 * Called just after this sink is shown.
+	 */
+	public void onShow() {
+	}
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/PackageManagementFeature.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/PackageManagementFeature.java	2007-07-03 19:31:59 UTC (rev 13053)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/PackageManagementFeature.java	2007-07-03 21:22:33 UTC (rev 13054)
@@ -1,4 +1,5 @@
 package org.drools.brms.client;
+
 /*
  * Copyright 2005 JBoss Inc
  * 
@@ -15,36 +16,31 @@
  * limitations under the License.
  */
 
-
-
 import org.drools.brms.client.packages.PackageManagerView;
 
 /**
- * This is the package management feature. 
- * For managing packages (namespaces, imports etc) for rule assets.
+ * This is the package management feature. For managing packages (namespaces,
+ * imports etc) for rule assets.
  * 
  * This is also an alternative way of viewing packages.
  */
 public class PackageManagementFeature extends JBRMSFeature {
 
+	public static ComponentInfo init() {
+		return new ComponentInfo("Packages",
+				"Configure and view packages of business rule assets.") {
+			public JBRMSFeature createInstance() {
+				return new PackageManagementFeature();
+			}
+		};
+	}
 
-    public static ComponentInfo init() {
-        return new ComponentInfo( "Packages",
-                                  "Configure and view packages of business rule assets." ) {
-            public JBRMSFeature createInstance() {
-                return new PackageManagementFeature();
-            }
-        };
-    }
+	public PackageManagementFeature() {
+		PackageManagerView packageManView = new PackageManagerView();
+		packageManView.setOpenedViewersContainer(JBRMSFeature.openedViewers);
+		initWidget(packageManView);
+	}
 
-
-    public PackageManagementFeature() {
-        initWidget( new PackageManagerView() );
-    }
-
-
-
-
-    public void onShow() {
-    }
+	public void onShow() {
+	}
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RulesFeature.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RulesFeature.java	2007-07-03 19:31:59 UTC (rev 13053)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RulesFeature.java	2007-07-03 21:22:33 UTC (rev 13054)
@@ -1,4 +1,5 @@
 package org.drools.brms.client;
+
 /*
  * Copyright 2005 JBoss Inc
  * 
@@ -15,12 +16,11 @@
  * limitations under the License.
  */
 
-
-
 import org.drools.brms.client.rulelist.AssetBrowser;
 
 /**
  * This controls the "Rules manager" top level feature.
+ * 
  * @author Michael Neale
  */
 public class RulesFeature extends JBRMSFeature {
@@ -34,9 +34,10 @@
 		};
 	}
 
-	
 	public RulesFeature() {
-	    initWidget( new AssetBrowser() );
+		AssetBrowser assetBrowser = new AssetBrowser();
+		assetBrowser.setOpenedViewersContainer(JBRMSFeature.openedViewers);
+		initWidget(assetBrowser);
 	}
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageManagerView.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageManagerView.java	2007-07-03 19:31:59 UTC (rev 13053)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/packages/PackageManagerView.java	2007-07-03 21:22:33 UTC (rev 13054)
@@ -17,6 +17,7 @@
 
 
 
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -40,7 +41,7 @@
 public class PackageManagerView extends Composite {
 
     private final TabPanel tab;
-    private Map openedViewers = new HashMap();
+    private Map openedViewers = Collections.EMPTY_MAP;
 
     /**
      * This will provide a explorer for all the packages in the system,
@@ -77,5 +78,9 @@
         
         initWidget( tab );
     }
+
+	public void setOpenedViewersContainer(Map openedViewers) {
+		this.openedViewers = openedViewers;
+	}
     
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/EditorLauncher.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/EditorLauncher.java	2007-07-03 19:31:59 UTC (rev 13053)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/EditorLauncher.java	2007-07-03 21:22:33 UTC (rev 13054)
@@ -21,16 +21,20 @@
 import java.util.Map;
 
 import org.drools.brms.client.common.AssetFormats;
+import org.drools.brms.client.common.FormStylePopup;
 import org.drools.brms.client.common.GenericCallback;
 import org.drools.brms.client.common.LoadingPopup;
 import org.drools.brms.client.decisiontable.DecisionTableXLSWidget;
 import org.drools.brms.client.modeldriven.ui.RuleModeller;
 import org.drools.brms.client.packages.ModelAttachmentFileWidget;
+import org.drools.brms.client.packages.PackageExplorerWidget;
+import org.drools.brms.client.packages.PackageManagerView;
 import org.drools.brms.client.packages.SuggestionCompletionCache;
 import org.drools.brms.client.rpc.RepositoryServiceFactory;
 import org.drools.brms.client.rpc.RuleAsset;
 
 import com.google.gwt.user.client.Command;
+import com.google.gwt.user.client.Window;
 import com.google.gwt.user.client.ui.TabPanel;
 import com.google.gwt.user.client.ui.Widget;
 
@@ -114,7 +118,13 @@
                                       final boolean readonly) {
 
         if ( openedViewers.containsKey( uuid ) ) {
-            tab.selectTab( tab.getWidgetIndex( (Widget) openedViewers.get( uuid ) ) );
+        	
+        	if ( tab.getWidgetIndex( (Widget) openedViewers.get( uuid ) ) == -1 ) {
+        		String featurename = tab.getWidget(0) instanceof PackageExplorerWidget ? "Rule Viewer" : "Package Manager";
+        		Window.alert("Asset already opened in " + featurename  );
+        	} else {
+        		tab.selectTab( tab.getWidgetIndex( (Widget) openedViewers.get( uuid )  ));
+        	}
             LoadingPopup.close();
             return;
         }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/AssetBrowser.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/AssetBrowser.java	2007-07-03 19:31:59 UTC (rev 13053)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/rulelist/AssetBrowser.java	2007-07-03 21:22:33 UTC (rev 13054)
@@ -17,6 +17,7 @@
 
 
 
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -53,7 +54,7 @@
     
     public static final int       EDITOR_TAB         = 1;
     private TabPanel tab;
-    private Map openedViewers = new HashMap();
+    private Map openedViewers = Collections.EMPTY_MAP;
     private AssetItemListViewer list;
     
     public AssetBrowser() {
@@ -158,7 +159,6 @@
                           list.loadTableData( result );
                           LoadingPopup.close();
                       }
-
                   } );                    
               }                    
         };
@@ -182,7 +182,7 @@
           
           pop.show();
     }
-    
-    
-    
+	public void setOpenedViewersContainer(Map openedViewers) {
+		this.openedViewers = openedViewers;
+	}
 }
\ No newline at end of file




More information about the jboss-svn-commits mailing list