Adding JMCR-Stable version
[Benchmarks_CSolver.git] / JMCR-Stable / real-world application / jigsaw / src / org / w3c / jigadm / editors / ResourceHelper.java
diff --git a/JMCR-Stable/real-world application/jigsaw/src/org/w3c/jigadm/editors/ResourceHelper.java b/JMCR-Stable/real-world application/jigsaw/src/org/w3c/jigadm/editors/ResourceHelper.java
new file mode 100644 (file)
index 0000000..32e7718
--- /dev/null
@@ -0,0 +1,70 @@
+// ResourceHelper.java\r
+// $Id: ResourceHelper.java,v 1.1 2010/06/15 12:22:48 smhuang Exp $\r
+// (c) COPYRIGHT MIT and INRIA, 1997.\r
+// Please first read the full copyright statement in file COPYRIGHT.html\r
+\r
+package org.w3c.jigadm.editors ;\r
+\r
+import java.awt.Component;\r
+\r
+import java.util.EventObject;\r
+import java.util.Properties;\r
+import java.util.Vector;\r
+\r
+import org.w3c.jigsaw.admin.RemoteResource;\r
+import org.w3c.tools.resources.Attribute;\r
+\r
+import org.w3c.tools.widgets.MessagePopup;\r
+\r
+import org.w3c.jigadm.RemoteResourceWrapper;\r
+\r
+import org.w3c.jigadm.events.ResourceChangeEvent;\r
+import org.w3c.jigadm.events.ResourceListener;\r
+\r
+abstract public class ResourceHelper implements ResourceHelperInterface {\r
+\r
+    protected Vector rls = null;\r
+\r
+    abstract public String getTitle();\r
+\r
+    abstract public Component getComponent();\r
+\r
+    protected void errorPopup(String name, Exception ex) {\r
+      (new MessagePopup(name+" : "+ex.getMessage())).show();\r
+    }\r
+\r
+    protected void msgPopup(String name) {\r
+      (new MessagePopup(name)).show();\r
+    }\r
+\r
+    public synchronized void addResourceListener(ResourceListener rl) {\r
+       if (rls == null)\r
+           rls = new Vector(2);\r
+       rls.addElement(rl);\r
+    }\r
+\r
+    public RemoteResource getValue() {\r
+       return null;\r
+    }\r
+\r
+    public synchronized void removeResourceListener(ResourceListener rl) {\r
+       if ( rls != null ) \r
+           rls.removeElement(rl);\r
+    }\r
+\r
+    protected void processEvent(EventObject eo) {\r
+       Vector rls = null;\r
+       ResourceListener rl;\r
+       synchronized(this) {\r
+           if((this.rls != null) && (eo instanceof ResourceChangeEvent )) {\r
+               rls = (Vector) this.rls.clone();\r
+           } else {\r
+               return;\r
+           }\r
+       }\r
+       for(int i=0; i<rls.size(); i++) {\r
+           rl = (ResourceListener) rls.elementAt(i);\r
+           rl.resourceChanged((ResourceChangeEvent)eo);\r
+       }\r
+    }\r
+}\r