perfsonar-dev - perfsonar: r2340 - in branches/perfsonarui/src/org/perfsonar/perfsonarui: . config ippm ma plugins test ui/actions ui/panels
Subject: perfsonar development work
List archive
perfsonar: r2340 - in branches/perfsonarui/src/org/perfsonar/perfsonarui: . config ippm ma plugins test ui/actions ui/panels
Chronological Thread
- From:
- To:
- Subject: perfsonar: r2340 - in branches/perfsonarui/src/org/perfsonar/perfsonarui: . config ippm ma plugins test ui/actions ui/panels
- Date: Sat, 21 Apr 2007 04:59:43 -0400
Author: nina
Date: 2007-04-21 04:59:43 -0400 (Sat, 21 Apr 2007)
New Revision: 2340
Added:
branches/perfsonarui/src/org/perfsonar/perfsonarui/IPerfsonarSchema.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/PerfsonarSchema.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/NewEndpointAction.java
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/SmartMARequest.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/config/MA.conf
branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMPerfsonarModel.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/MAPerfsonarModel.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/UserData.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpoint.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpointList.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MARequest_NMWG2_Test.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MetaDataListTest.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SearchByIPActionTest.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SmartMARequestTest.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/FileEndpointsAction.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectAllEndpointsAction.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectOneEndpointAction.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/ShowEndpointsAction.java
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/panels/MAEndpointsPanel.java
Log:
GUI for adding/editing services at runtime
Added:
branches/perfsonarui/src/org/perfsonar/perfsonarui/IPerfsonarSchema.java
Added: branches/perfsonarui/src/org/perfsonar/perfsonarui/PerfsonarSchema.java
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/SmartMARequest.java
===================================================================
--- branches/perfsonarui/src/org/perfsonar/perfsonarui/SmartMARequest.java
2007-04-20 18:19:51 UTC (rev 2339)
+++ branches/perfsonarui/src/org/perfsonar/perfsonarui/SmartMARequest.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -60,7 +60,7 @@
protected boolean parallel = true;
protected int requestsRunning = 0;
protected AbstractPerfsonarResponse propertyChangeListener;
- Hashtable<String, PerfsonarRequestsPool> requestsPool;
+ Hashtable<IPerfsonarSchema, PerfsonarRequestsPool> requestsPool;
protected int MaxRequests = 16;
//PerfsonarRequestsPool[] requestsPool = null;
@@ -142,7 +142,7 @@
}
};
- requestsPool = new Hashtable<String, PerfsonarRequestsPool>();
+ requestsPool = new Hashtable<IPerfsonarSchema,
PerfsonarRequestsPool>();
/*
requestsPool = new
PerfsonarRequestsPool[MAEndpoint.versions.length];
for (int i=0; i < requestsPool.length;i++)
Modified: branches/perfsonarui/src/org/perfsonar/perfsonarui/config/MA.conf
===================================================================
--- branches/perfsonarui/src/org/perfsonar/perfsonarui/config/MA.conf
2007-04-20 18:19:51 UTC (rev 2339)
+++ branches/perfsonarui/src/org/perfsonar/perfsonarui/config/MA.conf
2007-04-21 08:59:43 UTC (rev 2340)
@@ -1,5 +1,4 @@
-GEANT2,http://stats.geant2.net/perfsonar/RRDMA-access/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
-;GEANT2,http://mu.dante.org.uk:8092/perfSONAR-SQL-MA-1.0-RC5/services/MeasurementArchiveService,perfsonar_2_0,"",http://ggf.org/ns/nmwg/characteristic/utilization/2.0,http://ggf.org/ns/nmwg/characteristic/utilization/2.0
+GEANT2,http://stats.geant2.net/perfsonar/RRDMA-access/MeasurementArchiveService,http://schemas.perfsonar.net/2.0,"",http://ggf.org/ns/nmwg/characteristic/utilization/2.0,http://ggf.org/ns/nmwg/characteristic/utilization/2.0
;CARNet,http://noc-mon.srce.hr:8090,NMWG2v2_netutil,"",utilization,utilization
;Cesnet,http://perfmonc.cesnet.cz:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
GARR,http://srv4.dir.garr.it:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
@@ -10,6 +9,7 @@
PIONIER-RRD,http://loco4.man.poznan.pl:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,PIONIER-Public,utilization,utilization
;PIONIER-SQL,http://loco4.man.poznan.pl:8100/axis/services/MeasurementArchiveService,NMWG2v2_netutil,PIONIER-Public,utilization,utilization
;RENATER,http://supervision-ipv6.renater.fr:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
+;RENATER-test,http://193.49.159.5:8080/perfSONAR-RRD-MA-2.0/services/MeasurementArchiveService,http://schemas.perfsonar.net/2.0,"",http://ggf.org/ns/nmwg/characteristic/utilization/2.0,http://ggf.org/ns/nmwg/characteristic/utilization/2.0
SEEREN,http://admin.seeren.org:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
SURFnet,http://sonar1.amsterdam.surfnet.nl:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
SWITCH,http://archive.sonar.net.switch.ch:8180/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
@@ -18,6 +18,7 @@
;Fermilab,http://lhcopnmon1-mgm.fnal.gov:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
RedCLARA,http://server2-saopaulo.lan.redclara.net:8085/perfsonar-RRDMA/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
RNP,http://rnp-rrd-ma.gt-med.ufsc.br:8080/axis/services/MeasurementArchiveService,NMWG2v2_netutil,"",utilization,utilization
-GEANT,http://gandalf.rrze.uni-erlangen.de:8090/gandalf/Hades/perfSONAR/MA,ippm,,ippm_aggregated,ippm_aggregated
+GEANT,http://radagast.x-win.dfn.de:8090/services/MA/HADES/GEANT,ippm,,ippm_aggregated,ippm_aggregated
;RIPE,http://gandalf.rrze.uni-erlangen.de:8090/gandalf/Hades/perfSONAR/MA,ippm,,ripe,ripe
;GEANT-test,http://gandalf.rrze.uni-erlangen.de:6040/services/MA/HADES/GEANT,ippm,,ippm_aggregated,ippm_aggregated
+;RIPE,http://radagast.x-win.dfn.de:8090/services/MA/RIPE,ippm,,ripe,ripe
\ No newline at end of file
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMPerfsonarModel.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMPerfsonarModel.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMPerfsonarModel.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -27,8 +27,10 @@
import javax.swing.Action;
import javax.swing.JComponent;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.MetadataListResponseListener;
import org.perfsonar.perfsonarui.PerfsonarResponseEvent;
+import org.perfsonar.perfsonarui.PerfsonarSchema;
import org.perfsonar.perfsonarui.SmartMARequest;
import org.perfsonar.perfsonarui.ippm.ui.actions.IPPMMetadataKeyRequest;
import org.perfsonar.perfsonarui.ippm.ui.panels.MainPanelIPPM;
@@ -182,7 +184,7 @@
return new SmartMARequest() {
@Override
public IPerfsonarRequest createMARequest(MAEndpoint
endpoint) {
- String schema = endpoint.getSchema();
+ IPerfsonarSchema schema =
endpoint.getSchema();
if (schema.equals(IPPMRequest.requestType))
return new IPPMRequest();
else return null;
}
@@ -205,9 +207,9 @@
}
return endpoints;
}
- public List getSupportedRequests() {
- ArrayList<String> supported = new ArrayList<String>();
- supported.add("org.perfsonar.perfsonarui.ippm.IPPMRequest");
+ public List<IPerfsonarSchema> getSupportedRequests() {
+ ArrayList<IPerfsonarSchema> supported = new
ArrayList<IPerfsonarSchema>();
+ supported.add(new PerfsonarSchema("ippm"));
return supported;
}
/*
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/MAPerfsonarModel.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/MAPerfsonarModel.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/MAPerfsonarModel.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -33,6 +33,7 @@
import org.apache.commons.cli.CommandLine;
import org.perfsonar.perfsonarui.AbstractUserData;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.SmartMARequest;
import org.perfsonar.perfsonarui.TracerouteShell;
import org.perfsonar.perfsonarui.ippm.IPPMRequest;
@@ -166,7 +167,7 @@
return new SmartMARequest() {
@Override
public IPerfsonarRequest createMARequest(MAEndpoint
endpoint) {
- String schema = endpoint.getSchema();
+ IPerfsonarSchema schema =
endpoint.getSchema();
if (schema.equals("NMWG2v2")) return new
MARequest_NMWG2();
else if (schema.equals("NMWG2v2_netutil"))
return new MARequest_NMWG2_Netutil();
else if
(schema.equals(MARequestPerfsonar2_0.schemaID)) return new
MARequestPerfsonar2_0();
@@ -188,10 +189,16 @@
}
public List getSupportedRequests() {
ArrayList<String> supported = new ArrayList<String>();
+ /*
supported.add("org.perfsonar.perfsonarui.ma.MARequest");
supported.add("org.perfsonar.perfsonarui.ma.MARequest_NMWG2");
supported.add("org.perfsonar.perfsonarui.ma.MARequest_NMWG2_Netutil");
supported.add("org.perfsonar.perfsonarui.ma.MARequestPerfsonar2_0");
+ */
+ supported.add("perfsonar");
+ supported.add("NMWG2v2");
+ supported.add("NMWG2v2_netutil");
+ supported.add("http://schemas.perfsonar.net/2.0");
return supported;
}
Modified: branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/UserData.java
===================================================================
--- branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/UserData.java
2007-04-20 18:19:51 UTC (rev 2339)
+++ branches/perfsonarui/src/org/perfsonar/perfsonarui/ma/UserData.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -24,6 +24,7 @@
import java.util.TimeZone;
import org.perfsonar.perfsonarui.AbstractUserData;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.plugins.IUserData;
import org.perfsonar.perfsonarui.plugins.MAEndpoint;
import org.perfsonar.perfsonarui.ui.PerfsonarModel;
@@ -501,10 +502,10 @@
public synchronized boolean isOutput() {
return direction==DIRECTION_OUTPUT;
}
- public synchronized String getSchema() {
+ public synchronized IPerfsonarSchema getSchema() {
return maData.getSchema();
}
- public synchronized void setSchema(String schema) {
+ public synchronized void setSchema(IPerfsonarSchema schema) {
maData.setSchema(schema);
setChanged();
notifyObservers(maData);
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpoint.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpoint.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpoint.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -22,6 +22,8 @@
import java.util.Observable;
import org.perfsonar.perfsonarui.AbstractUserData;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
+import org.perfsonar.perfsonarui.PerfsonarSchema;
import org.perfsonar.perfsonarui.SmartMARequest;
import org.perfsonar.perfsonarui.ui.PerfsonarModel;
@@ -43,7 +45,7 @@
protected String endpoint = "";
protected String authRealm = "";
protected String[] event = {"utilization","utilization"};
- protected String type = "";
+ protected IPerfsonarSchema type;
protected String status = "?";
protected Object statusExplanation = "?"; //"<html>Run <u>Service
status</u> <br>for availability info.</html>";
protected boolean alive = true;
@@ -66,6 +68,7 @@
*/
public MAEndpoint() {
super();
+ type = new PerfsonarSchema("Unknown");
}
public void clear() {
setTitle("");
@@ -74,6 +77,7 @@
}
public MAEndpoint(String endpoint) {
+ this();
String[] result = endpoint.split(",");
if (result.length == 1) this.endpoint = result[0];
else {
@@ -85,7 +89,7 @@
this.endpoint = result[1];
if (result.length > 2) {
result[2] = result[2].trim();
- type = result[2];
+ type.setSchema(result[2]);
/*
for (int i = 0; i < versions.length; i++)
if (result[2].equals(versions[i])) {
@@ -110,16 +114,22 @@
notifyObservers(endpoint);
}
- public synchronized String getSchema() {
+ public synchronized IPerfsonarSchema getSchema() {
return type;
}
- public synchronized void setSchema(String schema) {
- this.type = schema;
+ public synchronized void setSchema(IPerfsonarSchema schema) {
+ this.type.setSchema(schema.getSchema());
setChanged();
notifyObservers(endpoint);
}
+ public synchronized void setSchema(String newSchema) {
+ this.type.setSchema(newSchema);
+ setChanged();
+ notifyObservers(endpoint);
+ }
+
public synchronized boolean isEnabled() {
return enabled;
}
@@ -132,7 +142,7 @@
/**
* @deprecated.
* @return
- */
+
public String getRequestType() {
if (type.equals("perfsonar")) return
"org.perfsonar.perfsonarui.ma.MARequest";
else if (type.equals("NMWG2v2")) return
"org.perfsonar.perfsonarui.ma.MARequest_NMWG2";
@@ -141,7 +151,7 @@
else if (type.equals("http://schemas.perfsonar.net/2.0"))
return "org.perfsonar.perfsonarui.ma.MARequestPerfsonar2_0";
else return "Unknown."+type;
}
-
+ */
public String toString() {
StringBuffer b = new StringBuffer();
if (!enabled) b.append(';');
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpointList.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpointList.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/plugins/MAEndpointList.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -23,17 +23,16 @@
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
-import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.InputStream;
import java.io.InputStreamReader;
-import java.io.Writer;
import java.net.URL;
import java.util.List;
import java.util.Observable;
import java.util.Observer;
import java.util.Vector;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.PSLogger;
@@ -46,7 +45,7 @@
public class MAEndpointList extends Observable implements Observer{
public static PSLogger logger = new PSLogger(MAEndpointList.class);
protected String origin = "N/A";
- protected List supported = null;
+ protected List<IPerfsonarSchema> supported = null;
protected Vector<MAEndpoint> list;
protected boolean multipleEndpoints = true;
/**
@@ -65,7 +64,7 @@
* @param file
* @param supported (if null, all services are loaded)
*/
- public MAEndpointList(File file,List supported) {
+ public MAEndpointList(File file,List<IPerfsonarSchema> supported) {
this();
try {
this.supported =supported;
@@ -79,7 +78,7 @@
* @param url
* @param supported
*/
- public MAEndpointList(URL url,List supported) {
+ public MAEndpointList(URL url,List<IPerfsonarSchema> supported) {
this();
try {
this.supported =supported;
@@ -169,7 +168,7 @@
eof = true;
else {
MAEndpoint endpoint = new MAEndpoint(fileLine);
- if ((supported==null) ||
supported.contains(endpoint.getRequestType())) {
+ if ((supported==null) ||
supported.contains(endpoint.getSchema())) {
list.add(endpoint);
endpoint.addObserver(this);
}
@@ -286,5 +285,16 @@
public String toString() {
return "Services addresses";
}
+ public List<IPerfsonarSchema> getSupported() {
+ return supported;
+ }
+ public MAEndpoint createEndpoint() {
+ MAEndpoint mae = new MAEndpoint();
+ /*
+ if (supported != null)
+
mae.setSchema(supported.get(supported.size()-1).toString());
+ */
+ return mae;
+ }
}
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MARequest_NMWG2_Test.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MARequest_NMWG2_Test.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MARequest_NMWG2_Test.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -27,9 +27,9 @@
import junit.framework.TestCase;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.MetadataListResponseListener;
import org.perfsonar.perfsonarui.ResponseData;
-import org.perfsonar.perfsonarui.SmartMARequest;
import org.perfsonar.perfsonarui.TimeValueResponseListener;
import org.perfsonar.perfsonarui.UserDataResponseListener;
import org.perfsonar.perfsonarui.ippm.IPPMRequest;
@@ -70,7 +70,7 @@
* @return
*/
- public IPerfsonarRequest createRequest(String type) {
+ public IPerfsonarRequest createRequest(IPerfsonarSchema type) {
if (type.equals("perfsonar")) return new MARequest(0);
else if (type.equals("NMWG2v2")) return new
MARequest_NMWG2();
else if (type.equals("NMWG2v2_netutil")) return new
MARequest_NMWG2_Netutil();
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MetaDataListTest.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MetaDataListTest.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/MetaDataListTest.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -26,7 +26,9 @@
import junit.framework.TestCase;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.PSLogger;
+import org.perfsonar.perfsonarui.PerfsonarSchema;
import org.perfsonar.perfsonarui.ResponseData;
import org.perfsonar.perfsonarui.ma.MAMetadataList;
import org.perfsonar.perfsonarui.ma.MAPerfsonarModel;
@@ -37,6 +39,8 @@
import org.perfsonar.perfsonarui.ui.PerfsonarModel;
import org.perfsonar.perfsonarui.ui.actions.PerfsonarRequestAction;
+import sun.misc.PerformanceLogger;
+
/**
* TODO add description
* @author Nina Jeliazkova
@@ -96,21 +100,29 @@
ResponseData response = new ResponseData();
UserData d = new UserData();
- ArrayList<String> supported = new ArrayList<String>();
- supported.add("org.perfsonar.perfsonarui.ma.MARequest");
- supported.add("org.perfsonar.perfsonarui.ma.MARequest_NMWG2");
-
supported.add("org.perfsonar.perfsonarui.ma.MARequest_NMWG2_Netutil");
+ ArrayList<IPerfsonarSchema> supported = new
ArrayList<IPerfsonarSchema>();
+ supported.add(new PerfsonarSchema("NMWG2v2"));
+ supported.add(new PerfsonarSchema("perfsonar"));
+ supported.add(new PerfsonarSchema("NMWG2v2_netutil"));
+ supported.add(new
PerfsonarSchema("http://schemas.perfsonar.net/2.0"));
+
PerfsonarModel m = new MAPerfsonarModel(new MAEndpointList(new
File("MA.conf"),supported),response,d);
+
+ assertTrue(m.getEndpointList().size()>0);
+ for (int i=0; i < m.getEndpointList().size();i++)
+
assertTrue(supported.contains(m.getEndpointList().get(i).getSchema()));
+
m.getEndpointList().clear();
m.getEndpointList().add(endpoint);
//m.getUserData().setEndpoint(endpoint);
((UserData)m.getUserData()).addObserver(new Observer() {
public void update(Observable arg0, Object arg1) {
+ /*
System.out.print("---- Observer ---");
System.out.print(arg1);
System.out.print("\t");
System.out.println(arg0);
-
+ */
}
});
@@ -155,7 +167,7 @@
run(new MAEndpoint("http://selena.acad.bg:8090"));
}
public void testGeant() {
- run(new
MAEndpoint("http://mu.dante.org.uk:8090/axis/services/MeasurementArchiveService,perfsonar"));
+ run(new
MAEndpoint("GEANT2,http://stats.geant2.net/perfsonar/RRDMA-access/MeasurementArchiveService,http://schemas.perfsonar.net/2.0,'',http://ggf.org/ns/nmwg/characteristic/utilization/2.0,http://ggf.org/ns/nmwg/characteristic/utilization/2.0"));
}
}
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SearchByIPActionTest.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SearchByIPActionTest.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SearchByIPActionTest.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -27,6 +27,8 @@
import junit.framework.TestCase;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
+import org.perfsonar.perfsonarui.PerfsonarSchema;
import org.perfsonar.perfsonarui.ResponseData;
import org.perfsonar.perfsonarui.ma.MAMetadataList;
import org.perfsonar.perfsonarui.ma.MAPerfsonarModel;
@@ -59,23 +61,24 @@
ResponseData response = new ResponseData();
UserData d = new UserData();
+ ArrayList<IPerfsonarSchema> supported = new
ArrayList<IPerfsonarSchema>();
+ supported.add(new PerfsonarSchema("NMWG2v2"));
+ supported.add(new PerfsonarSchema("perfsonar"));
+ supported.add(new PerfsonarSchema("NMWG2v2_netutil"));
+ /*
ArrayList<String> supported = new ArrayList<String>();
supported.add("org.perfsonar.perfsonarui.ma.MARequest");
supported.add("org.perfsonar.perfsonarui.ma.MARequest_NMWG2");
supported.add("org.perfsonar.perfsonarui.ma.MARequest_NMWG2_Netutil");
+ */
MAPerfsonarModel m = new MAPerfsonarModel(new MAEndpointList(new
File("MA.conf"),supported),response,d);
m.getEndpointList().clear();
m.getEndpointList().add(endpoint);
//m.getUserData().setEndpoint(endpoint);
((UserData)m.getUserData()).addObserver(new Observer() {
public void update(Observable arg0, Object arg1) {
- /*
- System.out.print("---- Observer ---");
- System.out.print(arg1);
- System.out.print("\t");
- System.out.println(arg0);
- */
+
}
});
m.getDataList().addObserver(new Observer() {
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SmartMARequestTest.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SmartMARequestTest.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/test/SmartMARequestTest.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -31,6 +31,7 @@
import org.perfsonar.perfsonarui.AbstractPerfsonarResponse;
import org.perfsonar.perfsonarui.EmptyMARequest;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.MetadataListResponseListener;
import org.perfsonar.perfsonarui.PSLogger;
import org.perfsonar.perfsonarui.ResponseData;
@@ -66,7 +67,7 @@
@Override
public IPerfsonarRequest createMARequest(MAEndpoint
endpoint) {
- String schema = endpoint.getSchema();
+ IPerfsonarSchema schema =
endpoint.getSchema();
if (schema.equals("NMWG2v2")) return new
MARequest_NMWG2();
else if (schema.equals("NMWG2v2_netutil"))
return new MARequest_NMWG2_Netutil();
else if (schema.equals("perfsonar")) return
new MARequest();
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/FileEndpointsAction.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/FileEndpointsAction.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/FileEndpointsAction.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -100,24 +100,27 @@
fc.setFileFilter(fc.getChoosableFileFilters()[0]);
fc.setAcceptAllFileFilterUsed(false);
-
+ int returnval = JFileChooser.CANCEL_OPTION;
if (fileopen)
- fc.showOpenDialog(getFrame());
+ returnval = fc.showOpenDialog(getFrame());
else
- fc.showSaveDialog(getFrame());
+ returnval = fc.showSaveDialog(getFrame());
- File file = fc.getSelectedFile();
- if (file != null)
- try {
-
- if (fileopen) {
- endpoints.clear();
- endpoints.readEndpoints(file);
- }
- else endpoints.saveEndpoints(file);
- } catch (Exception x) {
-
- }
+ if (returnval == JFileChooser.APPROVE_OPTION) {
+
+ File file = fc.getSelectedFile();
+ if (file != null)
+ try {
+
+ if (fileopen) {
+ endpoints.clear();
+ endpoints.readEndpoints(file);
+ } else
+ endpoints.saveEndpoints(file);
+ } catch (Exception x) {
+
+ }
+ }
}
@@ -127,10 +130,13 @@
public synchronized void setFileopen(boolean fileopen) {
this.fileopen = fileopen;
- if (fileopen)
+ if (fileopen) {
putValue(NAME, "Load");
- else
+ putValue(SHORT_DESCRIPTION, "Load services list from a file");
+ } else {
putValue(NAME, "Save");
+ putValue(SHORT_DESCRIPTION, "Save services list to a file");
+ }
}
}
Added:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/NewEndpointAction.java
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectAllEndpointsAction.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectAllEndpointsAction.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectAllEndpointsAction.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -54,7 +54,8 @@
public SelectAllEndpointsAction(MAEndpointList endpoints, boolean
enable, String arg0, Icon arg1) {
super( endpoints, arg0, arg1);
- this.enable = enable;
+
+ setEnable(enable);
}
public void actionPerformed(ActionEvent arg0) {
@@ -67,6 +68,10 @@
public void setEnable(boolean enable) {
this.enable = enable;
+ if (enable)
+ putValue(SHORT_DESCRIPTION, "Select all services");
+ else
+ putValue(SHORT_DESCRIPTION, "Unselect all services");
}
}
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectOneEndpointAction.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectOneEndpointAction.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/SelectOneEndpointAction.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -20,11 +20,10 @@
package org.perfsonar.perfsonarui.ui.actions;
-import java.awt.event.ActionEvent;
-
import javax.swing.Icon;
-import javax.swing.JOptionPane;
+import org.perfsonar.perfsonarui.AbstractUserData;
+import org.perfsonar.perfsonarui.EchoSmartRequest;
import org.perfsonar.perfsonarui.plugins.MAEndpoint;
import org.perfsonar.perfsonarui.plugins.MAEndpointList;
import org.perfsonar.perfsonarui.ui.panels.MAEndpointsPanel;
@@ -53,10 +52,33 @@
Icon arg1) {
super(endpoints, arg0, arg1);
}
+ /*
@Override
public void actionPerformed(ActionEvent arg0) {
+
+ MAEndpointsPanel endpointsPanel = new
MAEndpointsPanel(endpoints,null,true);
+ //a.setFrame(endpointsPanel);
+ JOptionPane.showMessageDialog(frame,endpointsPanel,"Measurement
archives",
+ JOptionPane.PLAIN_MESSAGE);
+
+ endpointsPanel = null;
+ }
+ */
+ protected PSUIAction[] createActions() {
+ PSUIAction[] actions = new PSUIAction[3];
+
+ PSUIAction a = new FileEndpointsAction(endpoints,true);
+ actions[0] = a;
+ a = new FileEndpointsAction(endpoints,false);
+ actions[1] = a;
+ a = new NewEndpointAction(endpoints);
+ actions[2] = a;
+ return actions;
+ }
+ @Override
+ protected MAEndpointsPanel createEndpointsPanel(PSUIAction[] actions) {
boolean selected = false;
for (int i=0; i < endpoints.size();i++)
if (endpoints.get(i).isEnabled()) {
@@ -64,12 +86,7 @@
selected = true;
}
- MAEndpointsPanel endpointsPanel = new
MAEndpointsPanel(endpoints,null,true);
- //a.setFrame(endpointsPanel);
- JOptionPane.showMessageDialog(frame,endpointsPanel,"Measurement
archives",
- JOptionPane.PLAIN_MESSAGE);
-
- endpointsPanel = null;
+ return new MAEndpointsPanel(endpoints,actions,true);
}
}
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/ShowEndpointsAction.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/ShowEndpointsAction.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/actions/ShowEndpointsAction.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -84,13 +84,36 @@
*/
public void actionPerformed(ActionEvent arg0) {
- PSUIAction[] actions = new PSUIAction[5];
+ PSUIAction[] actions = createActions();
PSActionMap allActions = new PSActionMap();
+
+
+ MAEndpointsPanel endpointsPanel = createEndpointsPanel(actions);
+
+ for (int i=0; i < actions.length;i++) {
+ actions[i].setActions(allActions);
+ actions[i].setFrame(endpointsPanel);
+ allActions.put(Integer.toString(i+1), actions[i]);
+ }
+
+ JOptionPane.showMessageDialog(frame,endpointsPanel,"Measurement
archives",
+ JOptionPane.PLAIN_MESSAGE);
+
+ if ((actions.length>0) & (actions[0] instanceof EchoAction))
+ ((EchoAction)actions[0]).setInterrupted(true);
+ endpointsPanel = null;
+
+ allActions.clear();
+
+ for (int i=0; i < actions.length;i++)
+ actions[i] = null;
+ }
+ protected PSUIAction[] createActions() {
+ PSUIAction[] actions = new PSUIAction[6];
+
PSUIAction a = new SelectAllEndpointsAction(endpoints,true,"Select
all");
- allActions.put("1", a);
actions[1] = a;
a = new SelectAllEndpointsAction(endpoints,false,"Unselect all");
- allActions.put("2", a);
actions[2] = a;
EchoSmartRequest echoRequest = new EchoSmartRequest();
echoRequest.setTimeout(10000);
@@ -100,35 +123,21 @@
}
},endpoints);
- allActions.put("3", a);
actions[0] = a;
a = new FileEndpointsAction(endpoints,true);
- allActions.put("4", a);
actions[3] = a;
a = new FileEndpointsAction(endpoints,false);
- allActions.put("5", a);
- actions[4] = a;
+ actions[4] = a;
+ a = new NewEndpointAction(endpoints);
+ actions[5] = a;
- actions[0].setActions(allActions);
- actions[1].setActions(allActions);
- actions[2].setActions(allActions);
- actions[3].setActions(allActions);
- actions[4].setActions(allActions);
-
- MAEndpointsPanel endpointsPanel = new
MAEndpointsPanel(endpoints,actions);
- a.setFrame(endpointsPanel);
- JOptionPane.showMessageDialog(frame,endpointsPanel,"Measurement
archives",
- JOptionPane.PLAIN_MESSAGE);
-
- ((EchoAction)actions[0]).setInterrupted(true);
- endpointsPanel = null;
-
- allActions.clear();
- actions[0] = null;
- actions[1] = null;
- actions[2] = null;
+ return actions;
}
+ protected MAEndpointsPanel createEndpointsPanel(PSUIAction[] actions) {
+ return new MAEndpointsPanel(endpoints,actions);
+ }
+
/* (non-Javadoc)
* @see
org.perfsonar.perfsonarui.ui.actions.MyAction#setFrame(javax.swing.JFrame)
*/
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/panels/MAEndpointsPanel.java
===================================================================
---
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/panels/MAEndpointsPanel.java
2007-04-20 18:19:51 UTC (rev 2339)
+++
branches/perfsonarui/src/org/perfsonar/perfsonarui/ui/panels/MAEndpointsPanel.java
2007-04-21 08:59:43 UTC (rev 2340)
@@ -30,16 +30,17 @@
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
-import java.awt.GridLayout;
+import java.awt.Insets;
import java.awt.event.FocusEvent;
-import java.awt.event.FocusListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
+import java.util.List;
import javax.swing.BorderFactory;
import javax.swing.JButton;
+import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JFormattedTextField;
import javax.swing.JLabel;
@@ -49,6 +50,7 @@
import javax.swing.JTable;
import javax.swing.JToolBar;
import javax.swing.ListSelectionModel;
+import javax.swing.JToolBar.Separator;
import javax.swing.border.Border;
import javax.swing.border.TitledBorder;
import javax.swing.table.DefaultTableCellRenderer;
@@ -58,6 +60,7 @@
import org.apache.axis.AxisFault;
import org.apache.axis.utils.XMLUtils;
+import org.perfsonar.perfsonarui.IPerfsonarSchema;
import org.perfsonar.perfsonarui.RequestInterruptedException;
import org.perfsonar.perfsonarui.plugins.MAEndpoint;
import org.perfsonar.perfsonarui.plugins.MAEndpointList;
@@ -79,8 +82,8 @@
* Comment for <code>serialVersionUID</code>
*/
private static final long serialVersionUID = -5310185680687740510L;
- protected Dimension minDimension = new Dimension(200,24);
- protected Dimension prefDimension = new Dimension(600,400);
+ protected Dimension minDimension = new Dimension(200,100);
+ protected Dimension prefDimension = new Dimension(600,480);
/**
*
@@ -123,7 +126,7 @@
setLayout(new BorderLayout());
p.add(scrollPane,BorderLayout.CENTER);
- detailsPanel = new MAEndpointPanel();
+ detailsPanel = new MAEndpointPanel(endpoints.getSupported());
p.add(detailsPanel,BorderLayout.SOUTH);
add(p,BorderLayout.CENTER);
@@ -131,9 +134,17 @@
toolbar = new JToolBar();
((JToolBar)toolbar).setFloatable(false);
final JPopupMenu menu = new JPopupMenu();
+ String type = null;
for (int i=0; i < actions.length; i++) {
+ if (type == null) type =
actions[i].getClass().getName();
+ else {
+ if
(!type.equals(actions[i].getClass().getName()))
+ toolbar.add(new Separator());
+ type = actions[i].getClass().getName();
+
+ }
toolbar.add(new JButton(actions[i]));
- menu.add(actions[i]);
+ menu.add(actions[i]);
}
@@ -144,14 +155,9 @@
@Override
public void mousePressed(MouseEvent evt) {
- if (evt.isPopupTrigger()) {
+ if (evt.isPopupTrigger())
menu.show(evt.getComponent(), evt.getX(),
evt.getY());
- } else {
- int row = dataTable.rowAtPoint(evt.getPoint());
- if (row >=0) {
- detailsPanel.setEndpoint(endpoints.get(row));
- }
- }
+
}
@Override
public void mouseReleased(MouseEvent evt) {
@@ -161,6 +167,19 @@
}
});
}
+
+ //Listener to display endpoints details
+ dataTable.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mousePressed(MouseEvent evt) {
+ if (!evt.isPopupTrigger()) {
+ int row = dataTable.rowAtPoint(evt.getPoint());
+ if (row >=0) {
+ detailsPanel.setEndpoint(endpoints.get(row));
+ }
+ }
+ }
+ });
add(new JLabel("<html><i>The list is loaded from " +
endpoints.getOrigin() + "</i></html>"),BorderLayout.NORTH);
@@ -306,17 +325,18 @@
protected JFormattedTextField field_url;
protected JFormattedTextField field_name;
- protected JFormattedTextField field_schema;
+ protected JComboBox field_schema;
+ protected JFormattedTextField[] field_events;
- public MAEndpointPanel() {
- this(null);
+ public MAEndpointPanel(List<IPerfsonarSchema> supportedSchemas) {
+ this(supportedSchemas,null);
}
- public MAEndpointPanel(MAEndpoint endpoint) {
+ public MAEndpointPanel(List<IPerfsonarSchema>
supportedSchemas,MAEndpoint endpoint) {
super();
GridBagLayout l = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.HORIZONTAL;
-
+ c.insets = new Insets(4,1,1,1);
setLayout(l);
field_url = new JFormattedTextField();
@@ -324,32 +344,54 @@
field_name = new JFormattedTextField();
field_name.addPropertyChangeListener("value",this);
- field_schema = new JFormattedTextField();
+ if (supportedSchemas != null) {
+ field_schema = new JComboBox(supportedSchemas.toArray());
+ field_schema.setEditable(false);
+ } else {
+ field_schema = new JComboBox();
+ field_schema.setEditable(true);
+ }
field_schema.addPropertyChangeListener("value",this);
-
+
c.weightx = 0.25;
- c.gridwidth = GridBagConstraints.RELATIVE;
+ c.gridwidth = 1;
add( new JLabel("URL"),c);
- c.weightx = 1.25;
+ c.weightx = 1.75;
c.gridwidth = GridBagConstraints.REMAINDER;
add(field_url,c);
- c.weightx = 0.5;
- c.gridwidth = GridBagConstraints.RELATIVE;
+ c.insets = new Insets(1,1,1,1);
+ c.weightx = 0.25;
+ c.gridwidth = 1;
add( new JLabel("Name"),c);
- c.weightx = 1.0;
- c.gridwidth = GridBagConstraints.REMAINDER;
+ c.weightx = 0.75;
+ c.gridwidth = 1;
add(field_name,c);
- c.weightx = 0.5;
- c.gridwidth = GridBagConstraints.RELATIVE;
+ c.weightx = 0.25;
+ c.gridwidth = 1;
add( new JLabel("Schema"),c);
- c.weightx = 1.0;
+ c.weightx = 0.75;
c.gridwidth = GridBagConstraints.REMAINDER;
add(field_schema,c);
+
+ field_events = new JFormattedTextField[2];
+ for (int i=0; i < 2; i++) {
+ field_events[i] = new JFormattedTextField();
+ field_events[i].addPropertyChangeListener("value",this);
+ c.weightx = 0.25;
+ c.gridwidth = 1;
+ String s = "Event type";
+ if (i==0) s += " (in)"; else s += " (out)";
+ add( new JLabel(s),c);
+ c.weightx = 0.75;
+ c.gridwidth = 1;
+ add(field_events[i],c);
+ }
+
setEndpoint(endpoint);
}
public synchronized MAEndpoint getEndpoint() {
@@ -359,17 +401,23 @@
if (this.endpoint != null) {
this.endpoint.setEndpoint(field_url.getText());
this.endpoint.setTitle(field_name.getText());
- this.endpoint.setSchema(field_schema.getText());
+
this.endpoint.setSchema(field_schema.getSelectedItem().toString());
+ for (int i=0; i < 2; i++)
+ this.endpoint.setEvent(field_events[i].getText(), i);
}
this.endpoint = endpoint;
if (endpoint != null) {
field_url.setText(endpoint.getEndpoint());
field_name.setText(endpoint.getTitle());
- field_schema.setText(endpoint.getSchema());
+ field_schema.setSelectedItem(endpoint.getSchema().getSchema());
+ for (int i=0; i < 2; i++)
+ field_events[i].setText(endpoint.getEvent(i));
} else {
field_url.setText("");
field_name.setText("");
- field_schema.setText("");
+ field_schema.setSelectedItem("");
+ for (int i=0; i < 2; i++)
+ field_events[i].setText("");
}
}
public void propertyChange(PropertyChangeEvent evt) {
@@ -380,7 +428,11 @@
else if (src.equals(field_name))
endpoint.setTitle(field_name.getText());
else if (src.equals(field_schema))
- endpoint.setSchema(field_schema.getText());
+ endpoint.setSchema(field_schema.getSelectedItem().toString());
+ else if (src.equals(field_events[0]))
+ endpoint.setEvent(field_events[0].getText(),0);
+ else if (src.equals(field_events[1]))
+ endpoint.setEvent(field_events[1].getText(),1);
}
public void focusGained(FocusEvent e) {
- perfsonar: r2340 - in branches/perfsonarui/src/org/perfsonar/perfsonarui: . config ippm ma plugins test ui/actions ui/panels, svnlog, 04/21/2007
Archive powered by MHonArc 2.6.16.