perfsonar-dev - [pS-dev] [GEANT/SA2/ps-java-services] r5724 - in trunk/geant2_java-sshtelnet-mp: contrib/metadata_ configuration_tools/Configuration_Tool src/main src/ma in/java/org/perfsonar/service/measurementPoint src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType src/main/java/org/perfsonar/service/measurementPoint/look ingGlassType/bgp src/main/java/org/perfsonar/service/measu rementPoint/lookingGlassType/bgp/adapters src/main/java/or g/perfsonar/service/measurementPoint/lookingGlassType/encr yption src/main/java/org/perfsonar/service/measurementPoin t/lookingGlassType/engine/adapters src/main/java/org/perfs onar/service/measurementPoint/lookingGlassType/engine/comm ands src/main/java/org/perfsonar/service/measurementPoint/ lookingGlassType/internalChecks src/main/java/org/perfsona r/service/measurementPoint/lookingGlassType/ip src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType /ip/adapters src/main/java/org/perfsonar/service/measureme ntPoint/lookingGlassType/i pv6 src/main/java/org/perfsonar /service/measurementPoint/lookingGlassType/ipv6/adapters s rc/main/java/org/perfsonar/service/measurementPoint/lookin gGlassType/metadata src/main/java/org/perfsonar/service/me asurementPoint/lookingGlassType/status src/main/java/org/p erfsonar/service/measurementPoint/lookingGlassType/status/ adapters src/main/java/org/perfsonar/service/measurementPo int/remote/common src/main/java/org/perfsonar/service/meas urementPoint/remote/ssh src/main/java/org/perfsonar/servic e/measurementPoint/remote/telnet src/main/resources src/ma in/resources/perfsonar src/main/resources/perfsonar/conf
Subject: perfsonar development work
List archive
[pS-dev] [GEANT/SA2/ps-java-services] r5724 - in trunk/geant2_java-sshtelnet-mp: contrib/metadata_ configuration_tools/Configuration_Tool src/main src/ma in/java/org/perfsonar/service/measurementPoint src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType src/main/java/org/perfsonar/service/measurementPoint/look ingGlassType/bgp src/main/java/org/perfsonar/service/measu rementPoint/lookingGlassType/bgp/adapters src/main/java/or g/perfsonar/service/measurementPoint/lookingGlassType/encr yption src/main/java/org/perfsonar/service/measurementPoin t/lookingGlassType/engine/adapters src/main/java/org/perfs onar/service/measurementPoint/lookingGlassType/engine/comm ands src/main/java/org/perfsonar/service/measurementPoint/ lookingGlassType/internalChecks src/main/java/org/perfsona r/service/measurementPoint/lookingGlassType/ip src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType /ip/adapters src/main/java/org/perfsonar/service/measureme ntPoint/lookingGlassType/i pv6 src/main/java/org/perfsonar /service/measurementPoint/lookingGlassType/ipv6/adapters s rc/main/java/org/perfsonar/service/measurementPoint/lookin gGlassType/metadata src/main/java/org/perfsonar/service/me asurementPoint/lookingGlassType/status src/main/java/org/p erfsonar/service/measurementPoint/lookingGlassType/status/ adapters src/main/java/org/perfsonar/service/measurementPo int/remote/common src/main/java/org/perfsonar/service/meas urementPoint/remote/ssh src/main/java/org/perfsonar/servic e/measurementPoint/remote/telnet src/main/resources src/ma in/resources/perfsonar src/main/resources/perfsonar/conf
Chronological Thread
- From:
- To:
- Subject: [pS-dev] [GEANT/SA2/ps-java-services] r5724 - in trunk/geant2_java-sshtelnet-mp: contrib/metadata_ configuration_tools/Configuration_Tool src/main src/ma in/java/org/perfsonar/service/measurementPoint src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType src/main/java/org/perfsonar/service/measurementPoint/look ingGlassType/bgp src/main/java/org/perfsonar/service/measu rementPoint/lookingGlassType/bgp/adapters src/main/java/or g/perfsonar/service/measurementPoint/lookingGlassType/encr yption src/main/java/org/perfsonar/service/measurementPoin t/lookingGlassType/engine/adapters src/main/java/org/perfs onar/service/measurementPoint/lookingGlassType/engine/comm ands src/main/java/org/perfsonar/service/measurementPoint/ lookingGlassType/internalChecks src/main/java/org/perfsona r/service/measurementPoint/lookingGlassType/ip src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType /ip/adapters src/main/java/org/perfsonar/service/measureme ntPoint/lookingGlassType/i pv6 src/main/java/org/perfsonar /service/measurementPoint/lookingGlassType/ipv6/adapters s rc/main/java/org/perfsonar/service/measurementPoint/lookin gGlassType/metadata src/main/java/org/perfsonar/service/me asurementPoint/lookingGlassType/status src/main/java/org/p erfsonar/service/measurementPoint/lookingGlassType/status/ adapters src/main/java/org/perfsonar/service/measurementPo int/remote/common src/main/java/org/perfsonar/service/meas urementPoint/remote/ssh src/main/java/org/perfsonar/servic e/measurementPoint/remote/telnet src/main/resources src/ma in/resources/perfsonar src/main/resources/perfsonar/conf
- Date: Tue, 17 Aug 2010 18:11:46 +0100
Author: psnc.pietrzak
Date: 2010-08-17 18:11:46 +0100 (Tue, 17 Aug 2010)
New Revision: 5724
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Configuration.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Device.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/EchoServiceEngine.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MessageDecorator.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MetadataUpdater.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/ServiceCapabilitiesEngine.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/SetupDataServiceEngine.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/TelnetConnection.java
trunk/geant2_java-sshtelnet-mp/src/main/resources/
trunk/geant2_java-sshtelnet-mp/src/main/resources/log4j.xml
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml.template
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/sshtelnetmetadata.xml
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/webAdminConfig.xml
Removed:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestExecutingThread.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestMonitor.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/WebserviceEngineAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/tests/
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/webAdmin/
Modified:
trunk/geant2_java-sshtelnet-mp/contrib/metadata_configuration_tools/Configuration_Tool/SSHTELNET_configurator.sh
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/BgpAdapterInterface.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoBgpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoKeyBgpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoSshBgpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperBgpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperKeyBgpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperSshBgpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/encryption/PasswordEncryptor.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoKeyAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoSshAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperKeyAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperSshAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/ServicePropertiesConfigurator.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/commands/ParameterChecker.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/internalChecks/InternalChecker.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/IpAdapterInterface.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoIpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoKeyIpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoSshIpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperIpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperKeyIpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperSshIpAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/Ipv6AdapterInterface.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoIpv6Adapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoKeyIpv6Adapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoSshIpv6Adapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperIpv6Adapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperKeyIpv6Adapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperSshIpv6Adapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/DbMetadataConfiguration.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/MetadataConfiguration.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/StatusAdapterInterface.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoKeyStatusAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoSshStatusAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoStatusAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperKeyStatusAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperSshStatusAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperStatusAdapter.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/common/RemoteManager.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshKeyManager.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshManager.java
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/telnet/TelnetManager.java
Log:
Changed to psbase2
Modified:
trunk/geant2_java-sshtelnet-mp/contrib/metadata_configuration_tools/Configuration_Tool/SSHTELNET_configurator.sh
===================================================================
---
trunk/geant2_java-sshtelnet-mp/contrib/metadata_configuration_tools/Configuration_Tool/SSHTELNET_configurator.sh
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/contrib/metadata_configuration_tools/Configuration_Tool/SSHTELNET_configurator.sh
2010-08-17 17:11:46 UTC (rev 5724)
@@ -1,18 +1,18 @@
-#!/bin/sh
-
-# The first existing directory is used for JAVA_HOME
-JDK_DIRS="/usr/java/latest /usr/lib/jvm/java-6-sun
/usr/lib/jvm/java-1.5.0-sun /usr/lib/j2sdk1.5-sun /usr/lib/jvm/java
/usr/lib/jvm/java-gcj"
-
-# Look for the right JVM to use
-for jdir in $JDK_DIRS; do
- if [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; then
- JAVA_HOME_TMP="$jdir"
- # checks for a real JDK like environment
- if [ -r "$jdir/bin/jdb" ]; then
- JAVA_HOME="$JAVA_HOME_TMP"
- fi
- fi
-done
-export JAVA_HOME
-
-$JAVA_HOME/bin/java -jar SSHTELNET_configurator.jar $1
+#!/bin/sh
+
+# The first existing directory is used for JAVA_HOME
+JDK_DIRS="/usr/java/latest /usr/lib/jvm/java-6-sun
/usr/lib/jvm/java-1.5.0-sun /usr/lib/j2sdk1.5-sun /usr/lib/jvm/java
/usr/lib/jvm/java-gcj"
+
+# Look for the right JVM to use
+for jdir in $JDK_DIRS; do
+ if [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; then
+ JAVA_HOME_TMP="$jdir"
+ # checks for a real JDK like environment
+ if [ -r "$jdir/bin/jdb" ]; then
+ JAVA_HOME="$JAVA_HOME_TMP"
+ fi
+ fi
+done
+export JAVA_HOME
+
+$JAVA_HOME/bin/java -jar SSHTELNET_configurator.jar $1
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Configuration.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Configuration.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Configuration.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,47 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.io.File;
+
+import org.perfsonar.base2.service.configuration.Component;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+
+/**
+ *
+ * @author <a
href="mailto:">Blazej
Pietrzak</a>
+ *
+ */
+public class Configuration extends Component {
+ private String XMLDBMetadataFileName;
+ public void setXMLDBMetadataFileName(String filename) {
+ this.XMLDBMetadataFileName = filename;
+ }
+ public String getXMLDBMetadataFileName() {
+ return XMLDBMetadataFileName;
+ }
+
+ private String metadataFile;
+ public String getMetadataFile() {
+ return metadataFile;
+ }
+
+ private String tokenPath;
+ public void setTokenPath(String tokenPath) {
+ this.tokenPath = tokenPath;
+ }
+ public String getTokenPath() {
+ return tokenPath;
+ }
+
+ @Override
+ public void destroy() throws PerfSONARException { }
+
+ @Override
+ public void init() throws PerfSONARException {
+ metadataFile = getOption("metadata-file").getValue();
+ XMLDBMetadataFileName = new File(metadataFile).getName();
+ tokenPath = getOption("token-path").getValue();
+ }
+
+ @Override
+ public void run() throws PerfSONARException { }
+}
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Device.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Device.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/Device.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,84 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.io.IOException;
+
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.xml.Element;
+import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
+
+public class Device {
+ private Element element;
+
+ public Device(Element element) {
+ this.element = element;
+ }
+
+ public String getName() {
+ return element.getFirstChild("subject").getText();
+ }
+
+ private String getParameter(String name) {
+ for (Element param :
element.getFirstChild("parameters").getChildren("parameter")) {
+ if (param.getAttribute("name").equals(name))
+ return param.getAttribute("value");
+ }
+
+ return null;
+ }
+ private int getParameterAsInt(String name) {
+ for (Element param :
element.getFirstChild("parameters").getChildren("parameter"))
+ if (param.getAttribute("name").equals(name))
+ return param.getAttributeAsInt("value");
+
+ return -1;
+ }
+
+ public String getUrl() throws PerfSONARException {
+ return validate(getParameter("url"), "Url is not defined");
+ }
+
+ private String validate(String value, String desc) throws
PerfSONARException {
+ if (value == null)
+ throw new PerfSONARException(desc + " for device " +
getName());
+ return value;
+ }
+ private int validate(int value, String desc) throws
PerfSONARException {
+ if (value < 0)
+ throw new PerfSONARException(desc + " for device " +
getName());
+
+ return value;
+ }
+
+ public int getPort() throws PerfSONARException {
+ return validate(getParameterAsInt("port"), "Invalid port
number");
+ }
+
+ public int getTimeout() throws PerfSONARException {
+ return validate(getParameterAsInt("timeout"), "Invalid
timeout value");
+ }
+
+ public String getPrompt() throws PerfSONARException {
+ return validate(getParameter("prompt"), "Prompt is not
defined");
+ }
+
+ public String getPassword() throws PerfSONARException {
+ return validate(getParameter("password"), "Password is not
defined");
+ }
+
+ public String getUserName() throws PerfSONARException {
+ return validate(getParameter("username"), "User name is not
defined");
+ }
+
+ public String getClassName() throws PerfSONARException {
+ return validate(getParameter("class_name"), "Class name is
not defined");
+ }
+
+ public void testConnection() throws IOException, PerfSONARException {
+ final TelnetConnection telnet = new
TelnetConnection(getUrl(), getPort(), getTimeout(), getPrompt());
+ if (getClassName().toLowerCase().contains("cisco"))
+ telnet.connect(getUserName(), "Username:",
PasswordEncryptor.decryptPassword(getPassword()), "Password:");
+ else
+ telnet.connect(getUserName(), "login:",
PasswordEncryptor.decryptPassword(getPassword()), "Password:");
+ telnet.disconnect();
+ }
+}
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/EchoServiceEngine.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/EchoServiceEngine.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/EchoServiceEngine.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,136 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.util.List;
+
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Data;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Metadata;
+import
org.perfsonar.service.measurementPoint.lookingGlassType.internalChecks.InternalChecker;
+
+public class EchoServiceEngine extends
+ org.perfsonar.base2.service.requesthandler.EchoServiceEngine {
+
+ Logger logger = Logger.getLogger(EchoServiceEngine.class);
+ static String SELFTEST_EVENT_TYPE =
"http://schemas.perfsonar.net/tools/admin/selftest/1.0";
+
+ public void takeAction(ServiceMessage serviceRequest,
+ ServiceMessage serviceResponse) throws PerfSONARException {
+
+ final Message request = serviceRequest.getMessageElement();
+ if
(getEventType(request).equals(EchoServiceEngine.ECHO_SELF_TEST)
+ || getEventType(request).equals(SELFTEST_EVENT_TYPE))
+ selfTest(request, serviceResponse);
+ else
+ super.takeAction(serviceRequest, serviceResponse);
+ }
+
+ private Metadata createCopy(Metadata metadata) {
+ final Metadata result = new Metadata();
+ result.setId(metadata.getId());
+ result.setEventType(metadata.getFirstEventType());
+ return result;
+ }
+ private Data createCopy(Data data, Metadata metadata) {
+ final Data result = new Data();
+ result.setId(data.getId());
+ result.setMetadataIdRef(metadata.getId());
+ return result;
+ }
+
+ private Data createData(String id, String metadataIdRef, Datum datum)
{
+ final Data result = new Data(id, metadataIdRef, "nmwg");
+ result.setDatum(datum);
+ return result;
+ }
+ private Data createData(String id, String metadataIdRef, String
datum) {
+ final Datum temp = new Datum();
+ temp.setText(datum);
+ return createData(id, metadataIdRef, temp);
+ }
+
+ private Metadata createMetadata(String id, String eventType) {
+ final Metadata result = new Metadata();
+ result.setId(id);
+ final EventType temp = new EventType();
+ temp.setEventType(eventType);
+ result.setEventType(temp);
+ return result;
+ }
+
+ private void addData(Data resData, String id, String metadataIdRef,
String datum) {
+ resData.addChild(createData(id, metadataIdRef, datum));
+ }
+
+ private void addMetadata(Data resData, String id, String eventType) {
+ resData.addChild(createMetadata(id, eventType));
+ }
+
+ private static final String SUCCESS = "/success/1.0";
+ private static final String FAILURE = "/failure/1.0";
+
+ private static final String EXIST_TEST_METADATA_ID =
"sshtelnet_eXist_test";
+ private static final String EXIST_TEST_SUCCESS_EVENT_TYPE =
"http://schemas.perfsonar.net/tools/admin/selftest/MP/SSHTELNET/sshtelnet_eXist_test"
+ SUCCESS;
+ private static final String EXIST_TEST_FAILURE_EVENT_TYPE =
"http://schemas.perfsonar.net/tools/admin/selftest/MP/SSHTELNET/sshtelnet_eXist_test"
+ FAILURE;
+
+ private static final String EXIST_TEST_DATA_ID =
"data_sshtelnet_eXist_test";
+ private static final String METADATA_DEVICE_TEST_ID_PREFIX =
"sshtelnet_device_test_";
+ private static final String DATA_DEVICE_TEST_ID_PREFIX =
"data_sshtelnet_device_test_";
+ private static final String DEVICE_TEST_EVENT_TYPE_PREFIX =
"http://schemas.perfsonar.net/tools/admin/selftest/MP/SSHTELNET/sshtelnet_device_test_";
+
+ private void setUpResult(Data resData, int i, boolean success, String
text) {
+ final String result;
+ if (success)
+ result = SUCCESS;
+ else
+ result = FAILURE;
+ addMetadata(resData, METADATA_DEVICE_TEST_ID_PREFIX + i,
DEVICE_TEST_EVENT_TYPE_PREFIX + i + result);
+ addData(resData, DATA_DEVICE_TEST_ID_PREFIX + i,
METADATA_DEVICE_TEST_ID_PREFIX + i, text);
+ }
+ private void setUpSuccess(Data resData, int i, String text) {
+ setUpResult(resData, i, true, text);
+ }
+ private void setUpFailure(Data resData, int i, String text) {
+ setUpResult(resData, i, false, text);
+ }
+
+ private void selfTest(Message req, ServiceMessage response) throws
PerfSONARException {
+ final InternalChecker checker = new InternalChecker();
+
+ final Message resp = new Message();
+
resp.setMetadata(createCopy(req.getMetadataCollection().iterator().next()));
+ final Data reqData =
req.getDataCollection().iterator().next();
+ Data resData = createCopy(reqData,
resp.getMetadataCollection().iterator().next());
+
+ if (checker.checkExist()){
+ final List<String> devices = checker.getDevices();
+ addMetadata(resData, EXIST_TEST_METADATA_ID,
EXIST_TEST_SUCCESS_EVENT_TYPE);
+ final String text;
+ if (devices.size() <= 0)
+ text = "eXist database reachable and metadata
configuration file found, however, no devices are configured in the MP";
+ else
+ text = "eXist database reachable and metadata
configuration file found";
+ addData(resData, EXIST_TEST_DATA_ID,
EXIST_TEST_METADATA_ID, text);
+
+ int i = 1;
+ for (String device : devices) {
+ if (checker.checkDevice(device))
+ setUpSuccess(resData, i, "Device " +
device + " reachable: OK");
+ else
+ setUpFailure(resData, i, "Device " +
device + " not reachable! The MP will not be able to issue commands on this
device!");
+
+ i++;
+ }
+ } else {
+ addMetadata(resData, EXIST_TEST_METADATA_ID,
EXIST_TEST_FAILURE_EVENT_TYPE);
+ addData(resData, EXIST_TEST_DATA_ID,
EXIST_TEST_METADATA_ID, "eXist database not reachable or no metadata
configuration file found in eXist database.");
+ }
+
+ resp.addChild(resData);
+ response.setElement(resp);
+ }
+}
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MessageDecorator.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MessageDecorator.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MessageDecorator.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,87 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.perfsonar.base2.service.configuration.ConfigurationManager;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.Element;
+import org.perfsonar.base2.xml.nmwg.Data;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Metadata;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.base2.xml.nmwg.Parameters;
+
+public class MessageDecorator {
+ Message msg;
+ public MessageDecorator(Message msg) {
+ this.msg = msg;
+ }
+
+ public String getType() {
+ return msg.getAttribute("type");
+ }
+
+ public Metadata getMetadata() {
+ return msg.getMetadataCollection().iterator().next();
+ }
+
+ public String getSubject() {
+ return
getMetadata().getSubject().getChildren().iterator().next().getText();
+ }
+
+ public EventType getEventType() {
+ return getMetadata().getFirstEventType();
+ }
+
+ public Parameter[] getParameters() {
+ final Parameters params = getMetadata().getParameters();
+ final List<Parameter> result = new ArrayList<Parameter>();
+
+ if (params.getChildren("parameter") == null)
+ return new Parameter[0];
+
+ for (Element elem : params.getChildren("parameter"))
+ if (elem instanceof Parameter)
+ result.add((Parameter) elem);
+
+ final Parameter[] result1 = new Parameter[result.size()];
+ for (int i = 0; i < result1.length; i++)
+ result1[i] = result.get(i);
+ return result1;
+ }
+
+ public Data createData(Datum datum) {
+ final Data result = (Data)
msg.getDataCollection().iterator().next().getCopy();
+ for (Element elem : result.getChildren())
+ result.removeChild(elem);
+ result.setDatum(datum);
+ return result;
+ }
+
+ public Message createResponseMessage(Datum datum) {
+ final Message response = new Message();
+ response.setData(createData(datum));
+ return response;
+ }
+
+ public void setResponseMessage(ServiceMessage resp, Datum datum) {
+ final Message temp = createResponseMessage(datum);
+ temp.setMetadata(getMetadata());
+ resp.setElement(temp);
+ }
+
+ public void setResponseMessageAllMetadata(ServiceMessage resp, Datum
datum) {
+ final Message temp = createResponseMessage(datum);
+ for (Metadata meta : msg.getMetadataCollection())
+ temp.setMetadata(meta);
+ resp.setElement(temp);
+ }
+
+ public String getTokenPath() throws PerfSONARException {
+ return ((Configuration)
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("Configuration")).getTokenPath();
+ }
+}
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MetadataUpdater.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MetadataUpdater.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/MetadataUpdater.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,156 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.io.File;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+
+import org.exist.security.User;
+import org.exist.xmldb.UserManagementService;
+import org.perfsonar.base2.service.configuration.Action;
+import org.perfsonar.base2.service.configuration.ConfigurationManager;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.scheduler.SchedulerAction;
+import org.perfsonar.base2.service.storage.xml.XMLDBComponent;
+import org.xmldb.api.DatabaseManager;
+import org.xmldb.api.base.Collection;
+import org.xmldb.api.base.Database;
+import org.xmldb.api.base.Resource;
+import org.xmldb.api.base.ResourceSet;
+import org.xmldb.api.base.XMLDBException;
+import org.xmldb.api.modules.XMLResource;
+import org.xmldb.api.modules.XPathQueryService;
+
+public class MetadataUpdater extends Action implements SchedulerAction {
+
+ private static final String CREATE_USER_OPTION = "create-user";
+ private static final String TYPE = "XMLResource";
+
+ public void runAction() {
+ try {
+ if (shouldUserBeCreated())
+ addUser();
+ final Collection collection =
getCollection(getUsername(), getPassword());
+ if (getMetadata(collection) != null) {
+ final File file = getMetadataFile();
+ if (file.lastModified() >
getLastModified(collection)) {
+ logger.debug("Updating metadata " +
getResourceId() + " from the file: " + file.getAbsolutePath() + " ...");
+ store(file, collection);
+ logger.info("Metadata " +
getResourceId() + " has been updated from the file: " +
file.getAbsolutePath());
+ }
+ return;
+ }
+ final File file = getMetadataFile();
+ logger.debug("Adding " + getResourceId() + "
collection from file: " + file.getAbsolutePath() + " ...");
+ store(file, collection);
+ logger.info("Metadata " + getResourceId() + " added
to the database from file: " + file.getAbsolutePath());
+ } catch (Exception ex) {
+ logger.error("Cannot update metadata file.", ex);
+ }
+ }
+
+ private void addUser() throws XMLDBException, PerfSONARException {
+ final Collection col =
getCollection(getOption("username").getValue(),
getOption("password").getValue());
+ logger.debug("Creating user account: " + getUsername() + "
...");
+ final User user = new User(getUsername(), getPassword());
+ user.addGroup("dba");
+ getUserManagmentService(col).addUser(user);
+ logger.info("User account: " + getUsername() + " created
successfully.");
+ }
+
+ private boolean shouldUserBeCreated() throws XMLDBException,
PerfSONARException {
+ final Collection col = getCollection();
+ if ((getOption(CREATE_USER_OPTION) == null) ||
!getOption(CREATE_USER_OPTION).getValueAsBoolean())
+ return false;
+ if (getUserManagmentService(col).getUser(getUsername()) !=
null)
+ return false;
+
+ return true;
+ }
+
+ private File getMetadataFile() throws PerfSONARException {
+ final File file = new File(getResourcePath());
+ if (!file.exists())
+ throw new
PerfSONARException("error.mp.sshtelnet.configuration", "File " +
file.getAbsolutePath() + " does not exist.");
+
+ return file;
+ }
+
+ private String getResourceId() throws PerfSONARException {
+ final Configuration config = (Configuration)
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("Configuration");
+ return config.getXMLDBMetadataFileName();
+ }
+
+ private String getResourcePath() throws PerfSONARException {
+ final Configuration config = (Configuration)
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("Configuration");
+ return config.getMetadataFile();
+ }
+
+ private String getUri() throws PerfSONARException {
+ final XMLDBComponent xmlDb = (XMLDBComponent)
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("XMLDB");
+ return xmlDb.getUri().replace("http://",
"xmldb:exist://").replace("rest", "xmlrpc");
+ }
+
+ protected void store(File file, Collection collection) throws
XMLDBException {
+ final XMLResource document = (XMLResource)
collection.createResource(file.getName(), TYPE);
+ document.setContent(file);
+ collection.storeResource(document);
+ }
+
+ private XMLResource getMetadata(Collection collection) throws
PerfSONARException, XMLDBException {
+ if (collection == null)
+ return null;
+
+ return (XMLResource) collection.getResource(getResourceId());
+ }
+ private Collection getCollection() throws PerfSONARException {
+ return getCollection(null, null);
+ }
+ private Collection getCollection(String username, String password)
throws PerfSONARException {
+ final Database database;
+ try {
+ database = (Database)
Class.forName("org.exist.xmldb.DatabaseImpl").newInstance();
+ DatabaseManager.registerDatabase(database);
+ } catch (Exception ex) {
+ throw new
PerfSONARException("error.mp.sshtelnet.xmldb", "Unable to initialize the
database.", ex);
+ }
+
+ logger.debug("Getting collection from " + getUri() + " ...");
+
+ try {
+ if ((username != null) && (password != null))
+ return DatabaseManager.getCollection(getUri(),
username, password);
+ return DatabaseManager.getCollection(getUri());
+ } catch (Exception ex) {
+ throw new
PerfSONARException("error.mp.sshtelnet.xmldb", "Unable to get collection from
" + getUri(), ex);
+ }
+ }
+
+
+ private String getUsername() throws PerfSONARException {
+ return
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("XMLDB").getOption("username").getValue();
+ }
+ private String getPassword() throws PerfSONARException {
+ return
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("XMLDB").getOption("password").getValue();
+ }
+
+ private long getLastModified(Collection col) throws XMLDBException,
PerfSONARException, ParseException {
+ final XPathQueryService service = (XPathQueryService)
col.getService("XPathQueryService", "1.0");
+ final ResourceSet result =
service.query("xmldb:last-modified(\"/db\", \"" + getResourceId() + "\")");
+ return new
SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ").parse(getDateTime(result.getIterator().nextResource())).getTime();
+ }
+
+ private String getDateTime(Resource r) throws XMLDBException {
+ String dateTime = r.getContent().toString();
+ int idxTimeZone = dateTime.lastIndexOf("+");
+ if (idxTimeZone == -1)
+ idxTimeZone = dateTime.lastIndexOf("-");
+ int idxRemove = dateTime.lastIndexOf(":");
+ if ((idxTimeZone != -1) && (idxTimeZone < idxRemove))
+ dateTime = dateTime.substring(0, idxRemove) +
dateTime.substring(idxRemove + 1);
+ return dateTime;
+ }
+
+ protected UserManagementService getUserManagmentService(Collection
collection) throws XMLDBException {
+ return (UserManagementService)
collection.getService("UserManagementService", "1.0");
+ }
+}
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/ServiceCapabilitiesEngine.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/ServiceCapabilitiesEngine.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/ServiceCapabilitiesEngine.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,220 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Data;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Metadata;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.base2.xml.nmwg.Parameters;
+import org.perfsonar.base2.xml.nmwg.Subject;
+import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
+import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
+
+public class ServiceCapabilitiesEngine implements ServiceEngine {
+ private List devices;
+ private final MetadataConfiguration configuration;
+ private Logger logger =
Logger.getLogger(ServiceCapabilitiesEngine.class);
+
+ public ServiceCapabilitiesEngine() throws PerfSONARException {
+ this.configuration = new DbMetadataConfiguration();
+ configuration.initStorage();
+
+ try {
+ devices =
configuration.getProperties(MetadataConfiguration.DEVICE_NAMES);
+ } catch (PerfSONARException ex) {
+ devices = new ArrayList<String>();
+ }
+ }
+
+ private void addMetadata(Message message, Metadata metadata) {
+ message.addChild(metadata);
+ }
+ private void addParameters(Metadata metadata, String id, Parameter
parameter) {
+ metadata.addChild(createParameters(id, parameter));
+ }
+ private void addParameters(Datum datum, Parameters params) {
+ datum.addChild(params);
+ }
+ private void addDatum(Data data, Datum datum) {
+ data.addChild(datum);
+ }
+ private void addData(Message message, Data data) {
+ message.addChild(data);
+ }
+
+ private void setSubject(Metadata metadata, String id, String text) {
+ final Subject subject = new Subject();
+ subject.setId(id);
+ subject.setText(text);
+ metadata.addChild(subject);
+ }
+ private void setSubject(Metadata metadata, Subject subject) {
+ metadata.addChild(subject);
+ }
+ private void setEventType(Datum datum, EventType eventType) {
+ datum.addChild(eventType);
+ }
+ private void setEventType(Metadata metadata, EventType eventType) {
+ metadata.addChild(eventType);
+ }
+
+ private Parameter createParameter(String name, String value) {
+ final Parameter result = new Parameter();
+ result.setParameter("name", name);
+ result.setParameter("value", value);
+ return result;
+ }
+ private Parameter createParameter(String id, String name, String
value) {
+ final Parameter result = new Parameter();
+ result.setId(id);
+ result.setParameter("name", name);
+ if (value != null)
+ result.setParameter("value", value);
+ return result;
+ }
+ private Parameters createParameters(String id, Parameter parameter) {
+ final Parameters result = new Parameters();
+ result.setId(id);
+ if (parameter != null)
+ result.addChild(parameter);
+ return result;
+ }
+ private Parameters createParameters(String id) {
+ return createParameters(id, null);
+ }
+ private Data createData(String id, String metadataIdRef) {
+ final Data result = new Data();
+ result.setId(id);
+ result.setMetadataIdRef(metadataIdRef);
+ return result;
+ }
+ private EventType createEventType(String text) {
+ final EventType result = new EventType();
+ result.setText(text);
+ return result;
+ }
+ private EventType createEventType(String id, String text) {
+ final EventType result = new EventType();
+ result.setId(id);
+ result.setEventType(text);
+ return result;
+ }
+ private Datum createDatum(String id, String text) {
+ final Datum result = new Datum();
+ result.setId(id);
+ result.setText(text);
+ result.setNamespacePrefix("nmwgr");
+ result.setNamespaceUri("http://ggf.org/ns/nmwg/result/2.0/");
+ return result;
+ }
+ private Metadata createMetadata(String id) {
+ final Metadata result = new Metadata();
+ result.setId(id);
+ return result;
+ }
+ private Subject createSubject(String id, String metadataIdRef) {
+ final Subject result = new Subject();
+ result.setId(id);
+ result.setMetadataIdRef(metadataIdRef);
+ return result;
+ }
+
+
+ public void takeAction(ServiceMessage serviceRequest, ServiceMessage
serviceResponse) {
+ final Message response = new Message();
+ final Message request = serviceRequest.getMessageElement();
+ response.setId("Resp_" + request.getId());
+ response.setMessageIdRef(request.getId());
+ response.setType("MetadataKeyResponse");
+ int idx = 0;
+ for (String deviceName : (List<String>) devices) {
+ final Metadata metadata = new Metadata();
+
+ metadata.setId("metadata" + idx);
+ setSubject(metadata, "subject" + idx, deviceName);
+ try {
+ addParameters(metadata, "metaParams" + idx,
createParameter("url", configuration.getProperty(deviceName, "url")));
+ } catch (PerfSONARException ex) {
+ System.err.println(ex.getMessage() + " (url
parameter) for device " + deviceName);
+ addResultCode(response, idx, false,
ex.getMessage() + " (url parameter) for device " + deviceName);
+ idx++;
+ continue;
+ }
+ addMetadata(response, metadata);
+
+ final List<String> commands;
+ try {
+ commands = (List<String>)
configuration.getProperties(deviceName, "commands");
+ } catch (PerfSONARException ex) {
+ System.err.println(ex.getMessage() + " (commands parameter)
for device " + deviceName);
+ addResultCode(response, idx, false, ex.getMessage() + "
(commands parameter) for device " + deviceName);
+ idx++;
+ continue;
+ }
+
+ addCommandsList(response, idx, deviceName, metadata, commands);
+ idx++;
+ }
+ serviceResponse.setElement(response);
+ }
+
+ private void addCommandsList(final Message response, int idx,
+ String deviceName, final Metadata metadata,
+ final List<String> commands) {
+ addData(response, createCommandsList(response, idx,
deviceName, metadata, commands));
+ }
+
+ private Data createCommandsList(final Message response, int idx,
String deviceName,
+ final Metadata metadata, final List<String> commands) {
+
+ final Data data = createData("data" + idx, metadata.getId());
+ for (String command : commands) {
+ final Datum datum = new Datum();
+ datum.setNamespacePrefix("nmwgr");
+
datum.setNamespaceUri("http://ggf.org/ns/nmwg/result/2.0/");
+ setEventType(datum, createEventType(command));
+ final Parameters params = createParameters("params" +
idx);
+ final String desc = getProperty(deviceName, command,
"description");
+ final String syntax = getProperty(deviceName, command,
"syntax");
+ final String cmd = getProperty(deviceName, command,
"command");
+ //FIXME parameters must have ids, otherwise axis crashes
+ params.addParameter(createParameter("param1-" + idx,
"description", desc));
+ params.addParameter(createParameter("param2-" + idx,
"syntax", syntax));
+ params.addParameter(createParameter("param3-" + idx,
"command", cmd));
+ addParameters(datum, params);
+ addDatum(data, datum);
+ }
+ addResultCode(response, idx, true, "Successfully executed
MetaDataKeyRequest");
+ return data;
+ }
+
+ private String getProperty(String deviceName, String command, String
property) {
+ try {
+ return configuration.getProperty(deviceName, command,
property);
+ } catch (PerfSONARException ex) {
+ System.err.println("No description found for command
" + command + "; device " + deviceName);
+ }
+ return null;
+ }
+
+ private Message addResultCode(Message response, int idx, boolean
success, String desc) {
+ final Metadata resultCodeMetadata =
createMetadata("resultCodeMeta_" + idx);
+ setSubject(resultCodeMetadata, createSubject("resultCodeSubj_" +
idx, "metadata" + idx));
+ setEventType(resultCodeMetadata,
createEventType("resultCodeEventType_" + idx, success ?
"success.mp.sshtelnet" : "error.mp.sshtelnet"));
+ addMetadata(response, resultCodeMetadata);
+
+ final Data resultCodeData = createData("resultCodeData_" + idx,
"resultCodeMeta_" + idx);
+ addDatum(resultCodeData, createDatum("resultCodeDatum_" + idx,
desc));
+ addData(response, resultCodeData);
+
+ return response;
+ }
+}
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/SetupDataServiceEngine.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/SetupDataServiceEngine.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/SetupDataServiceEngine.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,245 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Map;
+import java.util.Timer;
+import java.util.TimerTask;
+
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.Element;
+import org.perfsonar.base2.xml.nmwg.Data;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Metadata;
+import org.perfsonar.base2.xml.nmwg.Subject;
+import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
+import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
+
+public class SetupDataServiceEngine implements ServiceEngine {
+ private List<String> devices;
+ private final MetadataConfiguration configuration;
+ private Logger logger =
Logger.getLogger(ServiceCapabilitiesEngine.class);
+
+ private static final String USERS_NO_PROPERTY = "numberOfUsers";
+
+ public SetupDataServiceEngine() throws PerfSONARException {
+ this.configuration = new DbMetadataConfiguration();
+ configuration.initStorage();
+
+ try {
+ devices =
configuration.getProperties(MetadataConfiguration.DEVICE_NAMES);
+ } catch (PerfSONARException ex) {
+ devices = new ArrayList<String>();
+ }
+ }
+
+ private String getEndPoint(Subject subject) {
+ final Element result = subject.getFirstChild("endPoint");
+ if (result == null)
+ return null;
+
+ return result.getText();
+ }
+
+ private int getUsersNo(String endPoint) throws NumberFormatException,
PerfSONARException {
+ return Integer.parseInt(configuration.getProperty(endPoint,
USERS_NO_PROPERTY));
+ }
+ private boolean hasUnlimitedUsers(String endPoint) throws
NumberFormatException, PerfSONARException {
+ return getUsersNo(endPoint) <= 0;
+ }
+ private Map<String, Integer> requestsNo = new HashMap<String,
Integer>();
+ private boolean hasMaxPendingRequests(String endPoint) throws
NumberFormatException, PerfSONARException {
+ if (hasUnlimitedUsers(endPoint))
+ return false;
+
+ if (requestsNo.get(endPoint) == null)
+ requestsNo.put(endPoint, 0);
+ return requestsNo.get(endPoint) >= getUsersNo(endPoint);
+ }
+
+ private void copyData(Message src, Metadata metadata, Message dst) {
+ for (Data data : src.getDataCollection())
+ if
(data.getMetadataIdRef().equalsIgnoreCase(metadata.getId()))
+ dst.setData(data);
+ }
+ private void addData(Message msg, Data data) {
+ msg.setData(data);
+ }
+
+ private Metadata createMetadata(String id) {
+ final Metadata result = new Metadata();
+ result.setId(id);
+ return result;
+ }
+ private Subject createSubject(String id, String metadataIdRef) {
+ final Subject result = new Subject();
+ result.setId(id);
+ result.setMetadataIdRef(metadataIdRef);
+ return result;
+ }
+ private EventType createEventType(String id, String value) {
+ final EventType result = new EventType();
+ result.setId(id);
+ result.setEventType(value);
+ return result;
+ }
+ private Data createData(String id, String metadataIdRef) {
+ final Data result = new Data();
+ result.setId(id);
+ result.setMetadataIdRef(metadataIdRef);
+ return result;
+ }
+ private Datum createDatum(String id, String text) {
+ final Datum datum = new Datum();
+ datum.setId(id);
+ datum.setText(text);
+ return datum;
+ }
+
+ private void addMetadata(Message message, Metadata metadata) {
+ message.setMetadata(metadata);
+ }
+
+ private void addResultMessage(Message message, String metadataId,
String eventType, String text) {
+ addMetadata(message, createResultMetadata(metadataId, eventType));
+ addData(message, createResultData(metadataId, text));
+ }
+
+ private Data createResultData(String metadataId, String text) {
+ final Data resultCodeData = createData("resultCodeData_" +
metadataId, "resultCodeMeta_" + metadataId);
+ resultCodeData.setDatum(createDatum("resultCodeDatum_" + metadataId,
text));
+ return resultCodeData;
+ }
+
+ private Metadata createResultMetadata(String metadataId, String
eventType) {
+ final Metadata resultCodeMetadata =
createMetadata("resultCodeMeta_" + metadataId);
+ resultCodeMetadata.setSubject(createSubject("resultCodeSubj_" +
metadataId, metadataId));
+
resultCodeMetadata.setEventType(createEventType("resultCodeEventType_" +
metadataId, eventType));
+ return resultCodeMetadata;
+ }
+
+ private void addErrorMessage(Message message, String metadataId,
String text) {
+ addResultMessage(message, metadataId, "error.mp.sshtelnet.device",
text);
+ }
+ private void addErrorMessage(Message message, String metadataId,
PerfSONARException ex) {
+ addResultMessage(message, metadataId, ex.getResultCode(),
ex.getResultDescription());
+ }
+
+ private void rewritePerfsonarUIBugfix(ServiceMessage serviceResponse)
{
+ final Message message = serviceResponse.getMessageElement();
+ final Message newMsg = new Message();
+ for (Metadata metadata : message.getMetadataCollection())
+ addMetadata(newMsg, metadata);
+
+ for (Data data : message.getDataCollection())
+ addData(newMsg, data);
+
+ serviceResponse.setElement(newMsg);
+ }
+
+ public void takeAction(ServiceMessage serviceRequest,
+ ServiceMessage serviceResponse) throws
PerfSONARException {
+
+ final Message response = new Message();
+
+ for (Metadata metadata :
serviceRequest.getMessageElement().getMetadataCollection()) {
+ final String endPoint =
getEndPoint(metadata.getSubject());
+
+ addMetadata(response, metadata);
+ copyData(serviceRequest.getMessageElement(), metadata, response);
+
+ if (endPoint != null && devices.contains(endPoint)) {
+ logger.debug("Device: " + endPoint);
+
+ if (!hasMaxPendingRequests(endPoint)) {
+ serviceResponse.setElement(response);
+ executeRequest(endPoint, metadata, serviceRequest,
serviceResponse);
+ } else {
+ addErrorMessage(response, metadata.getId(), "Too many
concurrent connections to the device. Please try again later.");
+ serviceResponse.setElement(response);
+ }
+ } else {
+ if (endPoint != null)
+ addErrorMessage(response, metadata.getId(), "Requested
device not supported");
+ else
+ addErrorMessage(response, metadata.getId(), "No
Device element given in request");
+ serviceResponse.setElement(response);
+ }
+ }
+
+ waitUntilAllRequestsAreCompleted();
+
+ rewritePerfsonarUIBugfix(serviceResponse);
+ }
+
+ private synchronized void waitUntilAllRequestsAreCompleted() {
+ try {
+ wait();
+ } catch (InterruptedException ex) {
+ logger.debug(ex);
+ }
+ }
+
+ protected synchronized void requestFinished(String endPoint) {
+ int runningRequests = requestsNo.get(endPoint);
+ requestsNo.put(endPoint, runningRequests - 1);
+
+ if (allRequestsCompleted())
+ notify();
+
+ logger.info("Processed a request for device " + endPoint);
+ }
+
+ private boolean allRequestsCompleted() {
+ for (int runningRequests : requestsNo.values())
+ if (runningRequests > 0)
+ return false;
+ return true;
+ }
+
+ private synchronized void executeRequest(final String endPoint, final
Metadata metadata, final ServiceMessage serviceRequest, final ServiceMessage
serviceResponse) {
+ final SetupDataServiceEngine owner = this;
+ requestsNo.put(endPoint, requestsNo.get(endPoint) + 1);
+ getScheduler(endPoint).schedule(new TimerTask() {
+ public void run() {
+ try {
+ logger.debug("Processing a request " +
metadata.getId() + " for device " + endPoint);
+ final ServiceEngine engine = (ServiceEngine)
Class.forName(configuration.getProperty(endPoint,
"class_name")).newInstance();
+ engine.takeAction(serviceRequest,
serviceResponse);
+
addResultMessage(serviceResponse.getMessageElement(), metadata.getId(),
"success.mp.sshtelnet", "Successfully executed request");
+ } catch (PerfSONARException ex) {
+ ex.printStackTrace();
+ logger.debug(ex.getResultDescription() + "
for device " + endPoint + " and request " + metadata.getId());
+ final Message resultMessage = new Message();
+ resultMessage.setMetadata(metadata);
+ copyData(serviceRequest.getMessageElement(),
metadata, resultMessage);
+ addErrorMessage(resultMessage, metadata.getId(),
ex);
+ serviceResponse.setElement(resultMessage);
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ logger.debug(ex.getMessage() + " for device "
+ endPoint + " and request " + metadata.getId());
+ final Message resultMessage = new Message();
+ resultMessage.setMetadata(metadata);
+ copyData(serviceRequest.getMessageElement(),
metadata, resultMessage);
+ addResultMessage(resultMessage, metadata.getId(),
"error.common.service_engine.creation_failure", ex.getMessage());
+ serviceResponse.setElement(resultMessage);
+ }
+ owner.requestFinished(endPoint);
+ }
+ }, 0);
+ }
+
+ private Map<String, Timer>schedulers = new Hashtable<String, Timer>();
+ private Timer getScheduler(String endPoint) {
+ if (schedulers.get(endPoint) == null)
+ schedulers.put(endPoint, new Timer());
+ return schedulers.get(endPoint);
+ }
+}
Added:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/TelnetConnection.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/TelnetConnection.java
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/TelnetConnection.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,44 @@
+package org.perfsonar.service.measurementPoint;
+
+import java.io.IOException;
+
+import org.apache.log4j.Logger;
+
+import de.mud.telnet.TelnetWrapper;
+
+public class TelnetConnection {
+ private String url;
+ private int port;
+ private int timeout;
+ private String prompt;
+ private Logger logger = Logger.getLogger(TelnetConnection.class);
+ private boolean connected = false;
+ private TelnetWrapper telnet = new TelnetWrapper();
+
+ public TelnetConnection(String url, int port, int timeout, String
prompt) {
+ this.url = url;
+ this.port = port;
+ this.timeout = timeout;
+ this.prompt = prompt;
+ }
+
+ public void connect(String userName, String loginPrompt, String
passwd, String passwdPrompt) throws IOException {
+ logger.debug("[Telnet] Connecting url: " + url + " on port: " +
port);
+ telnet.connect(url, port);
+ logger.debug("[Telnet] Logging in url: " + url + " on port: " + port
+ "...");
+ telnet.login(userName, loginPrompt, passwd, passwdPrompt);
+ telnet.setPrompt(prompt);
+ connected = true;
+ logger.debug("[Telnet] Connection established for url: " + url + "
on port: " + port + " prompt: " + prompt);
+ }
+
+ public void disconnect() throws IOException {
+ if (!connected)
+ return;
+
+ logger.debug("[Telnet] Disconnecting url: " + url + " on
port: " + port);
+ telnet.disconnect();
+ logger.debug("[Telnet] Disconnected url: " + url + " on port: " +
port);
+ connected = false;
+ }
+}
\ No newline at end of file
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/BgpAdapterInterface.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/BgpAdapterInterface.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/BgpAdapterInterface.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -7,7 +7,7 @@
package org.perfsonar.service.measurementPoint.lookingGlassType.bgp;
import java.util.List;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommandInterface;
/**
@@ -57,8 +57,9 @@
*
* @param command The BgpCommand to be executed command
* @return BgpCommand with the results inserted
+ * @throws PerfSONARException
*/
- public abstract BgpCommandInterface executeCommand(BgpCommandInterface
command);
+ public abstract BgpCommandInterface executeCommand(BgpCommandInterface
command) throws PerfSONARException;
/**
* Makes the Adapter connecting to the device
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoBgpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoBgpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoBgpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,30 +9,38 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+//import org.ggf.ns.nmwg.base.v2_0.Data;
+//import org.ggf.ns.nmwg.base.v2_0.Datum;
+//import org.ggf.ns.nmwg.base.v2_0.EventType;
+//import org.ggf.ns.nmwg.base.v2_0.Message;
+//import org.ggf.ns.nmwg.base.v2_0.Metadata;
+//import org.ggf.ns.nmwg.base.v2_0.Parameter;
+//import org.ggf.ns.nmwg.base.v2_0.Parameters;
+//import org.ggf.ns.nmwg.base.v2_0.Subject;
+//import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
+import org.perfsonar.base2.xml.Element;
+import org.perfsonar.base2.xml.nmwg.Data;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Metadata;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.base2.xml.nmwg.Parameters;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommand;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommandInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
+//import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
import org.perfsonar.service.measurementPoint.remote.common.RemoteManager;
import org.perfsonar.service.measurementPoint.remote.telnet.TelnetManager;
+import org.apache.log4j.Logger;
/**
* Implementation class that supports querying the device (Cisco) for
@@ -62,20 +70,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private static final Logger logger =
Logger.getLogger(CiscoBgpAdapter.class.getName());
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoBgpAdapter() throws PerfSONARException {
-
-
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
@@ -158,7 +160,7 @@
/**
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface
*/
- public BgpCommandInterface executeCommand(BgpCommandInterface command) {
+ public BgpCommandInterface executeCommand(BgpCommandInterface command)
throws PerfSONARException {
logger.info("[CiscoBgpAdapter] executeCommand called");
@@ -370,21 +372,17 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoBgpAdapter][takeAction] Webservice takeAction
call received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final Metadata metadata = msg.getMetadata();
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoBgpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
logger.debug("[CiscoBgpAdapter][takeAction] EventTypeString: " +
eventTypeString);
@@ -445,20 +443,18 @@
BgpCommandInterface bgpCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ //Parameters parameters = metadata.getParameters();
+ Parameter[] parametersArray =
msg.getParameters();//parameters.getParameterArray();
String temp = "";
boolean valid = true;
if (parametersArray.length > 0) {
for (int i = 0; i < parametersArray.length; i++) {
-
- Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ final Parameter param = parametersArray[i];
+ final String parameter = param.getValue();
logger.debug("[CiscoBgpAdapter][takeAction] Parameter value:
" + parameter);
- if (new ParameterChecker().checkParam(subject,
eventTypeString,
- parameter)) {
+ if (new ParameterChecker().checkParam(subject,
eventTypeString, parameter)) {
bgpCommand.addParameter(parameter);
} else {
temp = " Malicious parameters
detected.";
@@ -544,34 +540,23 @@
logger.info("[CiscoBgpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, bgpCommand));
+ datum.setText(filterResult(temp, bgpCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoBgpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoBgpAdapter] takeAction finished");
- return response;
-
}
// ---------------------- Stand-alond Test Method
- public static void main(String[] args) {
+ /*public static void main(String[] args) {
try {
CiscoBgpAdapter adapter = new CiscoBgpAdapter();
@@ -599,5 +584,5 @@
//e.printStackTrace();
}
- }
+ }*/
}
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoKeyBgpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoKeyBgpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoKeyBgpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -8,7 +8,7 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
+/*import org.ggf.ns.nmwg.base.v2_0.Data;
import org.ggf.ns.nmwg.base.v2_0.Datum;
import org.ggf.ns.nmwg.base.v2_0.EventType;
import org.ggf.ns.nmwg.base.v2_0.Message;
@@ -16,12 +16,16 @@
import org.ggf.ns.nmwg.base.v2_0.Parameter;
import org.ggf.ns.nmwg.base.v2_0.Parameters;
import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.ggf.ns.nmwg.topology.v2_0.EndPoint;*/
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommand;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommandInterface;
@@ -62,20 +66,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoKeyBgpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoKeyBgpAdapter() throws PerfSONARException {
-
-
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -157,9 +155,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface
*/
- public BgpCommandInterface executeCommand(BgpCommandInterface command) {
+ public BgpCommandInterface executeCommand(BgpCommandInterface command)
throws PerfSONARException {
logger.info("[CiscoKeyBgpAdapter] executeCommand called");
@@ -359,21 +358,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoKeyBgpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoKeyBgpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -419,8 +413,7 @@
BgpCommandInterface bgpCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -428,7 +421,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoKeyBgpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -521,28 +514,16 @@
Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, bgpCommand));
+ datum.setText(filterResult(temp, bgpCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoKeyBgpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoKeyBgpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -563,7 +544,7 @@
bgpCommand = adapter.getCommand("BGP_PEERING_STATUS");
String temp = adapter.executeCommand(bgpCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, bgpCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoSshBgpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoSshBgpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/CiscoSshBgpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -8,7 +8,7 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
+/*import org.ggf.ns.nmwg.base.v2_0.Data;
import org.ggf.ns.nmwg.base.v2_0.Datum;
import org.ggf.ns.nmwg.base.v2_0.EventType;
import org.ggf.ns.nmwg.base.v2_0.Message;
@@ -16,12 +16,16 @@
import org.ggf.ns.nmwg.base.v2_0.Parameter;
import org.ggf.ns.nmwg.base.v2_0.Parameters;
import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.ggf.ns.nmwg.topology.v2_0.EndPoint;*/
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommand;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommandInterface;
@@ -61,18 +65,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoSshBgpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoSshBgpAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
@@ -153,9 +153,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface
*/
- public BgpCommandInterface executeCommand(BgpCommandInterface command) {
+ public BgpCommandInterface executeCommand(BgpCommandInterface command)
throws PerfSONARException {
logger.info("[CiscoSshBgpAdapter] executeCommand called");
@@ -358,21 +359,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoSshBgpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoSshBgpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -422,8 +418,7 @@
BgpCommandInterface bgpCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -431,7 +426,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoSshBgpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -522,30 +517,18 @@
logger.info("[CiscoSshBgpAdapter][takeAction] Command executed
succesfully");
logger.debug("" + valid);
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, bgpCommand));
+ datum.setText(filterResult(temp, bgpCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoSshBgpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoSshBgpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -566,7 +549,7 @@
bgpCommand = adapter.getCommand("BGP");
String temp = adapter.executeCommand(bgpCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println("Temp: " + temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperBgpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperBgpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperBgpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -8,25 +8,20 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommand;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommandInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
@@ -61,7 +56,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperBgpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
@@ -70,9 +65,6 @@
public JuniperBgpAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -154,9 +146,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface
*/
- public BgpCommandInterface executeCommand(BgpCommandInterface command) {
+ public BgpCommandInterface executeCommand(BgpCommandInterface command)
throws PerfSONARException {
logger.info("[JuniperStatusAdapter] executeCommand called");
@@ -375,21 +368,20 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
+ public void takeAction(ServiceMessage req,
+ ServiceMessage resp) throws PerfSONARException {
+ // TODO Auto-generated method stub
+
logger.info("[JuniperBgpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperBgpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -448,8 +440,7 @@
BgpCommandInterface bgpCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -457,7 +448,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperBgpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -547,31 +538,19 @@
logger.info("[JuniperBgpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, bgpCommand));
+ datum.setText(filterResult(temp, bgpCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperBgpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[JuniperBgpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -592,7 +571,7 @@
bgpCommand = adapter.getCommand("BGP_MULTICAST_ROUTE");
String temp = adapter.executeCommand(bgpCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, bgpCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperKeyBgpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperKeyBgpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperKeyBgpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -8,20 +8,16 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommand;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommandInterface;
@@ -62,7 +58,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperKeyBgpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
@@ -71,9 +67,6 @@
public JuniperKeyBgpAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
@@ -154,9 +147,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface
*/
- public BgpCommandInterface executeCommand(BgpCommandInterface command) {
+ public BgpCommandInterface executeCommand(BgpCommandInterface command)
throws PerfSONARException {
logger.info("[JuniperKeyBgpAdapter] executeCommand called");
@@ -371,21 +365,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperKeyBgpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperKeyBgpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -431,8 +420,7 @@
BgpCommandInterface bgpCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -440,7 +428,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperKeyBgpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -530,31 +518,20 @@
logger.info("[JuniperKeyBgpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, bgpCommand));
+ datum.setText(filterResult(temp, bgpCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperKeyBgpAdapter][takeAction] Constructing
response message");
- Message response = new Message();
-
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
+ msg.setResponseMessage(resp, datum);
+
logger.info("[JuniperKeyBgpAdapter][takeAction] takeAction
finished");
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -575,7 +552,7 @@
bgpCommand = adapter.getCommand("BGP_PEERING_STATUS");
String temp = adapter.executeCommand(bgpCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, bgpCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperSshBgpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperSshBgpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/bgp/adapters/JuniperSshBgpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -8,25 +8,19 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommand;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.commands.BgpCommandInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
@@ -61,7 +55,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperSshBgpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
@@ -71,9 +65,6 @@
public JuniperSshBgpAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
@@ -154,9 +145,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.BgpAdapterInterface
*/
- public BgpCommandInterface executeCommand(BgpCommandInterface command) {
+ public BgpCommandInterface executeCommand(BgpCommandInterface command)
throws PerfSONARException {
logger.info("[JuniperSshBgpAdapter] executeCommand called");
@@ -371,21 +363,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperSshBgpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperSshBgpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -435,8 +422,7 @@
BgpCommandInterface bgpCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -444,7 +430,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperSshBgpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -533,30 +519,18 @@
logger.info("[JuniperSshBgpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, bgpCommand));
+ datum.setText(filterResult(temp, bgpCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperSshBgpAdapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[JuniperSshBgpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -577,7 +551,7 @@
bgpCommand = adapter.getCommand("BGP");
String temp = adapter.executeCommand(bgpCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/encryption/PasswordEncryptor.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/encryption/PasswordEncryptor.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/encryption/PasswordEncryptor.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -18,7 +18,7 @@
import javax.crypto.spec.DESKeySpec;
import org.apache.ws.security.util.Base64;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -15,17 +15,14 @@
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import
org.perfsonar.base.auxiliary.components.configuration.ConfigurationComponent;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.service.measurementPoint.Configuration;
+import org.perfsonar.base2.service.configuration.ConfigurationManager;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.adapters.CiscoBgpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.adapters.CiscoIpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.adapters.CiscoIpv6Adapter;
@@ -50,8 +47,7 @@
private String serviceEngineType = null;
// ---------------------- class-fields
- private LoggerComponent logger = null;
- private ConfigurationComponent configuration = null;
+ private Logger logger = Logger.getLogger(CiscoAdapter.class);
private MetadataConfiguration properties = null;
private CiscoIpAdapter ciscoIpAdapter = null;
private CiscoIpv6Adapter ciscoIpv6Adapter = null;
@@ -62,15 +58,10 @@
public CiscoAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
-
- this.configuration = (ConfigurationComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.CONFIG);
ciscoIpAdapter = new CiscoIpAdapter();
ciscoIpv6Adapter = new CiscoIpv6Adapter();
@@ -99,22 +90,19 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoAdapter] Webservice takeAction call received");
- Metadata[] metadata = request.getMetadataArray();
- Subject subject = metadata[0].getSubject();
- EndPoint endpoint = (EndPoint) subject.getChildArray()[0];
- String subjectString = endpoint.getValue();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subjectString = msg.getSubject();
logger.debug("[CiscoAdapted][takeAction] subjectString: " +
subjectString);
+ System.err.println("subject: " + subjectString);
- EventType eventType = null;
- String eventTypeString = "";
+ final EventType eventType;
+ final String eventTypeString;
try {
- eventType = metadata[0].getEventType();
+ eventType = msg.getEventType();
eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -134,12 +122,12 @@
} catch (PerfSONARException e2) {
logger.error("[CiscoAdapter][TakeAction]" +
e2.getStackTrace()[0].toString());
throw new PerfSONARException("error.mp.sshtelnet.configuration",
- "Failed to obtain reference to the properties and/or
logger instances.");
+ "Parameter \"rate\" is not defined.");
}
long rateLong = Long.parseLong(rate);
try {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
FileInputStream in = new FileInputStream(path + "token_" +
subjectString);
@@ -152,7 +140,7 @@
s.writeLong(System.currentTimeMillis());
s.flush();
} catch (FileNotFoundException e) {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
try {
@@ -176,36 +164,30 @@
}
if (System.currentTimeMillis() - last > rateLong) {
-
if (eventTypeString.contains("IP_")) {
-
- return this.ciscoIpAdapter.takeAction(actionType, request);
-
+ ciscoIpAdapter.takeAction(req, resp);
+ return;
} else if (eventTypeString.contains("IPv6")) {
-
- return this.ciscoIpv6Adapter.takeAction(actionType, request);
-
+ this.ciscoIpv6Adapter.takeAction(req, resp);
+ return;
} else if (eventTypeString.contains("STATUS_")) {
-
- return this.ciscoStatusAdapter.takeAction(actionType,
request);
-
+ this.ciscoStatusAdapter.takeAction(req, resp);
+ return;
} else if (eventTypeString.contains("BGP")) {
-
- return this.ciscoBgpAdapter.takeAction(actionType, request);
-
+ this.ciscoBgpAdapter.takeAction(req, resp);
+ return;
} else {
-
throw new PerfSONARException("error.mp.sshtelnet.request",
"[CiscoAdapter] Request not supported by this
device");
-
}
-
} else {
-
throw new PerfSONARException("error.mp.sshtelnet.token",
"Too many requests");
-
}
}
+
+ private Configuration getConfiguration() throws PerfSONARException {
+ return (Configuration)
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("Configuration");
+ }
}
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoKeyAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoKeyAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoKeyAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -15,17 +15,14 @@
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import
org.perfsonar.base.auxiliary.components.configuration.ConfigurationComponent;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.service.measurementPoint.Configuration;
+import org.perfsonar.base2.service.configuration.ConfigurationManager;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.adapters.CiscoKeyBgpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.adapters.CiscoKeyIpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.adapters.CiscoKeyIpv6Adapter;
@@ -50,8 +47,7 @@
private String serviceEngineType = null;
// ---------------------- class-fields
- private LoggerComponent logger = null;
- private ConfigurationComponent configuration = null;
+ private Logger logger = Logger.getLogger(CiscoKeyAdapter.class);
private MetadataConfiguration properties = null;
private CiscoKeyIpAdapter ciscoKeyIpAdapter = null;
private CiscoKeyIpv6Adapter ciscoKeyIpv6Adapter = null;
@@ -62,16 +58,10 @@
public CiscoKeyAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
-
- this.configuration = (ConfigurationComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.CONFIG);
-
ciscoKeyIpAdapter = new CiscoKeyIpAdapter();
ciscoKeyIpv6Adapter = new CiscoKeyIpv6Adapter();
ciscoKeyStatusAdapter = new CiscoKeyStatusAdapter();
@@ -99,22 +89,18 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperAdapter] Webservice takeAction call received");
- Metadata[] metadata = request.getMetadataArray();
- Subject subject = metadata[0].getSubject();
- EndPoint endpoint = (EndPoint) subject.getChildArray()[0];
- String subjectString = endpoint.getValue();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subjectString = msg.getSubject();
logger.debug("[CiscoKeyAdapted][takeAction] subjectString: " +
subjectString);
- EventType eventType = null;
- String eventTypeString = "";
+ final EventType eventType;
+ final String eventTypeString;
try {
- eventType = metadata[0].getEventType();
+ eventType = msg.getEventType();
eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -138,7 +124,7 @@
long rateLong = Long.parseLong(rate);
try {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
FileInputStream in = new FileInputStream(path + "token_" +
subjectString);
@@ -151,7 +137,7 @@
s.writeLong(System.currentTimeMillis());
s.flush();
} catch (FileNotFoundException e) {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
try {
@@ -177,28 +163,20 @@
if (System.currentTimeMillis() - last > rateLong) {
if (eventTypeString.contains("IP_")) {
-
- return this.ciscoKeyIpAdapter.takeAction(actionType,
request);
-
+ ciscoKeyIpAdapter.takeAction(req, resp);
+ return;
} else if (eventTypeString.contains("IPv6")) {
-
- return this.ciscoKeyIpv6Adapter.takeAction(actionType,
- request);
-
+ ciscoKeyIpv6Adapter.takeAction(req, resp);
+ return;
} else if (eventTypeString.contains("STATUS_")) {
-
- return this.ciscoKeyStatusAdapter.takeAction(actionType,
- request);
-
+ ciscoKeyStatusAdapter.takeAction(req, resp);
+ return;
} else if (eventTypeString.contains("BGP")) {
-
- return this.ciscoKeyBgpAdapter.takeAction(actionType,
request);
-
+ ciscoKeyBgpAdapter.takeAction(req, resp);
+ return;
} else {
-
throw new PerfSONARException("error.mp.sshtelnet.request",
"[JuniperKeyAdapter] Request not supported by this
device");
-
}
} else {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoSshAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoSshAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/CiscoSshAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -12,30 +12,18 @@
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
-import java.security.Provider;
-import java.security.Security;
-import java.security.Provider.Service;
-import java.util.Iterator;
-import java.util.Set;
-import javax.swing.SwingUtilities;
-
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import
org.perfsonar.base.auxiliary.components.configuration.ConfigurationComponent;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.configuration.ConfigurationManager;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.service.measurementPoint.Configuration;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.adapters.CiscoSshBgpAdapter;
-
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.adapters.CiscoSshIpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.adapters.CiscoSshIpv6Adapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
@@ -61,9 +49,7 @@
// ---------------------- class-fields
- private LoggerComponent logger = null;
-
- private ConfigurationComponent configuration = null;
+ private Logger logger = Logger.getLogger(CiscoSshAdapter.class);
private MetadataConfiguration properties = null;
@@ -80,17 +66,10 @@
public CiscoSshAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
- .getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
-
- this.configuration = (ConfigurationComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.CONFIG);
-
ciscoSshIpAdapter = new CiscoSshIpAdapter();
ciscoSshIpv6Adapter = new CiscoSshIpv6Adapter();
ciscoSshStatusAdapter = new CiscoSshStatusAdapter();
@@ -120,22 +99,18 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException{
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp)
throws PerfSONARException {
logger.info("[CiscoSshAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject subject = metadata[0].getSubject();
- EndPoint endpoint = (EndPoint) subject.getChildArray()[0];
- String subjectString = endpoint.getValue();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subjectString = msg.getSubject();
logger.debug("[CiscoSshAdapted][takeAction] subjectString: "
+ subjectString);
- EventType eventType = null;
- String eventTypeString = "";
+ final EventType eventType;
+ final String eventTypeString;
try {
- eventType = metadata[0].getEventType();
+ eventType = msg.getEventType();
eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -160,7 +135,7 @@
long rateLong = Long.parseLong(rate);
try {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
FileInputStream in = new FileInputStream(path +
"token_" + subjectString);
@@ -174,7 +149,7 @@
s.writeLong(System.currentTimeMillis());
s.flush();
} catch (FileNotFoundException e) {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
try {
@@ -201,36 +176,22 @@
if (System.currentTimeMillis() - last > rateLong) {
if (eventTypeString.contains("IP_")) {
-
- return
this.ciscoSshIpAdapter.takeAction(actionType, request);
-
+ ciscoSshIpAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("IPv6_")) {
-
- return
this.ciscoSshIpv6Adapter.takeAction(actionType,
- request);
-
+ ciscoSshIpv6Adapter.takeAction(req, resp);
} else if (eventTypeString.contains("STATUS_")) {
-
- return
this.ciscoSshStatusAdapter.takeAction(actionType,
- request);
-
+ ciscoSshStatusAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("BGP")) {
-
- return this.ciscoSshBgpAdapter
- .takeAction(actionType,
request);
-
+ ciscoSshBgpAdapter.takeAction(req, resp);
} else {
-
throw new
PerfSONARException("error.mp.sshtelnet.request",
"[CiscoKeyAdapter] Request
not supported by this device");
-
}
+ return;
} else {
-
throw new
PerfSONARException("error.mp.sshtelnet.token",
"Too many requests");
-
}
}
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -15,17 +15,14 @@
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import
org.perfsonar.base.auxiliary.components.configuration.ConfigurationComponent;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.configuration.ConfigurationManager;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.service.measurementPoint.Configuration;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.adapters.JuniperBgpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.adapters.JuniperIpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.adapters.JuniperIpv6Adapter;
@@ -50,8 +47,7 @@
private String serviceEngineType = null;
// ---------------------- class-fields
- private LoggerComponent logger = null;
- private ConfigurationComponent configuration = null;
+ private Logger logger = Logger.getLogger(JuniperAdapter.class);
private MetadataConfiguration properties = null;
private JuniperIpAdapter juniperIpAdapter = null;
private JuniperIpv6Adapter juniperIpv6Adapter = null;
@@ -60,17 +56,11 @@
// ---------------------- constructors
public JuniperAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
-
- this.configuration = (ConfigurationComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.CONFIG);
juniperIpAdapter = new JuniperIpAdapter();
juniperIpv6Adapter = new JuniperIpv6Adapter();
@@ -99,22 +89,18 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperAdapter] Webservice takeAction call received");
- Metadata[] metadata = request.getMetadataArray();
- Subject subject = metadata[0].getSubject();
- EndPoint endpoint = (EndPoint) subject.getChildArray()[0];
- String subjectString = endpoint.getValue();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subjectString = msg.getSubject();
logger.debug("[JuniperAdapted][takeAction] subjectString: " +
subjectString);
- EventType eventType = null;
- String eventTypeString = "";
+ final EventType eventType;
+ final String eventTypeString;
try {
- eventType = metadata[0].getEventType();
+ eventType = msg.getEventType();
eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -139,7 +125,7 @@
long rateLong = Long.parseLong(rate);
try {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
FileInputStream in = new FileInputStream(path + "token_" +
subjectString);
@@ -152,7 +138,7 @@
s.writeLong(System.currentTimeMillis());
s.flush();
} catch (FileNotFoundException e) {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
try {
@@ -178,28 +164,18 @@
if (System.currentTimeMillis() - last > rateLong) {
if (eventTypeString.contains("IP_")) {
-
- return this.juniperIpAdapter.takeAction(actionType, request);
-
+ juniperIpAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("IPv6")) {
-
- return this.juniperIpv6Adapter.takeAction(actionType,
request);
-
+ juniperIpv6Adapter.takeAction(req, resp);
} else if (eventTypeString.contains("STATUS_")) {
-
- return this.juniperStatusAdapter.takeAction(actionType,
request);
-
+ juniperStatusAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("BGP")) {
-
- return this.juniperBgpAdapter.takeAction(actionType,
request);
-
+ juniperBgpAdapter.takeAction(req, resp);
} else {
-
throw new PerfSONARException("error.mp.sshtelnet.request",
"[JuniperAdapter] Request not supported by this
device");
-
}
-
+ return;
} else {
throw new PerfSONARException("error.mp.sshtelnet.token",
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperKeyAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperKeyAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperKeyAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -15,17 +15,12 @@
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import
org.perfsonar.base.auxiliary.components.configuration.ConfigurationComponent;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.adapters.JuniperKeyBgpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.adapters.JuniperKeyIpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.adapters.JuniperKeyIpv6Adapter;
@@ -51,10 +46,8 @@
// ---------------------- class-fields
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperKeyAdapter.class);
- private ConfigurationComponent configuration = null;
-
private MetadataConfiguration properties = null;
private JuniperKeyIpAdapter juniperKeyIpAdapter = null;
@@ -68,19 +61,12 @@
// ---------------------- constructors
public JuniperKeyAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
- .getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
- this.configuration = (ConfigurationComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.CONFIG);
-
juniperKeyIpAdapter = new JuniperKeyIpAdapter();
juniperKeyIpv6Adapter = new JuniperKeyIpv6Adapter();
juniperKeyStatusAdapter = new
JuniperKeyStatusAdapter();
@@ -109,22 +95,18 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp)
throws PerfSONARException {
logger.info("[JuniperAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject subject = metadata[0].getSubject();
- EndPoint endpoint = (EndPoint) subject.getChildArray()[0];
- String subjectString = endpoint.getValue();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subjectString = msg.getSubject();
logger.debug("[JuniperKeyAdapted][takeAction] subjectString:
" + subjectString);
- EventType eventType = null;
- String eventTypeString = "";
+ final EventType eventType;
+ final String eventTypeString;
try {
- eventType = metadata[0].getEventType();
+ eventType = msg.getEventType();
eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -149,7 +131,7 @@
long rateLong = Long.parseLong(rate);
try {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
FileInputStream in = new FileInputStream(path +
"token_" + subjectString);
@@ -163,7 +145,7 @@
s.writeLong(System.currentTimeMillis());
s.flush();
} catch (FileNotFoundException e) {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
try {
@@ -190,24 +172,13 @@
if (System.currentTimeMillis() - last > rateLong) {
if (eventTypeString.contains("IP_")) {
-
- return
this.juniperKeyIpAdapter.takeAction(actionType, request);
-
+ juniperKeyIpAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("IPv6")) {
-
- return
this.juniperKeyIpv6Adapter.takeAction(actionType,
- request);
-
+ juniperKeyIpv6Adapter.takeAction(req, resp);
} else if (eventTypeString.contains("STATUS_")) {
-
- return
this.juniperKeyStatusAdapter.takeAction(actionType,
- request);
-
+ juniperKeyStatusAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("BGP")) {
-
- return this.juniperKeyBgpAdapter
- .takeAction(actionType,
request);
-
+ juniperKeyBgpAdapter.takeAction(req, resp);
} else {
throw new
PerfSONARException("error.mp.sshtelnet.request",
@@ -215,6 +186,7 @@
}
+ return;
} else {
throw new
PerfSONARException("error.mp.sshtelnet.token",
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperSshAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperSshAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/JuniperSshAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -15,17 +15,12 @@
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import
org.perfsonar.base.auxiliary.components.configuration.ConfigurationComponent;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.adapters.JuniperSshBgpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.adapters.JuniperSshIpAdapter;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.adapters.JuniperSshIpv6Adapter;
@@ -51,11 +46,9 @@
// ---------------------- class-fields
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperSshAdapter.class);
private MetadataConfiguration properties = null;
-
- private ConfigurationComponent configuration = null;
private JuniperSshIpAdapter juniperSshIpAdapter = null;
@@ -71,16 +64,11 @@
try {
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
- .getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
- this.configuration = (ConfigurationComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.CONFIG);
-
juniperSshIpAdapter = new JuniperSshIpAdapter();
juniperSshIpv6Adapter = new JuniperSshIpv6Adapter();
juniperSshStatusAdapter = new
JuniperSshStatusAdapter();
@@ -109,22 +97,18 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException{
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp)
throws PerfSONARException {
logger.info("[JuniperSshAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject subject = metadata[0].getSubject();
- EndPoint endpoint = (EndPoint) subject.getChildArray()[0];
- String subjectString = endpoint.getValue();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subjectString = msg.getSubject();
logger.debug("[JuniperSshAdapted][takeAction] subjectString:
" + subjectString);
- EventType eventType = null;
- String eventTypeString = "";
+ final EventType eventType;
+ final String eventTypeString;
try {
- eventType = metadata[0].getEventType();
+ eventType = msg.getEventType();
eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -149,7 +133,7 @@
long rateLong = Long.parseLong(rate);
try {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
FileInputStream in = new FileInputStream(path +
"token_" + subjectString);
@@ -163,7 +147,7 @@
s.writeLong(System.currentTimeMillis());
s.flush();
} catch (FileNotFoundException e) {
- String path =
configuration.getProperty("service.mp.tokenPath");
+ String path = msg.getTokenPath();
if (!path.endsWith("/"))
path = path + "/";
try {
@@ -190,31 +174,21 @@
if (System.currentTimeMillis() - last > rateLong) {
if (eventTypeString.contains("IP_")) {
-
- return
this.juniperSshIpAdapter.takeAction(actionType, request);
-
+ juniperSshIpAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("IPv6")) {
-
- return
this.juniperSshIpv6Adapter.takeAction(actionType,
- request);
-
+ juniperSshIpv6Adapter.takeAction(req, resp);
} else if (eventTypeString.contains("STATUS_")) {
-
- return
this.juniperSshStatusAdapter.takeAction(actionType,
- request);
-
+ juniperSshStatusAdapter.takeAction(req, resp);
} else if (eventTypeString.contains("BGP")) {
-
- return this.juniperSshBgpAdapter
- .takeAction(actionType,
request);
-
+ juniperSshBgpAdapter.takeAction(req, resp);
} else {
throw new
PerfSONARException("error.mp.sshtelnet.request",
"[JuniperKeyAdapter] Request
not supported by this device");
}
-
+
+ return;
} else {
throw new
PerfSONARException("error.mp.sshtelnet.token",
Deleted:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestExecutingThread.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestExecutingThread.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestExecutingThread.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -1,169 +0,0 @@
-/*
- * Created/Updated on January 8th, 2008
- * Version Number: 1.0
- * Project: perfSonar
- *
- * Stijn Verstichel
()
- * Stijn Melis
()
- */
-package
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.security.Provider;
-import java.security.Security;
-import java.security.Provider.Service;
-import java.util.Iterator;
-import java.util.Set;
-
-import javax.swing.SwingUtilities;
-
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.result.v2_0.Datum;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
-import org.perfsonar.service.base.engine.ServiceEngineFactory;
-
-
-/**
- * Thread for executing the retrieval process of a command on a certain
- * device
- *
- * @author svrstich
- */
-public class RequestExecutingThread extends Thread {
-
- // ---------------------------- class-fields
- private int id;
- private String serviceEngineString = null;
- private String actionType = null;
- private Message requestMessage = null;
- private Message resultMessage = null;
- private RequestMonitor requestMonitor = null;
- private Metadata requestMetadata = null;
- //private long timeout = 0;
-
- public RequestExecutingThread(int id,
- String actionType,
- String serviceEngineString,
- Message requestMessage,
- Metadata requestMetadata,
- RequestMonitor requestMonitor) {
-
- this.id = id;
-
- this.actionType = actionType;
- this.serviceEngineString = serviceEngineString;
- this.requestMessage = requestMessage;
- this.requestMonitor = requestMonitor;
-
- this.requestMetadata = requestMetadata;
- }
-
- /*public RequestExecutingThread(int id,
- String actionType,
- String serviceEngineString,
- Message requestMessage,
- Metadata requestMetadata,
- RequestMonitor requestMonitor,
- long timeout) {
-
- this.id = id;
-
- this.actionType = actionType;
- this.serviceEngineString = serviceEngineString;
- this.requestMessage = requestMessage;
- this.requestMonitor = requestMonitor;
-
- this.requestMetadata = requestMetadata;
-
- this.timeout = timeout;
- }*/
-
- /**
- * Retrieve the result and compose it into an XML compliant
- * document
- */
- public void run() {
- try {
- ServiceEngine serviceEngine =
ServiceEngineFactory.getServiceEngine(serviceEngineString);
- resultMessage = serviceEngine.takeAction(actionType,
requestMessage);
-
- // Inclusion of the result code tags
- Metadata resultCodeMetadata = new Metadata();
- resultCodeMetadata.setId("resultCodeMeta_" +
requestMetadata.getId());
-
- Subject resultCodeSubject = new Subject();
- resultCodeSubject.setId("resultCodeSubj_" +
requestMetadata.getId());
- resultCodeSubject.setMetadataIdRef(requestMetadata.getId());
-
- EventType resultCodeEventType = new EventType();
- resultCodeEventType.setId("resultCodeEventType_" +
requestMetadata.getId());
- resultCodeEventType.setEventType("success.mp.sshtelnet");
-
- resultCodeMetadata.addChild(resultCodeSubject);
- resultCodeMetadata.addChild(resultCodeEventType);
-
- Data resultCodeData = new Data();
- resultCodeData.setId("resultCodeData_" +
requestMetadata.getId());
- resultCodeData.setMetadataIdRef("resultCodeMeta_" +
requestMetadata.getId());
-
- Datum resultCodeDatum = new Datum();
- resultCodeDatum.setId("resultCodeDatum_" +
requestMetadata.getId());
- resultCodeDatum.setValue("Successfully executed request");
-
- resultCodeData.addChild(resultCodeDatum);
-
- resultMessage.setMetadata(resultCodeMetadata);
- resultMessage.setData(resultCodeData);
-
- //Something went wrong during the retrieval process.
- //Constructing the XML-compliant error message
- } catch (PerfSONARException e) {
-
- resultMessage = new Message();
- resultMessage.setMetadata(requestMetadata);
- String metadataIdRef = requestMetadata.getId();
-
- for (int j = 0; j < requestMessage.getDataArray().length; j++) {
- if
(requestMessage.getDataArray()[j].getMetadataIdRef().equalsIgnoreCase(
- metadataIdRef)) {
- resultMessage.setData(requestMessage.getDataArray()[j]);
- }
- }
-
- Metadata resultCodeMetadata = new Metadata();
- resultCodeMetadata.setId("resultCodeMeta_" +
requestMetadata.getId());
-
- Subject resultCodeSubject = new Subject();
- resultCodeSubject.setId("resultCodeSubj_" +
requestMetadata.getId());
- resultCodeSubject.setMetadataIdRef(requestMetadata.getId());
-
- EventType resultCodeEventType = new EventType();
- resultCodeEventType.setId("resultCodeEventType_" +
requestMetadata.getId());
- resultCodeEventType.setEventType(e.getResultCode());
-
- resultCodeMetadata.addChild(resultCodeSubject);
- resultCodeMetadata.addChild(resultCodeEventType);
-
- Data resultCodeData = new Data();
- resultCodeData.setId("resultCodeData_" +
requestMetadata.getId());
- resultCodeData.setMetadataIdRef("resultCodeMeta_" +
requestMetadata.getId());
-
- Datum resultCodeDatum = new Datum();
- resultCodeDatum.setId("resultCodeDatum_" +
requestMetadata.getId());
- resultCodeDatum.setValue(e.getResultDescription());
-
- resultCodeData.addChild(resultCodeDatum);
-
- resultMessage.setMetadata(resultCodeMetadata);
- resultMessage.setData(resultCodeData);
-
- }
- requestMonitor.setCompleted(id, resultMessage);
- }
-}
Deleted:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestMonitor.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestMonitor.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/RequestMonitor.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -1,112 +0,0 @@
-/*
- * Created/Updated on January 8th, 2008
- * Version Number: 1.0
- * Project: perfSonar
- *
- * Stijn Verstichel
()
- * Stijn Melis
()
- */
-package
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters;
-
-import java.util.Timer;
-import java.util.TimerTask;
-
-import org.ggf.ns.nmwg.base.v2_0.Message;
-
-/**
- * Monitoring loop, keeping track of the progress of all individual
- * RequestExecutingThread.
- *
- * @author svrstich
- */
-public class RequestMonitor {
-
- // ---------------------------- class-fields
- private int size;
- private boolean[] requestsCompletedTable = null;
- private Message[] resultMessagesTable = null;
-
- public RequestMonitor(int size) {
-
- this.size = size;
- requestsCompletedTable = new boolean[size];
- resultMessagesTable = new Message[size];
-
- for (int i = 0; i < requestsCompletedTable.length; i++) {
- requestsCompletedTable[i] = false;
- }
-
- }
-
- public int getSize() {
- return size;
- }
-
- public void setSize(int size) {
- this.size = size;
- }
-
- /**
- * Method to be called by the RequestExecutingThread upon completion
- * in order to notify the Monitor that the retrieval process is
- * finished
- *
- * @param id
- * @param resultMessage
- */
- public synchronized void setCompleted(int id, Message resultMessage) {
-
- if (id < size) {
- requestsCompletedTable[id] = true;
- resultMessagesTable[id] = resultMessage;
- }
-
- }
-
- /**
- * Checks all RequestExecutingThreads and returns true if and only if
- * all threads have finished
- *
- * @return boolean
- */
- public synchronized boolean isCompleted() {
-
- for (int i = 0; i < requestsCompletedTable.length; i++) {
- if (!requestsCompletedTable[i]) {
- return false;
- }
- }
- return true;
- }
-
- /**
- * Retrieves the table of all XML-compliant messages of the individual
- * RequestIndividualThreads to be composed in a single response
- * Message
- *
- * @return Message[]
- */
- public Message[] getResultMessages() {
-
- return resultMessagesTable;
-
- }
-
- public void startTimer(RequestExecutingThread thread, long timeout) {
- Timer timer = new Timer();
- timer.schedule(new TimeoutTask(thread), timeout);
- }
-
- public class TimeoutTask extends TimerTask {
-
- private RequestExecutingThread thread;
-
- public TimeoutTask (RequestExecutingThread thread) {
- this.thread = thread;
- }
-
- public void run () {
- thread.interrupt();
- }
- }
-}
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/ServicePropertiesConfigurator.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/ServicePropertiesConfigurator.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/ServicePropertiesConfigurator.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -28,7 +28,7 @@
import org.jdom.Namespace;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
/**
Deleted:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/WebserviceEngineAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/WebserviceEngineAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/adapters/WebserviceEngineAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -1,700 +0,0 @@
-/*
- * Created/Updated on January, 8th 2008
- * Version Number: 1.0
- * Project: perfSonar
- *
- * Stijn Verstichel
()
- * Stijn Melis
()
- */
-package
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters;
-
-import java.awt.Toolkit;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.result.v2_0.Datum;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ActionType;
-import org.perfsonar.service.base.engine.ServiceEngine;
-import org.perfsonar.service.base.messages.EchoRequest;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.internalChecks.InternalChecker;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
-
-
-/**
- * Implementation class that filters and forwards request based upon the
- * requested device in the subject of the requestMessage.
- *
- * TODO::Parse output ??
- *
- * @author Stijn Verstichel
- * @author Stijn Melis
- */
-public class WebserviceEngineAdapter implements ServiceEngine {
-
- /**
- * Type of service angine.
- */
- private String serviceEngineType = null;
- private Message[] messages;
- private static int[] count;
-
- // ---------------------- class-fields
- private LoggerComponent logger = null;
- private MetadataConfiguration configuration = null;
- // List of all supported devices, populated from the service.properties
- // files
- private List devices = null;
-
- private static boolean arrayInitialized = false;
-
-
- // ---------------------- constructors
- public WebserviceEngineAdapter() throws PerfSONARException {
-
- try {
-
- this.serviceEngineType =
"service.MeasurementPoint.TELNETSSHType";
-
- this.logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().
- getComponent(ComponentNames.LOGGER);
-
- this.configuration = new DbMetadataConfiguration();
- configuration.initStorage();
-
- devices =
configuration.getProperties(MetadataConfiguration.DEVICE_NAMES);
-
- //registerServiceWithLS();
-
- if (!arrayInitialized){
- count = new int[devices.size()];
- arrayInitialized = true;
- }
-
- //for (int i = 0; i < count.length; i++)
- // count[i] = 0;
-
- } catch (PerfSONARException e) {
-
logger.error("[WebserviceEngineAdapter][Constructor]"+e.getStackTrace()[0].toString());
-
- devices = new ArrayList();
- count = new int[0];
- arrayInitialized = true;
-
- //throw new
PerfSONARException("error.mp.sshtelnet.configuration",
- // "Failed to obtain reference to the properties and/or
logger instances.");
-
- }
-
- }// WebserviceEngineAdapter
-
- // ---------------------- Methods from service engine interface
- /**
- * @see ServiceEngine.java
- */
- public String getType() {
-
- return this.serviceEngineType;
-
- }
-
- /**
- * @see ServiceEngine.java
- */
-
-
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
- logger.info("[WebserviceEngineAdapter] Webservice takeAction call
received");
-
- Metadata[] requestMetadata = request.getMetadataArray();
- Data[] requestData = request.getDataArray();
-
- if (actionType.equalsIgnoreCase(ActionType.GET_KEY)) {
- logger.debug("[WebserviceEngineAdapter] Message type:
MetadataKeyRequest");
- return createServiceCapabilitiesResponse(request);
-
- } else if (actionType.equalsIgnoreCase(ActionType.ECHO)) {
- logger.debug("[WebserviceEngineAdapter] Message type:
EchoRequest");
- return createEchoResponse(request);
-
- }// Find the correct handler for the device requested
- else {
- logger.debug("[WebserviceEngineAdapter] Message type:
SetupDataRequest");
- logger.debug("[WebserviceEngineAdapter][takeAction] Number of
blocks: " + requestMetadata.length);
-
- messages = new Message[requestMetadata.length];
- RequestMonitor requestMonitor = new RequestMonitor(
- requestMetadata.length);
-
- int[] currentDevices = new int[requestMetadata.length];
- for (int i = 0; i < currentDevices.length; i++)
- currentDevices[i] = -1;
-
- for (int i = 0; i < requestMetadata.length; i++) {
- Subject subjectTemp = requestMetadata[i].getSubject();
- boolean deviceElementOK = true;
- String value = "";
-
- try {
- EndPoint endpoint = (EndPoint)
subjectTemp.getChildArray()[0];
- value = endpoint.getValue();
- } catch (Exception e) {
- deviceElementOK = false;
- }
-
- if (deviceElementOK && devices.contains(value)) {
-
- logger.debug("[WebserviceEngineAdapter][takeAction]
Device: " + value);
- //logger.debug("Device index: " +
devices.indexOf(value));
- //logger.debug("Size of Count: " + count.length +
"\nindex of device: " + devices.indexOf(value));
- count[devices.indexOf(value)]++;
- //logger.debug("Count["+ devices.indexOf(value) + "]:
" + count[devices.indexOf(value)]);
- //logger.debug("Size of currentDevices: " +
currentDevices.length + "\nindex : " + i);
- currentDevices[i] = devices.indexOf(value);
//contains the indexes of the devices in use
- //logger.debug("currentDevices["+i+"]: " +
currentDevices[i]);
-
- logger.debug("[WebserviceEngineAdapter][takeAction]
Number of current connections for device \"" + value + "\": " +
count[currentDevices[i]]);
-
- if (Integer.parseInt(configuration.getProperty(value,
"numberOfUsers")) <= 0 // numberOfUsers <= 0 --> unlimited amount of users
- || count[devices.indexOf(value)] <=
Integer.parseInt(configuration.getProperty(value, "numberOfUsers"))){
-
- Message message = new Message();
- message.setMetadata(requestMetadata[i]);
- String metadataIdRef = requestMetadata[i].getId();
-
- for (int j = 0; j < requestData.length; j++) {
- if
(requestData[j].getMetadataIdRef().equalsIgnoreCase(
- metadataIdRef)) {
- message.setData(requestData[j]);
- }
- }
-
- String serviceEngineString =
configuration.getProperty(value, "class_name");
-
- //RequestExecutingThread requestExecutingThread =
new RequestExecutingThread(
- // i, actionType, serviceEngineString,
message,
- // requestMetadata[i], requestMonitor,
Long.parseLong(configuration.getProperty(value, "timeout")));
-
- RequestExecutingThread requestExecutingThread =
new RequestExecutingThread(
- i, actionType, serviceEngineString,
message,
- requestMetadata[i], requestMonitor);
-
- requestExecutingThread.start();
- } else {
- messages[i] = new Message();
- messages[i].setMetadata(requestMetadata[i]);
- String metadataIdRef = requestMetadata[i].getId();
-
- for (int j = 0; j < requestData.length; j++) {
- if
(requestData[j].getMetadataIdRef().equalsIgnoreCase(
- metadataIdRef)) {
- messages[i].setData(requestData[j]);
- }
- }
-
- Metadata resultCodeMetadata = new Metadata();
- resultCodeMetadata.setId("resultCodeMeta_" +
requestMetadata[i].getId());
-
- Subject resultCodeSubject = new Subject();
- resultCodeSubject.setId("resultCodeSubj_" +
requestMetadata[i].getId());
-
resultCodeSubject.setMetadataIdRef(requestMetadata[i].getId());
-
- EventType resultCodeEventType = new EventType();
- resultCodeEventType.setId("resultCodeEventType_" +
requestMetadata[i].getId());
-
resultCodeEventType.setEventType("error.mp.sshtelnet.device");
-
- resultCodeMetadata.addChild(resultCodeSubject);
- resultCodeMetadata.addChild(resultCodeEventType);
-
- Data resultCodeData = new Data();
- resultCodeData.setId("resultCodeData_" +
requestMetadata[i].getId());
- resultCodeData.setMetadataIdRef("resultCodeMeta_" +
requestMetadata[i].getId());
-
- Datum resultCodeDatum = new Datum();
- resultCodeDatum.setId("resultCodeDatum_" +
requestMetadata[i].getId());
- resultCodeDatum.setValue("Too many concurrent
connections to the device. Please try again later.");
-
- resultCodeData.addChild(resultCodeDatum);
-
- messages[i].setMetadata(resultCodeMetadata);
- messages[i].setData(resultCodeData);
-
- requestMonitor.setCompleted(i, null);
- }
-
- } else {
-
- messages[i] = new Message();
- messages[i].setMetadata(requestMetadata[i]);
- String metadataIdRef = requestMetadata[i].getId();
-
- for (int j = 0; j < requestData.length; j++) {
- if
(requestData[j].getMetadataIdRef().equalsIgnoreCase(
- metadataIdRef)) {
- messages[i].setData(requestData[j]);
- }
- }
-
- Metadata resultCodeMetadata = new Metadata();
- resultCodeMetadata.setId("resultCodeMeta_" +
requestMetadata[i].getId());
-
- Subject resultCodeSubject = new Subject();
- resultCodeSubject.setId("resultCodeSubj_" +
requestMetadata[i].getId());
-
resultCodeSubject.setMetadataIdRef(requestMetadata[i].getId());
-
- EventType resultCodeEventType = new EventType();
- resultCodeEventType.setId("resultCodeEventType_" +
requestMetadata[i].getId());
-
resultCodeEventType.setEventType("error.mp.sshtelnet.device");
-
- resultCodeMetadata.addChild(resultCodeSubject);
- resultCodeMetadata.addChild(resultCodeEventType);
-
- Data resultCodeData = new Data();
- resultCodeData.setId("resultCodeData_" +
requestMetadata[i].getId());
- resultCodeData.setMetadataIdRef("resultCodeMeta_" +
requestMetadata[i].getId());
-
- Datum resultCodeDatum = null;
- if (deviceElementOK) {
- resultCodeDatum = new Datum();
- resultCodeDatum.setId("resultCodeDatum_" +
requestMetadata[i].getId());
- resultCodeDatum.setValue("Requested device not
supported");
- } else {
- resultCodeDatum = new Datum();
- resultCodeDatum.setId("resultCodeDatum_" +
requestMetadata[i].getId());
- resultCodeDatum.setValue("No Device element given in
request");
- }
-
- resultCodeData.addChild(resultCodeDatum);
-
- messages[i].setMetadata(resultCodeMetadata);
- messages[i].setData(resultCodeData);
-
- requestMonitor.setCompleted(i, null);
-
- }
- }
-
- while (!requestMonitor.isCompleted()) {
- try {
- //Toolkit toolkit = Toolkit.getDefaultToolkit();
- //toolkit.beep();
- Thread.sleep(2000);
- } catch (InterruptedException e) {
- logger.error("[WebserviceEngineAdapter][TakeAction]
"+e.getStackTrace()[0].toString());
- }
- }
-
- Message[] resultMessages = requestMonitor.getResultMessages();
-
- for (int i = 0; i < messages.length; i++) {
- if (messages[i] == null) {
- messages[i] = resultMessages[i];
- }
- }
-
- Message returnMessage = new Message();
- for (int i = 0; i < messages.length; i++) {
-
- for (int j = 0; j < messages[i].getMetadataArray().length;
j++) {
-
returnMessage.setMetadata(messages[i].getMetadataArray()[j]);
- }
-
- for (int j = 0; j < messages[i].getDataArray().length; j++) {
- returnMessage.setData(messages[i].getDataArray()[j]);
- }
-
- }
-
- for (int i = 0; i<currentDevices.length; i++) {
- if (currentDevices[i] > -1) {
- count[currentDevices[i]]--;
- logger.debug("[WebserviceEngineAdapter][takeAction]
Concurrent connections for device \"" + devices.get(i) +
- "\" decreased by 1; concurrent
connections: "+ count[currentDevices[i]]);
- }
- }
-
- return returnMessage;
-
- }
-
- // return new ServiceEngineResponse();
-
- }
-
- private Message createServiceCapabilitiesResponse(Message request) {
-
- Message response = new Message();
- response.setId(request.getId());
- response.setType("MetadataKeyResponse");
-
- Data[] respData;
- Metadata[] respMetaData;
-
- Iterator it = devices.iterator();
- String token = null;
- int tokencounter = 0;
- String innerToken = null;
- StringTokenizer tokenizer = null;
-
- respMetaData = new Metadata[devices.size()];
- respData = new Data[devices.size()];
-
- Subject subject = null;
- EventType eventType = null;
- Datum datum = null;
-
- while (it.hasNext()) {
-
- token = (String) it.next();
-
- respMetaData[tokencounter] = new Metadata();
- respMetaData[tokencounter].setId("metadata" + tokencounter);
-
- subject = new Subject();
- subject.setId("subject" + tokencounter);
- subject.setSubject(token);
-
- Parameters metaParams = new Parameters();
- metaParams.setId("metaParams" + tokencounter);
-
- Parameter metaparam = new Parameter();
- metaparam.setParameterName("url");
- try {
- metaparam.setParameterValue(configuration.getProperty(token,
"url"));
- } catch (PerfSONARException e1) {
-
logger.debug("[WebserviceEngineAdapter][CreateServiceCapabilitiesResponse]
url parameter not found for device: "+ token);
- }
-
- metaParams.addChild(metaparam);
-
- respMetaData[tokencounter].addChild(subject);
- respMetaData[tokencounter].addChild(metaParams);
-
- try {
-
- //re-write this to ArrayList
-
- Iterator commands = configuration.getProperties(token,
"commands").iterator();
- respData[tokencounter] = new Data();
- respData[tokencounter].setId("data" + tokencounter);
-
respData[tokencounter].setMetadataIdRef(respMetaData[tokencounter].getId());
-
- while (commands.hasNext()) {
-
- innerToken = (String) commands.next();
-
- datum = new Datum();
-
- eventType = new EventType();
- eventType.addText(innerToken);
-
logger.debug("[WebserviceEngineAdapter][CreateServiceCapabilitiesResponse]
EventType: " + innerToken);
-
- Parameters params = new Parameters();
- params.setId("params" + tokencounter);
-
- Parameter param1 = new Parameter();
- try {
- param1.setId("param1-" + tokencounter);
- param1.setParameterName("description");
-
param1.setParameterValue(configuration.getProperty(token, innerToken,
"description"));
- } catch (PerfSONARException e) {
-
logger.debug("[WebserviceEngineAdapter][CreateServiceCapabilitiesResponse]
description parameter not found for device: "+ token + " and command: " +
innerToken);
- }
-
- Parameter param2 = new Parameter();
- try {
- param2.setId("param2-" + tokencounter);
- param2.setParameterName("syntax");
-
param2.setParameterValue(configuration.getProperty(token, innerToken,
"syntax"));
- } catch (PerfSONARException e) {
-
logger.debug("[WebserviceEngineAdapter][CreateServiceCapabilitiesResponse]
syntax parameter not found for device: "+ token + " and command: " +
innerToken);
- }
-
- Parameter param3 = new Parameter();
- try {
- param3.setId("param3-" + tokencounter);
- param3.setParameterName("command");
-
param3.setParameterValue(configuration.getProperty(token, innerToken,
"command"));
- } catch (PerfSONARException e) {
-
logger.debug("[WebserviceEngineAdapter][CreateServiceCapabilitiesResponse]
command parameter not found for device: "+ token + " and command: " +
innerToken);
- }
-
- params.addChild(param1);
- params.addChild(param2);
- params.addChild(param3);
-
- datum.addChild(eventType);
- datum.addChild(params);
-
- respData[tokencounter].addChild(datum);
-
- // Result Code stuff
- Metadata resultCodeMetadata = new Metadata();
- resultCodeMetadata.setId("resultCodeMeta_" +
tokencounter);
-
- Subject resultCodeSubject = new Subject();
- resultCodeSubject.setId("resultCodeSubj_" +
tokencounter);
- resultCodeSubject.setMetadataIdRef("metadata" +
tokencounter);
-
- EventType resultCodeEventType = new EventType();
- resultCodeEventType.setId("resultCodeEventType_" +
tokencounter);
- resultCodeEventType.setEventType("success.mp.sshtelnet");
-
- resultCodeMetadata.addChild(resultCodeSubject);
- resultCodeMetadata.addChild(resultCodeEventType);
-
- Data resultCodeData = new Data();
- resultCodeData.setId("resultCodeData_" + tokencounter);
- resultCodeData.setMetadataIdRef("resultCodeMeta_" +
tokencounter);
-
- Datum resultCodeDatum = new Datum();
- resultCodeDatum.setId("resultCodeDatum_" + tokencounter);
- resultCodeDatum.setValue("Successfully executed
MetaDataKeyRequest");
-
- resultCodeData.addChild(resultCodeDatum);
-
- response.setMetadata(resultCodeMetadata);
- response.setData(resultCodeData);
-
- }
-
- } catch (PerfSONARException e) {
-
- // Result Code stuff
- Metadata resultCodeMetadata = new Metadata();
- resultCodeMetadata.setId("resultCodeMeta_" + tokencounter);
-
- Subject resultCodeSubject = new Subject();
- resultCodeSubject.setId("resultCodeSubj_" + tokencounter);
- resultCodeSubject.setMetadataIdRef("metadata" +
tokencounter);
-
- EventType resultCodeEventType = new EventType();
- resultCodeEventType.setId("resultCodeEventType_" +
tokencounter);
- resultCodeEventType.setEventType("success.mp.sshtelnet");
-
- resultCodeMetadata.addChild(resultCodeSubject);
- resultCodeMetadata.addChild(resultCodeEventType);
-
- Data resultCodeData = new Data();
- resultCodeData.setId("resultCodeData_" + tokencounter);
- resultCodeData.setMetadataIdRef("resultCodeMeta_" +
tokencounter);
-
- Datum resultCodeDatum = new Datum();
- resultCodeDatum.setId("resultCodeDatum_" + tokencounter);
- resultCodeDatum.setValue("Successfully executed
MetaDataKeyRequest");
-
- resultCodeData.addChild(resultCodeDatum);
-
- response.setMetadata(resultCodeMetadata);
- response.setData(resultCodeData);
-
- }
-
- response.setMetadata(respMetaData[tokencounter]);
- response.setData(respData[tokencounter]);
- tokencounter++;
-
- }
-
- return response;
-
- }
-
- private Message createEchoResponse(Message request){
- String testEventType =
"http://schemas.perfsonar.net/tools/admin/selftest/1.0";
-
- try {
- Message response = new Message();
-
- Metadata reqMetadata = request.getMetadataArray()[0];
- Data reqData = request.getDataArray()[0];
- EventType reqEventType = reqMetadata.getEventType();
-
- if
(reqEventType.getEventType().equals(testEventType)){
-
logger.debug("[WebserviceEngineAdapter][CreateEchoResponse] selftest
started");
- InternalChecker checker = new
InternalChecker();
-
- Metadata resMetadata = new Metadata();
- resMetadata.setId(reqMetadata.getId());
- resMetadata.setEventType(reqEventType);
-
- response.setMetadata(resMetadata);
-
- Data resData = new Data();
- resData.setId(reqData.getId());
- resData.setMetadataIdRef(reqMetadata.getId());
-
- if (checker.checkExist()){
- List devices = checker.getDevices();
-
- Metadata[] resDataMetadataBlock = new
Metadata[devices.size() + 1];
- Data[] resDataDataBlock = new
Data[devices.size() + 1];
-
- resDataMetadataBlock[0] = new
Metadata();
-
resDataMetadataBlock[0].setId("sshtelnet_eXist_test");
- EventType evType = new EventType();
-
evType.setEventType("http://schemas.perfsonar.net/tools/admin/selftest/" +
-
"MP/SSHTELNET/sshtelnet_eXist_test/success/1.0");
-
resDataMetadataBlock[0].setEventType(evType);
-
- resDataDataBlock[0] = new Data();
-
resDataDataBlock[0].setId("data_sshtelnet_eXist_test");
-
resDataDataBlock[0].setMetadataIdRef("sshtelnet_eXist_test");
- Datum datum = new Datum();
- if (devices.size() == 0)
- datum.setValue("eXist
database reachable and metadata configuration file found, however, no devices
are configured in the MP");
- else datum.setValue("eXist database
reachable and metadata configuration file found");
- resDataDataBlock[0].setDatum(datum);
-
-
resData.addChild(resDataMetadataBlock[0]);
- resData.addChild(resDataDataBlock[0]);
-
- // for every device, test the device
- Iterator<String> it =
devices.iterator();
- int i = 1;
- while (it.hasNext()){
- String device = it.next();
- if
(checker.checkDevice(device)){
-
resDataMetadataBlock[i] = new Metadata();
-
resDataMetadataBlock[i].setId("sshtelnet_device_test_"+i);
- evType = new
EventType();
-
evType.setEventType("http://schemas.perfsonar.net/tools/admin/selftest/" +
-
"MP/SSHTELNET/sshtelnet_device_test_"+i+"/success/1.0");
-
resDataMetadataBlock[i].setEventType(evType);
-
- resDataDataBlock[i] =
new Data();
-
resDataDataBlock[i].setId("data_sshtelnet_device_test_"+i);
-
resDataDataBlock[i].setMetadataIdRef("sshtelnet_device_test_"+i);
- datum = new Datum();
-
datum.setValue("Device " + device + " reachable: OK");
-
resDataDataBlock[i].setDatum(datum);
-
-
resData.addChild(resDataMetadataBlock[i]);
-
resData.addChild(resDataDataBlock[i]);
-
-
- } else {
-
resDataMetadataBlock[i] = new Metadata();
-
resDataMetadataBlock[i].setId("sshtelnet_device_test_"+i);
- evType = new
EventType();
-
evType.setEventType("http://schemas.perfsonar.net/tools/admin/selftest/" +
-
"MP/SSHTELNET/sshtelnet_device_test_"+i+"/failure/1.0");
-
resDataMetadataBlock[i].setEventType(evType);
-
- resDataDataBlock[i] =
new Data();
-
resDataDataBlock[i].setId("data_sshtelnet_device_test_"+i);
-
resDataDataBlock[i].setMetadataIdRef("sshtelnet_device_test_"+i);
- datum = new Datum();
-
datum.setValue("Device " + device + " not reachable! The MP will not be able"
+
- " to
issue commands on this device!");
-
resDataDataBlock[i].setDatum(datum);
-
-
resData.addChild(resDataMetadataBlock[i]);
-
resData.addChild(resDataDataBlock[i]);
-
-
- }
- i++;
- }
- response.addChild(resData);
- } else {
- Metadata resDataMetadata = new
Metadata();
-
resDataMetadata.setId("sshtelnet_eXist_test");
- EventType evType = new EventType();
-
evType.setEventType("http://schemas.perfsonar.net/tools/admin/selftest/" +
-
"MP/SSHTELNET/sshtelnet_eXist_test/failure/1.0");
- resDataMetadata.setEventType(evType);
-
- Data resDataData = new Data();
-
resDataData.setId("data_sshtelnet_eXist_test");
-
resDataData.setMetadataIdRef("sshtelnet_eXist_test");
- Datum datum = new Datum();
- datum.setValue("eXist database not
reachable or no metadata configuration file found in eXist database.");
- resDataData.setDatum(datum);
-
- resData.addChild(resDataMetadata);
- resData.addChild(resDataData);
-
- response.addChild(resData);
- }
- } else if
(reqEventType.getEventType().equals(EchoRequest.ECHO_NAMESPACE)){
-
logger.debug("[WebserviceEngineAdapter][CreateEchoResponse] regular
EchoRequest");
- EchoRequest echo = new EchoRequest();
- return echo.execute(request);
- }
- return response;
- } catch (PerfSONARException e) {
-
logger.error("[WebserviceEngineAdapter][CreateEchoResponse] An error occured
while doing" +
- " the internal check: " +
e.getStackTrace()[0].toString());
- return null;
- }
- }
-
- /*private void registerServiceWithLS() {
-
- try {
- ServiceLSRegistrator registrator = new
- GenericServiceLSRegistrator (new
PropertiesServiceDescription(),
- null);
-
- registrator.initRegistrator();
-
- Message responseMessage =
-
registrator.register("http://chaos4.test:8080/axis/services/LookupService");
-
- System.out.println(responseMessage);
- } catch (PerfSONARException e) {
- e.printStackTrace();
- }
- }*/
-
- // THREAD TESTING PURPOSES
- public class SimpleThread extends Thread {
-
- public SimpleThread(String str) {
- super(str);
- }
-
- public void run() {
- Toolkit toolkit = Toolkit.getDefaultToolkit();
- for (int i = 0; i < 10; i++) {
- toolkit.beep();
- try {
- sleep((long) (Math.random() * 1000));
- } catch (InterruptedException e) {
- }
- }
- }
- }
-
- public static void main(String[] args) {
- /**
- * try { new WebserviceEngineAdapter().new
- * SimpleThread("Jamaica").start(); new WebserviceEngineAdapter().new
- * SimpleThread("Fiji").start(); } catch (SystemException e) { //
TODO
- * Auto-generated catch block e.printStackTrace(); }
- */
- try {
- WebserviceEngineAdapter adapter = new WebserviceEngineAdapter();
- } catch (PerfSONARException e) {
- //e.printStackTrace();
- }
- }
-
-}
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/commands/ParameterChecker.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/commands/ParameterChecker.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/engine/commands/ParameterChecker.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -6,12 +6,16 @@
package
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands;
import java.lang.reflect.InvocationTargetException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.ArrayList;
+import java.util.List;
import java.util.StringTokenizer;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
@@ -24,7 +28,30 @@
public class ParameterChecker implements ParameterCheckerInterface {
private MetadataConfiguration properties;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(ParameterChecker.class);
+
+ private static final List<String> ipAddressCommands =
initIpAddressCommands();
+
+ private static List<String> initIpAddressCommands() {
+ final List<String> result = new ArrayList<String>();
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IP_BGP_NEIGHBOUR_ADVERTISED/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IP_BGP_NEIGHBOUR_RECEIVED/1.0");
+ //result.add("IP_MPLS_VRF_PING");
+ //result.add("IP_MPLS_VRF_TRACEROUTE");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IP_MULTICAST_ROUTE/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IP_MULTICAST_TRACEROUTE/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IP_PING/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IP_ROUTE/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IP_TRACEROUTE/1.0");
+
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IPv6_BGP_NEIGHBOUR_ADVERTISED/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IPv6_BGP_NEIGHBOUR_RECEIVED/1.0");
+
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IPv6_PING/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IPv6_ROUTE/1.0");
+
result.add("http://schemas.perfsonar.net/tools/sshtelnet/IPv6_TRACEROUTE/1.0");
+ return result;
+ }
/**
* Global method for checking the validity of the of inputted parameters,
@@ -47,6 +74,15 @@
} catch (InvocationTargetException e) {
} catch (InstantiationException e) {
}
+
+ if (ipAddressCommands.contains(eventTypeString)) {
+ try {
+ InetAddress addr[] =
InetAddress.getAllByName(parameter);
+ } catch (UnknownHostException ex) {
+ return false;
+ }
+ return true;
+ }
// Bekijk hier in de configfile of er een reguliere expressielijst
// bestaat om tbe parameters te checken.
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/internalChecks/InternalChecker.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/internalChecks/InternalChecker.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/internalChecks/InternalChecker.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -4,10 +4,8 @@
import java.util.Iterator;
import java.util.List;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
@@ -35,7 +33,7 @@
private List<String> devices = null;
private MetadataConfiguration properties = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(InternalChecker.class);
String class_name = "";
String username = "";
@@ -52,15 +50,7 @@
int minimumParameterCount = -1;
int maximumParameterCount = -1;
- public InternalChecker () throws PerfSONARException{
- try {
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
- .getComponent(ComponentNames.LOGGER);
- } catch (PerfSONARException e) {
- throw new
PerfSONARException("error.mp.sshtelnet.configuration",
- "Failed to obtain reference to the logger instance.");
-
- }
+ public InternalChecker () throws PerfSONARException{
}
public boolean checkExist () {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/IpAdapterInterface.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/IpAdapterInterface.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/IpAdapterInterface.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -7,7 +7,7 @@
import java.util.List;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.commands.IpCommandInterface;
/**
@@ -58,7 +58,7 @@
* @param command The IpCommand to be executed command
* @return IpCommand with the results inserted
*/
- public abstract IpCommandInterface executeCommand(IpCommandInterface
command);
+ public abstract IpCommandInterface executeCommand(IpCommandInterface
command) throws PerfSONARException;
/**
* Makes the Adapter connecting to the device
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoIpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoIpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoIpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,22 +9,20 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Data;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Message;
+import org.perfsonar.base2.xml.nmwg.Metadata;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.base2.xml.nmwg.Parameters;
+import org.perfsonar.base2.xml.nmwg.Subject;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.commands.IpCommand;
@@ -62,18 +60,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoIpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoIpAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -86,7 +80,7 @@
logger.error("[CiscoIpAdapter][Constructor]" +
e.getStackTrace()[0].toString());
throw new PerfSONARException("error.mp.sshtelnet.configuration",
- "Failed to obtain reference to the properties and/or
logger instances.");
+ "Failed to obtain reference to the properties.");
}
@@ -128,8 +122,7 @@
/**
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface
*/
- public IpCommandInterface getCommand(String description)
- throws PerfSONARException {
+ public IpCommandInterface getCommand(String description) throws
PerfSONARException {
logger.info("[CiscoIpAdapter] getCommand called");
@@ -155,9 +148,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface
*/
- public IpCommandInterface executeCommand(IpCommandInterface command) {
+ public IpCommandInterface executeCommand(IpCommandInterface command)
throws PerfSONARException {
logger.info("[CiscoIpAdapter] executeCommand called");
@@ -358,6 +352,9 @@
}
+ System.err.println("Komenda: " + ipCommand.getCommand());
+ System.err.println("Parametry: " + ipCommand.getParameterString());
+ System.err.println("result: " + temp);
String tempResult = temp.substring((ipCommand.getCommand() + " " +
ipCommand.getParameterString()).length());
String t1 = tempResult.replaceAll("\\n", "");
@@ -392,21 +389,72 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
+ final Message tempReq = req.getMessageElement();
+ final Message tempResp = new Message();
+ tempResp.setId("Resp_" + tempReq.getId());
+ tempResp.setMessageIdRef(tempReq.getId());
+ tempResp.setType("SetupDataResponse");
+
+ /*int tempIdx = 1;
+ for (Metadata meta : tempReq.getMetadataCollection()) {
+ final Metadata m = new Metadata();
+ m.setId("resultCodeMeta_" + meta.getId());
+ Subject s = new Subject();
+ s.setId("resultCodeSubj_" + meta.getId());
+ s.setMetadataIdRef(meta.getId());
+ m.setSubject(s);
+ EventType e = new EventType();
+ e.setEventType("success.mp.sshtelnet");
+ m.setEventType(e);
+
+ tempResp.setMetadata(m);
+
+ final Data d1 = new Data();
+ d1.setId("resultCodeData_" + meta.getId());
+ d1.setMetadataIdRef("resultCodeMeta_" + meta.getId());
+ final Datum dat1 = new Datum("datum_" + meta.getId(),
"nmwgr");
+ dat1.setText("Successfully executed request");
+ d1.setDatum(dat1);
+ tempResp.setData(d1);
+
+ final Metadata copy = new Metadata();
+ copy.setId(meta.getId());
+ copy.setSubject(meta.getSubject());
+ final Parameters params = new Parameters();
+ params.setId(meta.getParameters().getId());
+ copy.setParameters(params);
+ copy.setEventType(meta.getFirstEventType());
+ tempResp.setMetadata(copy);
+
+ final Data d = new Data();
+ d.setId("data" + tempIdx++);
+ d.setMetadataIdRef(meta.getId());
+ final Datum dat = new Datum();
+ dat.setText("For address family: IPv4 Unicast@@@@@@" +
+ "For address family: IPv6 Unicast@@@@@@" +
+ "For address family: VPNv4 Unicast@@@@@@" +
+ "For address family: IPv4 Multicast@@@@@@" +
+ "For address family: IPv6 Multicast@@@@@@" +
+ "For address family: NSAP Unicast@@@" +
+ "---END---");
+ d.setDatum(dat);
+ tempResp.setData(d);
+ }
+
+ resp.setElement(tempResp);
+
+ if (true) return;*/
+
logger.info("[CiscoIpAdapter] Webservice takeAction call received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoIpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -469,8 +517,7 @@
IpCommandInterface ipCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -478,7 +525,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoIpAdapter][takeAction] Parameter value:
" + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -516,10 +563,10 @@
}
if (temp.equalsIgnoreCase("")) {
-
+ System.err.println("About to execute...");
adapter.connect(subject);
temp = adapter.executeCommand(ipCommand).getResult();
-
+ System.err.println("After execution: [" + temp + "]");
}
} else if (valid) {
@@ -568,34 +615,21 @@
logger.info("[CiscoIpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoIpAdapter][takeAction] Constructing response
message");
+
+ msg.setResponseMessageAllMetadata(resp, datum);
- Message response = new Message();
-
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- for (int i = 0; i < request.getMetadataArray().length; i++) {
- response.setMetadata(respMetaData[i]);
- }
- response.setData(respData[0]);
-
// response.setSonarMetadata(request.getSonarMetadata());
// response.setSonarData(new Data[] { data });
logger.info("[CiscoIpAdapter][takeAction] takeAction finished");
-
- return response;
// return new ServiceEngineResponse();
}
@@ -618,7 +652,7 @@
ipCommand = adapter.getCommand("IP_ROUTE");
String temp = adapter.executeCommand(ipCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoKeyIpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoKeyIpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoKeyIpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -10,20 +10,14 @@
import java.util.List;
import java.util.StringTokenizer;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -77,7 +71,7 @@
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoKeyIpAdapter.class);
private MetadataConfiguration properties = null;
@@ -90,10 +84,6 @@
public CiscoKeyIpAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
- .getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -180,9 +170,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface
*/
- public IpCommandInterface executeCommand(IpCommandInterface command) {
+ public IpCommandInterface executeCommand(IpCommandInterface command)
throws PerfSONARException {
logger.info("[CiscoKeyIpAdapter] executeCommand called");
@@ -411,21 +402,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp)
throws PerfSONARException {
logger.info("[CiscoKeyIpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoKeyIpAdapter][takeAction] SubjectString:
" + subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
logger.debug("[CiscoKeyIpAdapter][takeAction]
EventTypeString: " + eventTypeString);
@@ -481,8 +467,7 @@
configureCommands(subject);
IpCommandInterface ipCommand =
this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -490,7 +475,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoKeyIpAdapter][takeAction]
Parameter Value: " + parameter);
if (new
ParameterChecker().checkParam(subject, eventTypeString,
@@ -589,31 +574,19 @@
logger.info("[CiscoKeyIpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid)
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
else
- datum.setDatum(temp);
+ datum.setText(temp);
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
logger.info("[CiscoKeyIpAdapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoKeyIpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -635,8 +608,8 @@
ipCommand = adapter.getCommand("IP_TEST");
String temp =
adapter.executeCommand(ipCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance()
-
.getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance()
+ //
.getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, ipCommand));
@@ -650,5 +623,4 @@
}
}
-
}
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoSshIpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoSshIpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/CiscoSshIpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,22 +9,15 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ip.commands.IpCommand;
@@ -62,18 +55,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoSshIpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoSshIpAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -155,9 +144,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface
*/
- public IpCommandInterface executeCommand(IpCommandInterface command) {
+ public IpCommandInterface executeCommand(IpCommandInterface command)
throws PerfSONARException {
logger.info("[CiscoSshIpAdapter] executeCommand called");
@@ -378,21 +368,17 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
+
+ logger.info("[CiscoSshIpAdapter] Webservice takeAction call
received");
- logger.info("[CiscoSshIpAdapter] Webservice takeAction call
received");
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
-
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoSshIpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -442,8 +428,7 @@
IpCommandInterface ipCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -451,7 +436,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoSshIpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -541,30 +526,18 @@
logger.info("[CiscoSshIpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoSshIpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoSshIpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -585,7 +558,7 @@
ipCommand = adapter.getCommand("IP_ROUTE");
String temp = adapter.executeCommand(ipCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println("Temp: " + temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperIpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperIpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperIpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -62,18 +56,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperIpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public JuniperIpAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -155,9 +145,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface
*/
- public IpCommandInterface executeCommand(IpCommandInterface command) {
+ public IpCommandInterface executeCommand(IpCommandInterface command)
throws PerfSONARException {
logger.info("[JuniperIpAdapter] executeCommand called");
@@ -396,21 +387,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperIpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperIpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
logger.debug("[JuniperIpAdapter][takeAction] EventTypeString: " +
eventType);
@@ -468,8 +454,7 @@
IpCommandInterface ipCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -477,7 +462,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperIpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -567,32 +552,21 @@
logger.info("[JuniperIpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperIpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
//response.setSonarMetadata(request.getSonarMetadata());
//response.setSonarData(new Data[] { data });
logger.info("[JuniperIpAdapter] takeAction finished");
-
- return response;
//return new ServiceEngineResponse();
}
@@ -615,7 +589,7 @@
ipCommand = adapter.getCommand("IP_PIM_RENDEZVOUS");
String temp = adapter.executeCommand(ipCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, ipCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperKeyIpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperKeyIpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperKeyIpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -65,18 +59,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperKeyIpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public JuniperKeyIpAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -158,9 +148,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface
*/
- public IpCommandInterface executeCommand(IpCommandInterface command) {
+ public IpCommandInterface executeCommand(IpCommandInterface command)
throws PerfSONARException {
logger.info("[JuniperKeyIpAdapter] executeCommand called");
@@ -394,21 +385,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperKeyIpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperKeyIpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
logger.debug("[JuniperKeyIpAdapter][takeAction] EventTypeString: " +
eventType);
@@ -463,16 +449,16 @@
configureCommands(subject);
IpCommandInterface ipCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
if (parametersArray.length > 0) {
for (int i = 0; i < parametersArray.length; i++) {
- Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ final Parameter param = parametersArray[i];
+ final String parameter = param.getValue();
logger.debug("[JuniperKeyIpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -562,32 +548,20 @@
logger.info("[JuniperKeyIpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
logger.info("[JuniperKeyIpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[JuniperKeyIpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -608,7 +582,7 @@
ipCommand = adapter.getCommand("IP_TEST");
String temp = adapter.executeCommand(ipCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+// ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, ipCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperSshIpAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperSshIpAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ip/adapters/JuniperSshIpAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -62,7 +56,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperSshIpAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
@@ -70,11 +64,7 @@
// ---------------------- constructors
public JuniperSshIpAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -156,9 +146,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.IpAdapterInterface
*/
- public IpCommandInterface executeCommand(IpCommandInterface command) {
+ public IpCommandInterface executeCommand(IpCommandInterface command)
throws PerfSONARException {
logger.info("[JuniperSshIpAdapter] executeCommand called");
@@ -392,21 +383,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperSshIpAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperSshIpAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -456,8 +442,7 @@
IpCommandInterface ipCommand = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -465,7 +450,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperSshIpAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -555,30 +540,18 @@
logger.info("[JuniperSshIpAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipCommand));
+ datum.setText(filterResult(temp, ipCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperSshIpAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[JuniperSshIpAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -599,7 +572,7 @@
ipCommand = adapter.getCommand("IP");
String temp = adapter.executeCommand(ipCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+// ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/Ipv6AdapterInterface.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/Ipv6AdapterInterface.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/Ipv6AdapterInterface.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -7,7 +7,7 @@
import java.util.List;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.commands.Ipv6CommandInterface;
/**
@@ -57,8 +57,9 @@
*
* @param command The Ipv6Command to be executed command
* @return Ipv6Command with the results inserted
+ * @throws PerfSONARException
*/
- public abstract Ipv6CommandInterface executeCommand(Ipv6CommandInterface
command);
+ public abstract Ipv6CommandInterface executeCommand(Ipv6CommandInterface
command) throws PerfSONARException;
/**
* Makes the Adapter connecting to the device
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoIpv6Adapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoIpv6Adapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoIpv6Adapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -62,7 +56,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoIpv6Adapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
@@ -70,11 +64,7 @@
// ---------------------- constructors
public CiscoIpv6Adapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -156,9 +146,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.Ipv6AdapterInterface
*/
- public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
{
+ public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
throws PerfSONARException {
logger.info("[CiscoIpv6Adapter] executeCommand called");
@@ -377,21 +368,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoIpv6Adapter Webservice takeAction call received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoIpv6Adapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -453,8 +439,7 @@
Ipv6CommandInterface ipv6Command = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -462,7 +447,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoIpv6Adapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -552,32 +537,21 @@
logger.info("[CiscoIpv6Adapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoIpv6Adapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
//response.setSonarMetadata(request.getSonarMetadata());
//response.setSonarData(new Data[] { data });
logger.info("[CiscoIpv6Adapter] takeAction finished");
-
- return response;
//return new ServiceEngineResponse();
}
@@ -600,7 +574,7 @@
ipv6Command = adapter.getCommand("IPv6_ROUTE");
String temp =
adapter.executeCommand(ipv6Command).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoKeyIpv6Adapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoKeyIpv6Adapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoKeyIpv6Adapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,22 +9,15 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.Ipv6AdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.commands.Ipv6Command;
@@ -66,18 +59,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoKeyIpv6Adapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoKeyIpv6Adapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -159,9 +148,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.Ipv6AdapterInterface
*/
- public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
{
+ public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
throws PerfSONARException {
logger.info("[CiscoKeyIpv6Adapter] executeCommand called");
@@ -372,21 +362,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoKeyIpv6Adapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoKeyIpv6Adapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -432,8 +417,7 @@
Ipv6CommandInterface ipv6Command = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -441,7 +425,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoKeyIpv6Adapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -531,32 +515,20 @@
logger.info("[CiscoKeyIpv6Adapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
logger.info("[CiscoKeyIpv6Adapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoKeyIpv6Adapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -577,7 +549,7 @@
ipv6Command =
adapter.getCommand("IPv6_MULTICAST_FORWARDING");
String temp =
adapter.executeCommand(ipv6Command).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, ipv6Command));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoSshIpv6Adapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoSshIpv6Adapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/CiscoSshIpv6Adapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,22 +9,15 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.Ipv6AdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.commands.Ipv6Command;
@@ -62,18 +55,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoSshIpv6Adapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoSshIpv6Adapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -155,9 +144,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.IpAdapterInterface
*/
- public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
{
+ public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
throws PerfSONARException {
logger.info("[CiscoSshIpv6Adapter] executeCommand called");
@@ -368,21 +358,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoSshIpv6Adapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoSshIpv6Adapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -431,8 +416,7 @@
Ipv6CommandInterface ipv6Command = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -440,7 +424,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoSshIpv6Adapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -530,30 +514,18 @@
logger.info("[CiscoSshIpv6Adapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoSshIpv6Adapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoSshIpv6Adapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -574,7 +546,7 @@
ipv6Command = adapter.getCommand("IPv6_ROUTE");
String temp =
adapter.executeCommand(ipv6Command).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperIpv6Adapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperIpv6Adapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperIpv6Adapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -62,7 +56,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperIpv6Adapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
@@ -70,11 +64,7 @@
// ---------------------- constructors
public JuniperIpv6Adapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -156,9 +146,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.Ipv6AdapterInterface
*/
- public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
{
+ public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
throws PerfSONARException {
logger.info("[JuniperIpv6Adapter] executeCommand called");
@@ -384,21 +375,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperIpv6Adapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperIpv6Adapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -456,8 +442,7 @@
Ipv6CommandInterface ipv6Command = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -465,7 +450,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperIpv6Adapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -555,32 +540,21 @@
logger.info("[JuniperIpv6Adapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperIpv6Adapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
// response.setSonarMetadata(request.getSonarMetadata());
// response.setSonarData(new Data[] { data });
logger.info("[JuniperIpv6Adapter] takeAction finished");
-
- return response;
// return new ServiceEngineResponse();
}
@@ -603,7 +577,7 @@
ipv6Command =
adapter.getCommand("IPv6_MULTICAST_FORWARDING");
String temp =
adapter.executeCommand(ipv6Command).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+// ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, ipv6Command));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperKeyIpv6Adapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperKeyIpv6Adapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperKeyIpv6Adapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -66,18 +60,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperKeyIpv6Adapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public JuniperKeyIpv6Adapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -159,9 +149,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ip.Ipv6AdapterInterface
*/
- public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
{
+ public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
throws PerfSONARException {
logger.info("[JuniperKeyIpv6Adapter] executeCommand called");
@@ -381,21 +372,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperKeyIpv6Adapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperKeyIpv6Adapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -441,8 +427,7 @@
Ipv6CommandInterface ipv6Command = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -450,7 +435,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperKeyIpv6Adapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -540,32 +525,20 @@
logger.info("[JuniperKeyIpv6Adapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
logger.info("[JuniperKeyIpv6Adapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[JuniperKeyIpv6Adapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -586,7 +559,7 @@
ipv6Command =
adapter.getCommand("IPv6_MULTICAST_FORWARDING");
String temp =
adapter.executeCommand(ipv6Command).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, ipv6Command));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperSshIpv6Adapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperSshIpv6Adapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/ipv6/adapters/JuniperSshIpv6Adapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,22 +9,15 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.Ipv6AdapterInterface;
import
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.commands.Ipv6Command;
@@ -62,7 +55,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperSshIpv6Adapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
@@ -71,9 +64,6 @@
public JuniperSshIpv6Adapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -155,9 +145,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.ipv6.IpAdapterInterface
*/
- public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
{
+ public Ipv6CommandInterface executeCommand(Ipv6CommandInterface command)
throws PerfSONARException {
logger.info("[JuniperSshIpv6Adapter] executeCommand called");
@@ -379,21 +370,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperSshIpv6Adapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperSshIpv6Adapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -443,8 +429,7 @@
Ipv6CommandInterface ipv6Command = this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -452,7 +437,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperSshIpv6Adapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -542,30 +527,18 @@
logger.info("[JuniperSshIpv6Adapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, ipv6Command));
+ datum.setText(filterResult(temp, ipv6Command));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperSshIpv6Adapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[JuniperSshIpv6Adapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -586,7 +559,7 @@
ipv6Command = adapter.getCommand("IPv6");
String temp =
adapter.executeCommand(ipv6Command).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/DbMetadataConfiguration.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/DbMetadataConfiguration.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/DbMetadataConfiguration.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -5,19 +5,17 @@
*/
package org.perfsonar.service.measurementPoint.lookingGlassType.metadata;
-import java.io.File;
import java.util.ArrayList;
import java.util.List;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import
org.perfsonar.base.auxiliary.components.configuration.ConfigurationComponent;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.storage.StorageManager;
-import org.perfsonar.service.base.storage.xmldb.XmlDbDataRepository;
-import org.perfsonar.service.base.storage.xmldb.XmlDbStorageManager;
-import org.perfsonar.service.base.storage.xmldb.exist.ExistDbFactory;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.configuration.ConfigurationManager;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.storage.xml.XMLDBComponent;
+import org.perfsonar.base2.service.storage.xml.XMLDBResult;
+import org.perfsonar.base2.service.storage.xml.XMLDataStorage;
+import org.perfsonar.service.measurementPoint.Configuration;
+import
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.adapters.CiscoBgpAdapter;
/**
* Class implementing the MetadataConfiguration interface for
@@ -28,16 +26,16 @@
*/
public class DbMetadataConfiguration implements MetadataConfiguration {
- /**
+ private static final String CONFIGURATION = "Configuration";
+ /**
* This object provides access to metadata configuration
*/
- protected StorageManager existDbXmlStorageManager = null;
- protected LoggerComponent logger = null;
- protected ConfigurationComponent configuration = null;
+ protected XMLDataStorage dataStorage = null;
+ private static final Logger logger =
Logger.getLogger(DbMetadataConfiguration.class);
protected String metadataFile = "";
public DbMetadataConfiguration() throws PerfSONARException {
- try {
+ /*try {
this.logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
@@ -48,29 +46,25 @@
"error.common.no_logger",
"MetadataConfigurationStorageManager.constructor: " +
"Cannot get logger component");
- }
+ }*/
try {
-
- this.configuration = (ConfigurationComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.CONFIG);
-
- } catch (PerfSONARException e) {
-
- logger.error("[DbMetadataConfiguration][Constructor]" +
e.getStackTrace()[0].toString());
- throw new PerfSONARException(
- "error.common.no_configuration",
- "MetadataConfigurationStorageManager.constructor: " +
"Cannot get config component");
-
+ metadataFile = ((Configuration)
ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent(CONFIGURATION)).getXMLDBMetadataFileName();
+ } catch (PerfSONARException ex) {
+ logger.error("[DbMetadataConfiguration][Constructor]" +
ex.getStackTrace()[0].toString());
+ throw new PerfSONARException("error.common.no_configuration",
+ "MetadataConfigurationStorageManager.constructor: " +
"Cannot get config component");
}
-
- metadataFile =
configuration.getProperty("component.mp.xmldb.metadata_file_name");
}
public void initStorage() throws PerfSONARException {
-
- this.existDbXmlStorageManager = getStorageManager();
+ this.dataStorage = getXMLDBComponent().getDataStorage();
}
+ private XMLDBComponent getXMLDBComponent() throws PerfSONARException {
+ return
((XMLDBComponent)ConfigurationManager.getInstance().getConfiguration().getAuxiliaryComponent("XMLDB"));
+ }
+
public String getProperty(String property) throws PerfSONARException {
//logger.debug("[DbMetadataConfiguration] getProperty(" + property +
") called.");
@@ -82,7 +76,6 @@
String query = "";
- String result = "";
if (property.equalsIgnoreCase("url") ||
property.equalsIgnoreCase("class_name")
@@ -99,9 +92,9 @@
//logger.debug("[DbMetadataConfiguration] query: " + query);
- Object object = null;
+ final XMLDBResult dbResult;
try {
- object = this.existDbXmlStorageManager.fetch(query);
+ dbResult = performXQuery(query);
} catch (Exception ex) {
logger.error("[DbMetadataConfiguration][GetProperty]
MetadataConfigurationStorageManager.fetch: " + "Connection to xml database
failed: " + ex.toString());
//ex.printStackTrace();
@@ -109,14 +102,14 @@
"error.common.storage.xmldb",
"DbMetadataConfiguration.getProperties: " + "Connection
to xml database failed");
}
- String[] res = (String[]) object;
+ final String[] res = (String[]) dbResult.getTextResults();
if (res == null || res.length != 1) {
throw new PerfSONARException(
"error.mp",
"DbMetadataConfiguration.getProperty: " + "Result array
of metadata search is null or it contains no or too much elements");
}
- result = res[0];
+ final String result = res[0];
if (result == null) {
throw new PerfSONARException(
@@ -127,15 +120,17 @@
return result;
}
- public String getProperty(String device, String command, String
property) throws PerfSONARException {
+ private XMLDBResult performXQuery(String query) throws
PerfSONARException {
+ return dataStorage.performXQuery(query, getXMLDBComponent().getUri(),
getXMLDBComponent().getCredential());
+ }
+ public String getProperty(String device, String command, String
property) throws PerfSONARException {
+
//logger.debug("[DbMetadataConfiguration] getProperty(" + device +
", " + command + ", " + property + ") called.");
String query = "";
- String result = "";
-
if (property.equalsIgnoreCase("description") ||
property.equalsIgnoreCase("command") ||
property.equalsIgnoreCase("minParamCount") ||
property.equalsIgnoreCase("maxParamCount") ||
property.equalsIgnoreCase("caching") || property.equalsIgnoreCase("syntax")
|| property.equalsIgnoreCase("regex")) {
query += "declare namespace
nmwg=\"http://ggf.org/ns/nmwg/base/2.0/\";\n";
query += "\n";
@@ -152,9 +147,9 @@
//logger.debug("[DbMetadataConfiguration] query: " + query);
- Object object = null;
+ final XMLDBResult dbResult;
try {
- object = this.existDbXmlStorageManager.fetch(query);
+ dbResult = performXQuery(query);
} catch (Exception ex) {
logger.error("[DbMetadataConfiguration][GetProperty]MetadataConfigurationStorageManager.fetch:
" + "Connection to xml database failed: " + ex.toString());
//ex.printStackTrace();
@@ -163,14 +158,14 @@
"DbMetadataConfiguration.getProperties: " + "Connection
to xml database failed");
}
- String[] res = (String[]) object;
+ final String[] res = (String[]) dbResult.getTextResults();
if (res == null || res.length != 1) {
throw new PerfSONARException(
"error.mp",
"DbMetadataConfiguration.getProperty: " + "Result array
of metadata search is null or it contains no or too much elements");
}
- result = res[0];
+ final String result = res[0];
if (result == null) {
throw new PerfSONARException(
@@ -199,9 +194,9 @@
//logger.debug("[DbMetadataConfiguration] query: " + query);
- Object object = null;
+ final XMLDBResult dbResult;
try {
- object = this.existDbXmlStorageManager.fetch(query);
+ dbResult = performXQuery(query);
} catch (Exception ex) {
logger.error("[DbMetadataConfiguration][GetProperties]DbMetadataConfiguration.getProperties:
" + "Connection to xml database failed: " + ex.toString());
ex.printStackTrace();
@@ -209,8 +204,8 @@
"error.common.storage.xmldb",
"DbMetadataConfiguration.getProperties: " + "Connection
to xml database failed");
}
- String[] xmlResults = (String[]) object;
-
+
+ final String[] xmlResults = (String[]) dbResult.getTextResults();
if (xmlResults == null) {
logger.error("[DbMetadataConfiguration][getProperties] Result
array of metadata search is null");
throw new PerfSONARException(
@@ -236,7 +231,7 @@
}
}
- ArrayList result = new ArrayList();
+ final ArrayList result = new ArrayList();
for (int i = 0; i < xmlResults.length; i++) {
result.add(xmlResults[i]);
}
@@ -268,9 +263,9 @@
//logger.debug("[DbMetadataConfiguration] query: " + query);
- Object object = null;
+ final XMLDBResult dbResult;
try {
- object = this.existDbXmlStorageManager.fetch(query);
+ dbResult = performXQuery(query);
} catch (Exception ex) {
logger.error("[DbMetadataConfiguration][GetProperty]DbMetadataConfiguration.getProperties:
" + "Connection to xml database failed: " + ex.toString());
//ex.printStackTrace();
@@ -278,8 +273,8 @@
"error.common.storage.xmldb",
"DbMetadataConfiguration.getProperties: " + "Connection
to xml database failed");
}
- String[] xmlResults = (String[]) object;
-
+
+ final String[] xmlResults = (String[]) dbResult.getTextResults();
if (xmlResults == null) {
throw new PerfSONARException(
"error.mp",
@@ -302,51 +297,10 @@
}
}
- ArrayList result = new ArrayList();
+ final ArrayList result = new ArrayList();
for (int i = 0; i < xmlResults.length; i++) {
result.add(xmlResults[i]);
}
return result;
}
-
- protected XmlDbStorageManager getStorageManager()
- throws PerfSONARException {
-
- String xmldbAccess = "http";
-
- try {
- xmldbAccess =
-
configuration.getProperty("component.mp.xmldb.db_access");
- } catch (Exception ex) {
- logger.error("[DbMetadataConfiguration][GetStorageManager]" +
ex.getStackTrace()[0].toString());
- throw new PerfSONARException(
- "warning.mp.metadata_configuration",
- "DbMetadataConfiguration.getStorageManager: " +
"Something went wrong while reading the properties file");
- }
-
- if (xmldbAccess == null || xmldbAccess.equals("")) {
- xmldbAccess = "http";
- }
-
-
- XmlDbDataRepository dataRepository =
- ExistDbFactory.getDataRepositoryByProperties(
- xmldbAccess.toUpperCase(),
- "component.mp.xmldb.db_uri",
- "component.mp.xmldb.db_username",
- "component.mp.xmldb.db_password");
-
- XmlDbStorageManager storageManager =
- ExistDbFactory.getXMLStorageManager(
- xmldbAccess, dataRepository);
- storageManager.setResultType(
- XmlDbStorageManager.STRING_ARRAY_TYPE);
-
- return storageManager;
-
- }
-
- public static void main(String[] args) {
-
- }
}
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/MetadataConfiguration.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/MetadataConfiguration.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/metadata/MetadataConfiguration.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -5,10 +5,9 @@
*/
package org.perfsonar.service.measurementPoint.lookingGlassType.metadata;
-import java.io.File;
import java.util.List;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
/**
* Interface which acts is a middle layer between the MP and the metadata
configuration
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/StatusAdapterInterface.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/StatusAdapterInterface.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/StatusAdapterInterface.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -7,7 +7,7 @@
import java.util.List;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import
org.perfsonar.service.measurementPoint.lookingGlassType.status.commands.StatusCommandInterface;
/**
@@ -57,8 +57,9 @@
*
* @param command The StatusCommand to be executed command
* @return StatusCommand with the results inserted
+ * @throws PerfSONARException
*/
- public abstract StatusCommandInterface
executeCommand(StatusCommandInterface command);
+ public abstract StatusCommandInterface
executeCommand(StatusCommandInterface command) throws PerfSONARException;
/**
* Makes the Adapter connecting to the device
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoKeyStatusAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoKeyStatusAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoKeyStatusAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -66,7 +60,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoKeyStatusAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
@@ -75,9 +69,6 @@
public CiscoKeyStatusAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -159,9 +150,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.StatusAdapterInterface
*/
- public StatusCommandInterface executeCommand(StatusCommandInterface
command) {
+ public StatusCommandInterface executeCommand(StatusCommandInterface
command) throws PerfSONARException {
logger.info("[CiscoKeyStatusAdapter] executeCommand called");
@@ -365,21 +357,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoKeyStatusAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoKeyStatusAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -425,8 +412,7 @@
StatusCommandInterface statusCommand =
this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -434,7 +420,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoKeyStatusAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -524,30 +510,18 @@
logger.info("[CiscoKeyStatusAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, statusCommand));
+ datum.setText(filterResult(temp, statusCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoKeyStatusAdapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoKeyStatusAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -568,7 +542,7 @@
statusCommand = adapter.getCommand("STATUS_TEST");
String temp =
adapter.executeCommand(statusCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, statusCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoSshStatusAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoSshStatusAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoSshStatusAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -17,20 +17,14 @@
import javax.swing.SwingUtilities;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
@@ -71,18 +65,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoSshStatusAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoSshStatusAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -164,9 +154,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.status.IpAdapterInterface
*/
- public StatusCommandInterface executeCommand(StatusCommandInterface
command) {
+ public StatusCommandInterface executeCommand(StatusCommandInterface
command) throws PerfSONARException {
logger.info("[CiscoSshStatusAdapter] executeCommand called");
@@ -369,21 +360,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoSshStatusAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoSshStatusAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -433,8 +419,7 @@
StatusCommandInterface statusCommand =
this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -442,7 +427,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoSshStatusAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -532,30 +517,18 @@
logger.info("[CiscoSshStatusAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, statusCommand));
+ datum.setText(filterResult(temp, statusCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoSshStatusAdapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[CiscoSshStatusAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -576,7 +549,7 @@
statusCommand = adapter.getCommand("STATUS_INTERFACE");
String temp =
adapter.executeCommand(statusCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoStatusAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoStatusAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/CiscoStatusAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,22 +9,15 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
@@ -63,18 +56,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(CiscoStatusAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public CiscoStatusAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -158,9 +147,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.status.StatusAdapterInterface
*/
- public StatusCommandInterface executeCommand(StatusCommandInterface
command) {
+ public StatusCommandInterface executeCommand(StatusCommandInterface
command) throws PerfSONARException {
logger.info("[CiscoStatusAdapter] executeCommand called");
@@ -398,20 +388,15 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[CiscoStatusAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[CiscoStatusAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
+ final EventType eventType = msg.getEventType();
String eventTypeString = eventType.getEventType();
logger.debug("[CiscoStatusAdapter][takeAction] EventTypeString: " +
eventTypeString);
@@ -470,8 +455,7 @@
StatusCommandInterface statusCommand =
this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -479,7 +463,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[CiscoStatusAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -569,32 +553,21 @@
logger.info("[CiscoStatusAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, statusCommand));
+ datum.setText(filterResult(temp, statusCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[CiscoStatusAdapter][takeAction] Constructing response
message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
// response.setSonarMetadata(request.getSonarMetadata());
// response.setSonarData(new Data[] { data });
logger.info("[CiscoStatusAdapter] takeAction finished");
-
- return response;
// return new ServiceEngineResponse();
}
@@ -617,7 +590,7 @@
statusCommand = adapter.getCommand("STATUS_WHO");
String temp =
adapter.executeCommand(statusCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperKeyStatusAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperKeyStatusAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperKeyStatusAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,22 +9,15 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
-import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.DbMetadataConfiguration;
import
org.perfsonar.service.measurementPoint.lookingGlassType.metadata.MetadataConfiguration;
@@ -66,18 +59,14 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperKeyStatusAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
// ---------------------- constructors
public JuniperKeyStatusAdapter() throws PerfSONARException {
-
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -159,9 +148,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.bgp.StatusAdapterInterface
*/
- public StatusCommandInterface executeCommand(StatusCommandInterface
command) {
+ public StatusCommandInterface executeCommand(StatusCommandInterface
command) throws PerfSONARException {
logger.info("[JuniperKeyStatusAdapter] executeCommand called");
@@ -379,20 +369,15 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperKeyStatusAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperKeyStatusAdapter][takeAction] SubjectString: "
+ subject);
- EventType eventType = metadata[0].getEventType();
+ final EventType eventType = msg.getEventType();
String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -439,16 +424,15 @@
StatusCommandInterface statusCommand =
this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
if (parametersArray.length > 0) {
for (int i = 0; i < parametersArray.length; i++) {
- Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ final Parameter param = parametersArray[i];
+ final String parameter = param.getValue();
logger.debug("[JuniperKeyStatusAdapter][takeAction]
Parameter value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -538,30 +522,18 @@
logger.info("[JuniperKeyStatusAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, statusCommand));
+ datum.setText(filterResult(temp, statusCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperKeyStatusAdapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
logger.info("[JuniperKeyStatusAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -582,7 +554,7 @@
statusCommand = adapter.getCommand("STATUS_TEST");
String temp =
adapter.executeCommand(statusCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, statusCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperSshStatusAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperSshStatusAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperSshStatusAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -62,7 +56,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperSshStatusAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
@@ -71,9 +65,6 @@
public JuniperSshStatusAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -155,9 +146,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.status.IpAdapterInterface
*/
- public StatusCommandInterface executeCommand(StatusCommandInterface
command) {
+ public StatusCommandInterface executeCommand(StatusCommandInterface
command) throws PerfSONARException {
logger.info("[JuniperSshStatusAdapter] executeCommand called");
@@ -372,21 +364,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperSshStatusAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperSshStatusAdapter][takeAction] SubjectString: "
+ subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
@@ -436,8 +423,7 @@
StatusCommandInterface statusCommand =
this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -445,7 +431,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperSshStatusAdapter][takeAction]
Parameter value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -535,30 +521,18 @@
logger.info("[JuniperSshStatusAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, statusCommand));
+ datum.setText(filterResult(temp, statusCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperSshStatusAdapter][takeAction] Constructing
response message");
- Message response = new Message();
-
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
+ msg.setResponseMessage(resp, datum);
+
logger.info("[JuniperSshStatusAdapter] takeAction finished");
-
- return response;
-
}
// ---------------------- Stand-alond Test Method
@@ -579,7 +553,7 @@
statusCommand = adapter.getCommand("STATUS");
String temp =
adapter.executeCommand(statusCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+// ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(temp);
} catch (PerfSONARException e) {
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperStatusAdapter.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperStatusAdapter.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/lookingGlassType/status/adapters/JuniperStatusAdapter.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,20 +9,14 @@
import java.util.Iterator;
import java.util.List;
-import org.ggf.ns.nmwg.base.v2_0.Data;
-import org.ggf.ns.nmwg.base.v2_0.Datum;
-import org.ggf.ns.nmwg.base.v2_0.EventType;
-import org.ggf.ns.nmwg.base.v2_0.Message;
-import org.ggf.ns.nmwg.base.v2_0.Metadata;
-import org.ggf.ns.nmwg.base.v2_0.Parameter;
-import org.ggf.ns.nmwg.base.v2_0.Parameters;
-import org.ggf.ns.nmwg.base.v2_0.Subject;
-import org.ggf.ns.nmwg.topology.v2_0.EndPoint;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
-import org.perfsonar.service.base.engine.ServiceEngine;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.requesthandler.ServiceEngine;
+import org.perfsonar.base2.service.requesthandler.ServiceMessage;
+import org.perfsonar.base2.xml.nmwg.Datum;
+import org.perfsonar.base2.xml.nmwg.EventType;
+import org.perfsonar.base2.xml.nmwg.Parameter;
+import org.perfsonar.service.measurementPoint.MessageDecorator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.encryption.PasswordEncryptor;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.adapters.ServicePropertiesConfigurator;
import
org.perfsonar.service.measurementPoint.lookingGlassType.engine.commands.ParameterChecker;
@@ -63,7 +57,7 @@
// ---------------------- class-fields
private List availableSpecificCommands = null;
private RemoteManager manager = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(JuniperStatusAdapter.class);
private MetadataConfiguration properties = null;
// ---------------------- caching attributes
private static List cachedResults = new ArrayList();
@@ -72,9 +66,6 @@
public JuniperStatusAdapter() throws PerfSONARException {
try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
this.properties = new DbMetadataConfiguration();
properties.initStorage();
@@ -158,9 +149,10 @@
}// getCommand
/**
+ * @throws PerfSONARException
* @see
org.perfsonar.service.measurementPoint.lookingGlassType.status.StatusAdapterInterface
*/
- public StatusCommandInterface executeCommand(StatusCommandInterface
command) {
+ public StatusCommandInterface executeCommand(StatusCommandInterface
command) throws PerfSONARException {
logger.info("[JuniperStatusAdapter] executeCommand called");
@@ -398,21 +390,16 @@
/**
* @see ServiceEngine.java
*/
- public Message takeAction(String actionType, Message request)
- throws PerfSONARException {
-
+ public void takeAction(ServiceMessage req, ServiceMessage resp) throws
PerfSONARException {
logger.info("[JuniperStatusAdapter] Webservice takeAction call
received");
- Metadata[] metadata = request.getMetadataArray();
- Subject s = metadata[0].getSubject();
+ final MessageDecorator msg = new
MessageDecorator(req.getMessageElement());
+ final String subject = msg.getSubject();
- EndPoint endpoint = (EndPoint) s.getChildArray()[0];
- String subject = endpoint.getValue();
-
logger.debug("[JuniperStatusAdapter][takeAction] SubjectString: " +
subject);
- EventType eventType = metadata[0].getEventType();
- String eventTypeString = eventType.getEventType();
+ final EventType eventType = msg.getEventType();
+ final String eventTypeString = eventType.getEventType();
//eventTypeString =
eventTypeString.substring(ServicePropertiesConfigurator.EVENTTYPE_PREFIX.length()-1,
eventTypeString.lastIndexOf("/"));
logger.debug("[JuniperStatusAdapter][takeAction] EventString: " +
eventTypeString);
@@ -469,8 +456,7 @@
StatusCommandInterface statusCommand =
this.getCommand(eventTypeString);
- Parameters parameters = metadata[0].getParameters();
- Parameter[] parametersArray = parameters.getParameterArray();
+ final Parameter[] parametersArray = msg.getParameters();
String temp = "";
boolean valid = true;
@@ -478,7 +464,7 @@
for (int i = 0; i < parametersArray.length; i++) {
Parameter param = parametersArray[i];
- String parameter = param.getParameterValue();
+ String parameter = param.getValue();
logger.debug("[JuniperStatusAdapter][takeAction] Parameter
value: " + parameter);
if (new ParameterChecker().checkParam(subject,
eventTypeString,
@@ -568,34 +554,21 @@
logger.info("[JuniperStatusAdapter][takeAction] Command executed
succesfully");
- Datum datum = new Datum();
+ final Datum datum = new Datum();
if (valid) {
- datum.setDatum(filterResult(temp, statusCommand));
+ datum.setText(filterResult(temp, statusCommand));
} else {
- datum.setDatum(temp);
+ datum.setText(temp);
}
logger.info("[JuniperStatusAdapter][takeAction] Constructing
response message");
- Message response = new Message();
+ msg.setResponseMessage(resp, datum);
- Data[] respData = new Data[1];
- Metadata[] respMetaData;
- respData = request.getDataArray();
- respData[0].clearChildren();
- respData[0].setChild(datum);
- respMetaData = request.getMetadataArray();
- response.setMetadata(respMetaData[0]);
- response.setData(respData[0]);
-
// response.setSonarMetadata(request.getSonarMetadata());
// response.setSonarData(new Data[] { data });
logger.info("[JuniperStatusAdapter] takeAction finished");
-
- return response;
- // return new ServiceEngineResponse();
-
}
// ---------------------- Stand-alond Test Method
@@ -616,7 +589,7 @@
statusCommand = adapter.getCommand("STATUS_CONNECTIONS");
String temp =
adapter.executeCommand(statusCommand).getResult();
- ((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
+ //((LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER)).info(temp);
//System.out.println(adapter.filterResult(temp, statusCommand));
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/common/RemoteManager.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/common/RemoteManager.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/common/RemoteManager.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -5,7 +5,7 @@
*/
package org.perfsonar.service.measurementPoint.remote.common;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
/**
* RemoteManager.java -- This Interface specifies some methodes
@@ -24,7 +24,7 @@
public void connect(String userName, String passwd) throws
PerfSONARException;
- public String executeCommand(String command);
+ public String executeCommand(String command) throws PerfSONARException;
public void disconnect();
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshKeyManager.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshKeyManager.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshKeyManager.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -15,10 +15,8 @@
import javax.swing.SwingUtilities;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import org.perfsonar.service.measurementPoint.remote.common.RemoteManager;
import com.jcraft.jsch.Channel;
@@ -44,7 +42,7 @@
private String userName = null;
private String keyUrl = null;
private String passphrase = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(SshKeyManager.class);
private boolean connected = false;
private int timeout = 0;
@@ -59,16 +57,6 @@
ui = new MyUserInfo(keyUrl);
this.timeout = timeout;
- try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
- } catch (PerfSONARException e1) {
-
- logger.error("[SshKeyManager][Constructor]" +
e1.getStackTrace()[0].toString());
-
- }
-
if (connect) {
try {
@@ -97,17 +85,6 @@
ui = new MyUserInfo(keyUrl);
this.timeout = timeout;
- try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
- } catch (PerfSONARException e1) {
- logger.error("[SshKeyManager][Constructor]" +
e1.getMessage());
- for (int i = 0; i < e1.getStackTrace().length; i++)
- logger.error("[SshKeyManager][Constructor]" +
e1.getStackTrace()[i].toString());
-
- }
-
if (connect) {
try {
@@ -293,7 +270,7 @@
* @param cmd
* command
*/
- public String executeCommand(String cmd) {
+ public String executeCommand(String cmd) throws PerfSONARException {
String result = "";
@@ -384,12 +361,14 @@
logger.error("[SshKeyManager][ExecuteCommand]" +
e.getMessage());
for (int i = 0; i < e.getStackTrace().length; i++)
logger.error("[SshManager][ExecuteCommand]" +
e.getStackTrace()[i].toString());
- return "An Error Occured";
+ throw new PerfSONARException("error.mp.sshtelnet.command",
e.getMessage(), e);
+ //return "An Error Occured";
} catch (IOException e) {
logger.error("[SshKeyManager][ExecuteCommand]" +
e.getMessage());
for (int i = 0; i < e.getStackTrace().length; i++)
logger.error("[SshManager][ExecuteCommand]" +
e.getStackTrace()[i].toString());
- return "An Error Occured";
+ //return "An Error Occured";
+ throw new PerfSONARException("error.mp.sshtelnet.command",
e.getMessage(), e);
}
}// executeCommand
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshManager.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshManager.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/ssh/SshManager.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -16,10 +16,8 @@
import javax.crypto.Cipher;
import javax.swing.SwingUtilities;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import org.perfsonar.service.measurementPoint.remote.common.RemoteManager;
import com.jcraft.jsch.Channel;
@@ -48,7 +46,7 @@
private String userName = null;
private String password = null;
private int port = 0;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(SshManager.class);
private boolean connected = false;
private int timeout = 0;
@@ -65,17 +63,6 @@
ui = new MyUserInfo(password);
-
- try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
- } catch (PerfSONARException e1) {
-
- logger.error("[SshManager][Constructor]" +
e1.getStackTrace()[0].toString());
-
- }
-
if (connect) {
try {
@@ -213,7 +200,7 @@
* @param cmd
* command
*/
- public String executeCommand(String cmd) {
+ public String executeCommand(String cmd) throws PerfSONARException {
String result = "";
@@ -302,17 +289,20 @@
logger.error("[SshManager][ExecuteCommand] JSchException: " +
e.getMessage());
for (int i = 0; i < e.getStackTrace().length; i++)
logger.error("[SshManager][ExecuteCommand]" +
e.getStackTrace()[i].toString());
- return "An Error Occured";
+ //return "An Error Occured";
+ throw new PerfSONARException("error.mp.sshtelnet.command",
e.getMessage(), e);
} catch (IOException e) {
logger.error("[SshManager][ExecuteCommand] IOException: " +
e.getMessage());
for (int i = 0; i < e.getStackTrace().length; i++)
logger.error("[SshManager][ExecuteCommand]" +
e.getStackTrace()[i].toString());
- return "An Error Occured";
+ //return "An Error Occured";
+ throw new PerfSONARException("error.mp.sshtelnet.command",
e.getMessage(), e);
} catch (Exception t){
logger.error("[SshManager][ExecuteCommand] Exception: " +
t.getMessage());
for (int i = 0; i < t.getStackTrace().length; i++)
logger.error("[SshManager][ExecuteCommand]" +
t.getStackTrace()[i].toString());
- return "An Error Occured";
+ //return "An Error Occured";
+ throw new PerfSONARException("error.mp.sshtelnet.command",
t.getMessage(), t);
}
}// executeCommand
Modified:
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/telnet/TelnetManager.java
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/telnet/TelnetManager.java
2010-08-17 17:00:16 UTC (rev 5723)
+++
trunk/geant2_java-sshtelnet-mp/src/main/java/org/perfsonar/service/measurementPoint/remote/telnet/TelnetManager.java
2010-08-17 17:11:46 UTC (rev 5724)
@@ -9,10 +9,8 @@
import javax.swing.SwingUtilities;
-import org.perfsonar.base.auxiliary.AuxiliaryComponentManager;
-import org.perfsonar.base.auxiliary.ComponentNames;
-import org.perfsonar.base.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.base.exceptions.PerfSONARException;
+import org.apache.log4j.Logger;
+import org.perfsonar.base2.service.exceptions.PerfSONARException;
import org.perfsonar.service.measurementPoint.remote.common.RemoteManager;
import de.mud.telnet.TelnetWrapper;
@@ -33,7 +31,7 @@
private String url = null;
private int port = -1;
private String prompt = null;
- private LoggerComponent logger = null;
+ private Logger logger = Logger.getLogger(TelnetManager.class);
private boolean connected = false;
private int timeout = 0;
@@ -45,16 +43,6 @@
this.port = port;
this.timeout = timeout;
- try {
-
- logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance().getComponent(ComponentNames.LOGGER);
-
- } catch (PerfSONARException e1) {
-
- logger.error("[TELNETMANAGER][Constructor]" +
e1.getStackTrace()[0].toString());
-
- }
-
if (connect) {
logger.debug("[TelnetManager] Trying to connect ...");
@@ -82,7 +70,7 @@
}
// ---------------------- public methods
- public void connect() {
+ public void connect() throws PerfSONARException {
logger.debug("[TelnetManager] Trying to connect ... ");
@@ -104,12 +92,12 @@
logger.error("[TelnetManager] Connection failed");
logger.error("[TelnetManager] " +
e.getStackTrace()[0].toString());
-
+ throw new PerfSONARException("Connection failed to " + url + "
on port " + port, e);
}
}//connect
- public void connect(String userName, String loginPrompt, String passwd,
String passwdPrompt) {
+ public void connect(String userName, String loginPrompt, String passwd,
String passwdPrompt) throws PerfSONARException {
logger.debug("[TelnetManager] Trying to connect ... ");
@@ -138,6 +126,7 @@
logger.error("[TelnetManager] Connection failed");
logger.error("[TelnetManager] " +
e.getStackTrace()[0].toString());
+ throw new PerfSONARException("Connection failed to " + url + "
on port " + port, e);
}
@@ -175,7 +164,7 @@
* @param command
* @return String Output from the process
*/
- public String executeCommand(String command) {
+ public String executeCommand(String command) throws PerfSONARException {
logger.debug("[TelnetManager] Executing command");
@@ -230,9 +219,10 @@
} catch (IOException e) {
logger.error("[TelnetManager][ExecuteCommand]" +
e.toString() + ": " + e.getStackTrace()[0].toString());
- logger.debug("[TelnetManager][ExecuteCommand]TimeOut!");
- return " A timeout has occured!";
+ //logger.debug("[TelnetManager][ExecuteCommand]TimeOut!");
+ //return " A timeout has occured!";
+ throw new PerfSONARException("error.mp.sshtelnet.command",
e.getMessage(), e);
}
}//connected
Added: trunk/geant2_java-sshtelnet-mp/src/main/resources/log4j.xml
===================================================================
--- trunk/geant2_java-sshtelnet-mp/src/main/resources/log4j.xml
(rev 0)
+++ trunk/geant2_java-sshtelnet-mp/src/main/resources/log4j.xml 2010-08-17
17:11:46 UTC (rev 5724)
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!-- FIXME if doctype is set the web admin crashes
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+-->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
+ <appender name="out" class="org.apache.log4j.RollingFileAppender">
+ <!-- The maximum size the log file can reach before it replaces the
oldest backup file and a new log file is started. -->
+ <param name="MaxFileSize" value="500KB"/>
+ <!-- The maximum number of backup log files to create. -->
+ <param name="MaxBackupIndex" value="11"/>
+ <!-- The path to the log file, including the log file's name. -->
+ <param name="File" value="${logger.path}/${project.artifactId}.log" />
+ <!-- The log message format.
+ For more information see
http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
-->
+ <layout class="org.apache.log4j.PatternLayout">
+ <param name="ConversionPattern" value="%d %%${project.artifactId}.%p%%
%m%n"/>
+ </layout>
+ </appender>
+
+ <!-- Logs for the service code -->
+ <category name="org.perfsonar" additivity="false">
+ <level value="info" />
+ <appender-ref ref="out" />
+ </category>
+
+ <!-- Logs for the libraries that the service uses -->
+ <root>
+ <priority value="info" />
+ <appender-ref ref="out" />
+ </root>
+</log4j:configuration>
Added:
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,133 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<configuration xmlns="http://service.perfsonar.org/ns/config/base/0.9/">
+ <service name="sshtelnet-mp">
+ <lookupInformation>
+ <option name="accessPoint"
value="http://localhost:${tomcat.port}/${project.artifactId}/services/SSHTelnet"/>
+ <option name="serviceName" value="Geant3 JAVA - SSHTelnet MP"/>
+ <option name="serviceType" value="MP"/>
+ </lookupInformation>
+
+ <!-- Message Handlers - message types and service engines -->
+
+ <messageHandler>
+
+ <message type="EchoRequest"
+
handler="org.perfsonar.base2.service.messages.GenericMessageHandler">
+ <option name="ServiceEngine"
+
value="org.perfsonar.service.measurementPoint.EchoServiceEngine" />
+ <option name="authN" value="no" />
+ </message>
+
+ <message type="MetadataKeyRequest"
+
handler="org.perfsonar.base2.service.messages.GenericMessageHandler">
+ <option name="ServiceEngine"
+
value="org.perfsonar.service.measurementPoint.ServiceCapabilitiesEngine" />
+ <option name="authN" value="no" />
+ </message>
+
+ <message type="SetupDataRequest"
+
handler="org.perfsonar.base2.service.messages.GenericMessageHandler">
+ <option name="ServiceEngine"
+
value="org.perfsonar.service.measurementPoint.SetupDataServiceEngine" />
+ <option name="authN" value="no" />
+ </message>
+
+ </messageHandler>
+
+ <!-- Additional auxiliary components -->
+
+ <auxiliaryComponents>
+ <component name="migrator"
className="org.perfsonar.base2.service.configuration.migration.MigratorComponent">
+ <option name="config-directory" value="${old-config-directory}" />
+ </component>
+ <component name="XMLDB"
className="org.perfsonar.base2.service.storage.xml.XMLDBComponent">
+ <option name="dataStorageClassName"
value="org.perfsonar.base2.service.storage.xml.exist.ExistHTTPDataStorage" />
+ <option name="uri"
value="http://localhost:${tomcat.port}/exist/rest/db"/>
+ <option name="username" value="sshtelnet"/>
+ <option name="password" value="sshtelnet"/>
+ </component>
+
+ <component name="Configuration"
className="org.perfsonar.service.measurementPoint.Configuration">
+ <option name="metadata-file"
value="${config.path}/sshtelnetmetadata.xml" />
+ <option name="token-path" value="${token.path}" />
+ </component>
+
+ <!-- auth configuration -->
+ <component name="auth"
className="org.perfsonar.base2.service.authn.component.wssec.WSSecAuthNComponent">
+ <option name="as_endpoint"
value="http://homer.rediris.es:8080/geant2-java-as-1.2/services/SimpleService"/>
+ <option name="comp_id" value="urn:compId"/>
+ </component>
+
+ <!-- Scheduler -->
+ <component name="scheduling"
className="org.perfsonar.base2.service.scheduler.SchedulingComponent">
+ <option name="schedulerClassName"
value="org.perfsonar.base2.service.scheduler.SimpleScheduler"/>
+ <option name="interval" value="60"/>
+
+ <actions>
+ <action name="registration"
className="org.perfsonar.base2.service.registration.LSRegistrationAction">
+ <option name="status" value="on" />
+ <option name="interval" value="600" />
+ <option name="registerDataSource"
value="org.perfsonar.base2.service.registration.MetadataExistDBRegisterDataSource"/>
+ <option name="registerEventType"
value="http://ogf.org/ns/nmwg/tools/org/perfsonar/service/lookup/registration/summary/2.0"/>
+ <option name="registrator"
value="org.perfsonar.base2.service.registration.GenericLSRegistrator"/>
+ <option name="lsAddress-1"
value="http://localhost:8080/geant2-java-xml-ls/services/LookupService"/>
+ <option name="lsAddress-2"
value="http://localhost:8380/perfsonar-java-xml-ls/services/LookupService"/>
+ </action>
+
+ <!-- Checks whether a given metadata file has changed and updates
it in the database.
+ If the given metadata file is not stored in the database it
is added. -->
+ <action name="metadata-updater"
className="org.perfsonar.service.measurementPoint.MetadataUpdater">
+ <!-- Should the user configured in the "Configuration" section
be created if it does not exist -->
+ <option name="create-user" value="yes" />
+
+ <!-- login and password for the user that has rights to create
user accounts. Obligatory only when "create-user" option is set to "yes" -->
+ <option name="username" value="admin" />
+ <option name="password" value="" />
+ </action>
+ </actions>
+ </component>
+ </auxiliaryComponents>
+
+ <extension name="registerExtension-registerDataSource">
+ <option name="exist-config" value="XMLDB" />
+ </extension>
+
+ <!--
....................................................................................
-->
+
+ <!-- Protocol mappings, XML elements and their bingings -->
+
+ <protocolMappings>
+
+
+ <!-- default mapping -->
+
+
+ <!-- general mappings -->
+ <element name="{*}message"
+ mapping="org.perfsonar.base2.xml.nmwg.Message"/>
+ <element name="{*}metadata"
+ mapping="org.perfsonar.base2.xml.nmwg.Metadata"/>
+ <element name="{*}eventType"
+ mapping="org.perfsonar.base2.xml.nmwg.EventType"/>
+ <element name="{*}data"
+ mapping="org.perfsonar.base2.xml.nmwg.Data"/>
+ <element name="{*}subject"
+ mapping="org.perfsonar.base2.xml.nmwg.Subject"/>
+ <element name="{*}parameters"
+ mapping="org.perfsonar.base2.xml.nmwg.Parameters"/>
+ <element name="{*}parameter"
+ mapping="org.perfsonar.base2.xml.nmwg.Parameter"/>
+ <element name="*"
+ mapping="org.perfsonar.base2.xml.Element"/>
+ <element
name="{http://ggf.org/ns/nmwg/tools/org/perfsonar/service/lookup/xquery/1.0/}subject"
+ mapping="org.perfsonar.base2.xml.TextElement"/>
+
+
+ </protocolMappings>
+
+
+ </service>
+
+
+</configuration>
Added:
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml.template
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml.template
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/configuration.xml.template
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,133 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<configuration xmlns="http://service.perfsonar.org/ns/config/base/0.9/">
+ <service name="sshtelnet-mp">
+ <lookupInformation>
+ <option name="accessPoint" value="${service.r.access_point}"/>
+ <option name="serviceName" value="${service.r.service_name}"/>
+ <option name="serviceType" value="${service.r.service_type}"/>
+ </lookupInformation>
+
+ <!-- Message Handlers - message types and service engines -->
+
+ <messageHandler>
+
+ <message type="EchoRequest"
+
handler="org.perfsonar.base2.service.messages.GenericMessageHandler">
+ <option name="ServiceEngine"
+
value="org.perfsonar.service.measurementPoint.EchoServiceEngine" />
+ <option name="authN" value="no" />
+ </message>
+
+ <message type="MetadataKeyRequest"
+
handler="org.perfsonar.base2.service.messages.GenericMessageHandler">
+ <option name="ServiceEngine"
+
value="org.perfsonar.service.measurementPoint.ServiceCapabilitiesEngine" />
+ <option name="authN" value="no" />
+ </message>
+
+ <message type="SetupDataRequest"
+
handler="org.perfsonar.base2.service.messages.GenericMessageHandler">
+ <option name="ServiceEngine"
+
value="org.perfsonar.service.measurementPoint.SetupDataServiceEngine" />
+ <option name="authN" value="no" />
+ </message>
+
+ </messageHandler>
+
+ <!-- Additional auxiliary components -->
+
+ <auxiliaryComponents>
+ <component name="migrator"
className="org.perfsonar.base2.service.configuration.migration.MigratorComponent">
+ <option name="config-directory" value="${old-config-directory}" />
+ </component>
+ <component name="XMLDB"
className="org.perfsonar.base2.service.storage.xml.XMLDBComponent">
+ <option name="dataStorageClassName"
value="org.perfsonar.base2.service.storage.xml.exist.ExistHTTPDataStorage" />
+ <option name="uri" value="#replace(string
"${component.mp.xmldb.db_uri}" regexp "xmldb:exist://(.+)/xmlrpc/db(.*)" with
"http://$1/rest/db$2")"/>
+ <option name="username"
value="${component.mp.xmldb.db_username}"/>
+ <option name="password"
value="${component.mp.xmldb.db_password}"/>
+ </component>
+
+ <component name="Configuration"
className="org.perfsonar.service.measurementPoint.Configuration">
+ <option name="metadata-file"
value="${component.mp.xmldb.metadata_file_path}" />
+ <option name="token-path" value="${service.mp.tokenPath}" />
+ </component>
+
+ <!-- auth configuration -->
+ <component name="auth"
className="org.perfsonar.base2.service.authn.component.wssec.WSSecAuthNComponent">
+ <option name="as_endpoint" value="${service.as.point}"/>
+ <option name="comp_id" value="urn:compId"/>
+ </component>
+
+ <!-- Scheduler -->
+ <component name="scheduling"
className="org.perfsonar.base2.service.scheduler.SchedulingComponent">
+ <option name="schedulerClassName"
value="org.perfsonar.base2.service.scheduler.SimpleScheduler"/>
+ <option name="interval" value="60"/>
+
+ <actions>
+ <action name="registration"
className="org.perfsonar.base2.service.registration.LSRegistrationAction">
+ <option name="status" value="on" />
+ <option name="interval"
value="${component.registrator.interval}" />
+ <option name="registerDataSource"
value="org.perfsonar.base2.service.registration.MetadataExistDBRegisterDataSource"/>
+ <option name="registerEventType"
value="http://ogf.org/ns/nmwg/tools/org/perfsonar/service/lookup/registration/summary/2.0"/>
+ <option name="registrator"
value="org.perfsonar.base2.service.registration.GenericLSRegistrator"/>
+#for(var lsAddress string "${service.r.ls_url}" split ",")
+ <option name="lsAddress-#indexer()" value="${lsAddress}" />#end()
+ </action>
+
+ <!-- Checks whether a given metadata file has changed and updates
it in the database.
+ If the given metadata file is not stored in the database it
is added. -->
+ <action name="metadata-updater"
className="org.perfsonar.service.measurementPoint.MetadataUpdater">
+ <!-- Should the user configured in the "Configuration" section
be created if it does not exist -->
+ <option name="create-user" value="yes" />
+
+ <!-- login and password for the user that has rights to create
user accounts. Obligatory only when "create-user" option is set to "yes" -->
+ <option name="username" value="admin" />
+ <option name="password"
value="${component.mp.xmldb.db_adminpassword}" />
+ </action>
+ </actions>
+ </component>
+ </auxiliaryComponents>
+
+ <extension name="registerExtension-registerDataSource">
+ <option name="exist-config" value="XMLDB" />
+ </extension>
+
+ <!--
....................................................................................
-->
+
+ <!-- Protocol mappings, XML elements and their bingings -->
+
+ <protocolMappings>
+
+
+ <!-- default mapping -->
+
+
+ <!-- general mappings -->
+ <element name="{*}message"
+ mapping="org.perfsonar.base2.xml.nmwg.Message"/>
+ <element name="{*}metadata"
+ mapping="org.perfsonar.base2.xml.nmwg.Metadata"/>
+ <element name="{*}eventType"
+ mapping="org.perfsonar.base2.xml.nmwg.EventType"/>
+ <element name="{*}data"
+ mapping="org.perfsonar.base2.xml.nmwg.Data"/>
+ <element name="{*}subject"
+ mapping="org.perfsonar.base2.xml.nmwg.Subject"/>
+ <element name="{*}parameters"
+ mapping="org.perfsonar.base2.xml.nmwg.Parameters"/>
+ <element name="{*}parameter"
+ mapping="org.perfsonar.base2.xml.nmwg.Parameter"/>
+ <element name="*"
+ mapping="org.perfsonar.base2.xml.Element"/>
+ <element
name="{http://ggf.org/ns/nmwg/tools/org/perfsonar/service/lookup/xquery/1.0/}subject"
+ mapping="org.perfsonar.base2.xml.TextElement"/>
+
+
+ </protocolMappings>
+
+
+ </service>
+
+
+</configuration>
Added:
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/sshtelnetmetadata.xml
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/sshtelnetmetadata.xml
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/sshtelnetmetadata.xml
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nmwg:store xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/">
+
+<!-- Empty metadata file. -->
+
+</nmwg:store>
+
Added:
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/webAdminConfig.xml
===================================================================
---
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/webAdminConfig.xml
(rev 0)
+++
trunk/geant2_java-sshtelnet-mp/src/main/resources/perfsonar/conf/webAdminConfig.xml
2010-08-17 17:11:46 UTC (rev 5724)
@@ -0,0 +1,337 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<wa:interface
+ xmlns:wa="http://webadmin.perfsonar.org/base2/waschema/v20090201">
+
+ <!-- service information cosists of name nad version (only for
displaying purpose) and accessPoint - selfTest -->
+ <wa:serviceInformation>
+
<wa:accessPoint>http://localhost:${tomcat.port}/${project.artifactId}/services/SSHTelnet</wa:accessPoint>
+ <wa:serviceName>${project.name}</wa:serviceName>
+ <wa:version>${project.version}</wa:version>
+ </wa:serviceInformation>
+
+ <!-- credential for WA -->
+ <wa:credential>
+ <wa:username>perfsonaruser</wa:username>
+ <wa:password>perfsonarpass</wa:password>
+ </wa:credential>
+
+ <wa:basiclink>
+ <wa:pageId>basic</wa:pageId> <!-- page identifier -->
+ <wa:title>Service settings</wa:title>
+ </wa:basiclink>
+
+ <wa:basiclink>
+ <wa:pageId>changePassword</wa:pageId> <!-- page identifier -->
+ <wa:title>Change WA password</wa:title>
+ </wa:basiclink>
+
+ <wa:advancedlink>
+ <wa:pageId>advanced</wa:pageId> <!-- page identifier -->
+ <wa:title>Advanced Service Settings</wa:title>
+ </wa:advancedlink>
+
+ <wa:advancedlink>
+ <wa:pageId>logging</wa:pageId> <!-- page identifier -->
+ <wa:title>Logging Settings</wa:title>
+ </wa:advancedlink>
+
+ <wa:advancedlink>
+ <wa:redirectTo>/exist/admin/admin.xql</wa:redirectTo>
+ <wa:title>Exist configuration</wa:title>
+ </wa:advancedlink>
+
+ <wa:map>
+
<wa:url>http://service.perfsonar.org/ns/config/base/0.9/</wa:url>
+ <wa:ns>ns1</wa:ns>
+ </wa:map>
+
+ <wa:map>
+
<wa:url>http://webadmin.perfsonar.org/base2/waschema/v20090201</wa:url>
+ <wa:ns>webAdmin</wa:ns>
+ </wa:map>
+
+ <wa:map>
+ <wa:url>http://jakarta.apache.org/log4j/</wa:url>
+ <wa:ns>log4j</wa:ns>
+ </wa:map>
+
+ <wa:page>
+ <wa:pageId><wa:text>changePassword</wa:text></wa:pageId>
+ <wa:title><wa:text>Change Password</wa:text></wa:title>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/webAdminConfig.xml")//webAdmin:interface/webAdmin:credential/webAdmin:username
+ </wa:xpath>
+ </wa:default>
+
<wa:title><wa:text>username</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:password>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/webAdminConfig.xml")//webAdmin:interface/webAdmin:credential/webAdmin:password
+ </wa:xpath>
+ </wa:default>
+
<wa:title><wa:text>password</wa:text></wa:title>
+ </wa:password>
+ </wa:plain>
+ </wa:page>
+
+ <wa:page>
+ <wa:pageId><wa:text>basic</wa:text></wa:pageId>
+ <wa:title><wa:text>Basic service settings</wa:text></wa:title>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:lookupInformation/ns1:option[@name="accessPoint"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Access
point</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:lookupInformation/ns1:option[@name="serviceName"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Service
name</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:lookupInformation/ns1:option[@name="serviceType"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Service
type</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:radio>
+ <wa:default>
+
<wa:xpath>doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="scheduling"]/ns1:actions/ns1:action[@name="registration"]/ns1:option[@name="status"]/@value</wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>LS
registration</wa:text></wa:title>
+
<wa:values><wa:text>on,off</wa:text></wa:values>
+ </wa:radio>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+
<wa:xpath>doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="scheduling"]/ns1:actions/ns1:action[@name="registration"]/ns1:option[@name="lsAddress-1"]/@value</wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Lookup Service
url</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+
+
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="XMLDB"]/ns1:option[@name="uri"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Exist DB
uri</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="XMLDB"]/ns1:option[@name="username"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Exist DB
username</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+
+ <wa:plain>
+ <wa:password>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="XMLDB"]/ns1:option[@name="password"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Exist DB
password</wa:text></wa:title>
+ </wa:password>
+ </wa:plain>
+
+ <wa:plain>
+ <wa:radio>
+ <wa:default>
+
<wa:xpath>doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="scheduling"]/ns1:actions/ns1:action[@name="metadata-updater"]/ns1:option[@name="create-user"]/@value</wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Create
user?</wa:text></wa:title>
+
<wa:values><wa:text>yes,no</wa:text></wa:values>
+ </wa:radio>
+ </wa:plain>
+
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+
<wa:xpath>doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="scheduling"]/ns1:actions/ns1:action[@name="metadata-updater"]/ns1:option[@name="username"]/@value</wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Exist DB administrator
username</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+
+ <wa:plain>
+ <wa:password>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="scheduling"]/ns1:actions/ns1:action[@name="metadata-updater"]/ns1:option[@name="password"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Exist DB administrator
password</wa:text></wa:title>
+ </wa:password>
+ </wa:plain>
+
+ </wa:page>
+
+ <wa:page>
+ <wa:pageId><wa:text>advanced</wa:text></wa:pageId>
+ <wa:title><wa:text>Advanced Service
Settings</wa:text></wa:title>
+
+ <wa:plain>
+ <wa:radio>
+ <wa:default>
+
<wa:xpath>doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:messageHandler/ns1:message[@type="EchoRequest"]/ns1:option[@name="authN"]/@value</wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>EchoRequest
Authentication?</wa:text></wa:title>
+
<wa:values><wa:text>yes,no</wa:text></wa:values>
+ </wa:radio>
+ </wa:plain>
+
+ <wa:plain>
+ <wa:radio>
+ <wa:default>
+
<wa:xpath>doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:messageHandler/ns1:message[@type="MetadataKeyRequest"]/ns1:option[@name="authN"]/@value</wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>MetadataKeyRequest
Authentication?</wa:text></wa:title>
+
<wa:values><wa:text>yes,no</wa:text></wa:values>
+ </wa:radio>
+ </wa:plain>
+
+ <wa:plain>
+ <wa:radio>
+ <wa:default>
+
<wa:xpath>doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:messageHandler/ns1:message[@type="SetupDataRequest"]/ns1:option[@name="authN"]/@value</wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>SetupDataRequest
Authentication?</wa:text></wa:title>
+
<wa:values><wa:text>yes,no</wa:text></wa:values>
+ </wa:radio>
+ </wa:plain>
+
+
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="auth"]/ns1:option[@name="as_endpoint"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Authentication Service
endpoint</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="Configuration"]/ns1:option[@name="metadata-file"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Metadata file (with full
path)</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="Configuration"]/ns1:option[@name="token-path"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Token
path</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+
+
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/perfsonar/conf/configuration.xml")//ns1:configuration/ns1:service[@name="sshtelnet-mp"]/ns1:auxiliaryComponents/ns1:component[@name="scheduling"]/ns1:actions/ns1:action[@name="registration"]/ns1:option[@name="interval"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Lookup Service
registration interval (in seconds)</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+
+ </wa:page>
+
+ <wa:page>
+ <wa:pageId><wa:text>logging</wa:text></wa:pageId>
+ <wa:title><wa:text>Logging Settings</wa:text></wa:title>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/log4j.xml")/log4j:configuration/appender[@name="out"]/param[@name="File"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>The path to the log file,
including the log file's name</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/log4j.xml")/log4j:configuration/appender[@name="out"]/param[@name="MaxFileSize"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>The maximum size the log
file can reach before it replaces the oldest backup file and a new log file
is started</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:textbox>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/log4j.xml")/log4j:configuration/appender[@name="out"]/param[@name="MaxBackupIndex"]/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>The maximum number of
backup log files to create</wa:text></wa:title>
+ </wa:textbox>
+ </wa:plain>
+ <wa:plain>
+ <wa:dropdown>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/log4j.xml")/log4j:configuration/category[@name="org.perfsonar"]/level/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Log level for the
service</wa:text></wa:title>
+
<wa:values><wa:text>all,debug,info,warn,error,fatal,off</wa:text></wa:values>
+ </wa:dropdown>
+ </wa:plain>
+ <wa:plain>
+ <wa:dropdown>
+ <wa:default>
+ <wa:xpath>
+
doc("classes/log4j.xml")/log4j:configuration/root/priority/@value
+ </wa:xpath>
+ </wa:default>
+ <wa:title><wa:text>Log level for the
libraries used by the service</wa:text></wa:title>
+
<wa:values><wa:text>all,debug,info,warn,error,fatal,off</wa:text></wa:values>
+ </wa:dropdown>
+ </wa:plain>
+ </wa:page>
+</wa:interface>
- [pS-dev] [GEANT/SA2/ps-java-services] r5724 - in trunk/geant2_java-sshtelnet-mp: contrib/metadata_ configuration_tools/Configuration_Tool src/main src/ma in/java/org/perfsonar/service/measurementPoint src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType src/main/java/org/perfsonar/service/measurementPoint/look ingGlassType/bgp src/main/java/org/perfsonar/service/measu rementPoint/lookingGlassType/bgp/adapters src/main/java/or g/perfsonar/service/measurementPoint/lookingGlassType/encr yption src/main/java/org/perfsonar/service/measurementPoin t/lookingGlassType/engine/adapters src/main/java/org/perfs onar/service/measurementPoint/lookingGlassType/engine/comm ands src/main/java/org/perfsonar/service/measurementPoint/ lookingGlassType/internalChecks src/main/java/org/perfsona r/service/measurementPoint/lookingGlassType/ip src/main/ja va/org/perfsonar/service/measurementPoint/lookingGlassType /ip/adapters src/main/java/org/perfsonar/service/measureme ntPoint/lookingGlassType/i pv6 src/main/java/org/perfsonar /service/measurementPoint/lookingGlassType/ipv6/adapters s rc/main/java/org/perfsonar/service/measurementPoint/lookin gGlassType/metadata src/main/java/org/perfsonar/service/me asurementPoint/lookingGlassType/status src/main/java/org/p erfsonar/service/measurementPoint/lookingGlassType/status/ adapters src/main/java/org/perfsonar/service/measurementPo int/remote/common src/main/java/org/perfsonar/service/meas urementPoint/remote/ssh src/main/java/org/perfsonar/servic e/measurementPoint/remote/telnet src/main/resources src/ma in/resources/perfsonar src/main/resources/perfsonar/conf, svn-noreply, 08/17/2010
Archive powered by MHonArc 2.6.16.