Skip to Content.
Sympa Menu

perfsonar-dev - r1970 - in trunk/perfsonar: ant ant/tops conf schema/example-instances/perfSONAR/TOPS/test src/org/perfsonar/commons/messages src/org/perfsonar/service/commons/engine src/org/perfsonar/service/topologyService

Subject: perfsonar development work

List archive

r1970 - in trunk/perfsonar: ant ant/tops conf schema/example-instances/perfSONAR/TOPS/test src/org/perfsonar/commons/messages src/org/perfsonar/service/commons/engine src/org/perfsonar/service/topologyService


Chronological Thread 
  • From:
  • To:
  • Subject: r1970 - in trunk/perfsonar: ant ant/tops conf schema/example-instances/perfSONAR/TOPS/test src/org/perfsonar/commons/messages src/org/perfsonar/service/commons/engine src/org/perfsonar/service/topologyService
  • Date: Wed, 24 Jan 2007 10:57:09 -0500

Author: rodriguez
Date: 2007-01-24 10:57:08 -0500 (Wed, 24 Jan 2007)
New Revision: 1970

Added:
trunk/perfsonar/ant/tops/tops-configure-targets.xml
trunk/perfsonar/ant/tops/tops-pre-install-targets.xml
trunk/perfsonar/ant/tops/tops-release-targets.xml
trunk/perfsonar/conf/TOPSRegisterRequest.xml
trunk/perfsonar/conf/interfaces-description.xml

trunk/perfsonar/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadRequest.xml
trunk/perfsonar/src/org/perfsonar/commons/messages/SetupDataDBRequest.java

trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsDownloadAction.java
Removed:

trunk/perfsonar/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadDBRequest.xml

trunk/perfsonar/src/org/perfsonar/commons/messages/TOPSDownloadDBRequest.java

trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsDownloadDBAction.java
Modified:
trunk/perfsonar/ant/build-tops.xml
trunk/perfsonar/ant/tops/tops-axis-deploy-targets.xml
trunk/perfsonar/ant/tops/tops-client-run-targets.xml
trunk/perfsonar/ant/tops/tops-java-compile-targets.xml
trunk/perfsonar/ant/tops/tops-libs-download-targets.xml
trunk/perfsonar/ant/tops/tops-test-run-targets.xml
trunk/perfsonar/conf/components.properties.tops
trunk/perfsonar/conf/service.properties.tops
trunk/perfsonar/src/org/perfsonar/service/commons/engine/ActionType.java

trunk/perfsonar/src/org/perfsonar/service/topologyService/TopServiceEngine.java
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsAction.java

trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsJDBCComponent.java

trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsLSRegistrationComponent.java
Log:
Update the topology service

Modified: trunk/perfsonar/ant/build-tops.xml
===================================================================
--- trunk/perfsonar/ant/build-tops.xml 2007-01-24 14:53:57 UTC (rev 1969)
+++ trunk/perfsonar/ant/build-tops.xml 2007-01-24 15:57:08 UTC (rev 1970)
@@ -1,28 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-
-
-<!-- ===================================================================
- <description>
- perfSONAR generic service
-
- $Id: build-sqlma.xml 1390 2006-07-06 10:33:52Z roman $
- project: perfSONAR
- author: romradz, modofied by ulisses for the topology service
-
- Notes:
- This is a build file for Topology Service.
-
- </description>
- ==================================================================== -->
-
-
-
<project basedir="../" default="compile-tops" name="perfsonar-tops">
-
-
<property file="ant/const.properties" />

-
<path id="classpath">
<fileset dir="./lib">
<include name="**/*.jar"/>
@@ -30,31 +9,25 @@
<pathelement location="build"/>
</path>

-
<target name="init">
<tstamp/>
</target>

-
-
<!-- general imports -->
-
<import file="configure-targets.xml"/>
<import file="javadoc-targets.xml"/>
- <import file="webservice-env-targets.xml"/>
+ <import file="pre-install-targets.xml"/>
<import file="java-compile-targets.xml"/>
<import file="axis-deploy-targets.xml"/>
<import file="libs-download-targets.xml"/>

- <!-- dependencies -->
-
-
<!-- TOPS imports -->
-
- <import file="tops/tops-java-compile-targets.xml"/>
<import file="tops/tops-axis-deploy-targets.xml"/>
- <import file="tops/tops-client-run-targets.xml"/>
- <import file="tops/tops-test-run-targets.xml"/>
+ <import file="tops/tops-configure-targets.xml"/>
+ <import file="tops/tops-pre-install-targets.xml"/>
<import file="tops/tops-libs-download-targets.xml"/>
-
+ <import file="tops/tops-test-run-targets.xml"/>
+ <import file="tops/tops-client-run-targets.xml"/>
+ <import file="tops/tops-java-compile-targets.xml"/>
+ <import file="tops/tops-release-targets.xml"/>
</project>
\ No newline at end of file

Modified: trunk/perfsonar/ant/tops/tops-axis-deploy-targets.xml
===================================================================
--- trunk/perfsonar/ant/tops/tops-axis-deploy-targets.xml 2007-01-24
14:53:57 UTC (rev 1969)
+++ trunk/perfsonar/ant/tops/tops-axis-deploy-targets.xml 2007-01-24
15:57:08 UTC (rev 1970)
@@ -1,11 +1,9 @@
-
-
<!-- ===================================================================
<description>

- $Id: xmlls-axis-deploy-targets.xml,v 1.2 2006/04/07 10:19:12 mac Exp $
+ $Id: tops-axis-deploy-targets.xml,v 1.2 2006/12/20 10:19:12 kan Exp $
project: perfSONAR
- author: mac
+ author: kan

Notes:
A set of targets for deployment of web service in the Axis.
@@ -17,148 +15,130 @@

<project name="tops-axis-deploy-targets">

+ <target name="copy-jars-for-tops" depends="copy-jars-for-service">

- <taskdef resource="axis-tasks.properties" classpathref="classpath" />
+ <copy
file="./lib/repository/postgresql/postgresql/8.1-407.jdbc3/postgresql-8.1-407.jdbc3.jar"
todir="${service.home}/${deploy.root}/WEB-INF/lib"/>
+ <copy
file="./lib/repository/exist/exist-xmldb/1.0rc/exist-xmldb-1.0rc.jar"
todir="${service.home}/${deploy.root}/WEB-INF/lib"/>

+ <copy file="./conf/TOPSRegisterRequest.xml"

todir="${service.home}/${deploy.root}/WEB-INF/classes/perfsonar/conf"/>
+ <copy file="./conf/interfaces-description.xml"

todir="${service.home}/${deploy.root}/WEB-INF/classes/perfsonar/conf"/>

- <!-- general -->
+ <copy file="./conf/wsdd/${wsdd.file.deploy}"

todir="${service.home}/${deploy.root}/wsdd"/>
+ <copy file="./conf/wsdd/${wsdd.file.undeploy}"

todir="${service.home}/${deploy.root}/wsdd"/>

-
- <property name="adminService"
value="http://${target.server}:${target.port}/axis/services/AdminService"; />
- <!-- <property name="deployFile"
value="../${build}/${wsdd.path}/tops-service-deploy.wsdd" /> -->
- <!-- <property name="undeployFile"
value="../${build}/${wsdd.path}/tops-service-undeploy.wsdd" /> -->
-
- <target name="copy-jars-for-tops" depends="jar-tops">
-
- <!-- this should be generic-libs' jar files -->
- <copy file="./lib/xml/jdom.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/resolver.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/xalan.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/xercesImpl.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/xercesSamples.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/xml-apis.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/xmlParserAPIs.jar"
todir="${axis.home}/WEB-INF/lib"/>
-
- <copy file="./lib/xml/commons-pool-1.1.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/xmldb.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/xml/xmlrpc-1.2-patched.jar"
todir="${axis.home}/WEB-INF/lib"/>
-
- <copy file="./lib//misc/activation.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/misc/mail.jar"
todir="${axis.home}/WEB-INF/lib"/>
- <copy file="./lib/misc/xmlsec.jar"
todir="${axis.home}/WEB-INF/lib"/>
-
- <!-- files needed to download from jars-for-tops target -->
-
- <copy
file="./lib/repository/postgresql/postgresql/8.1-407.jdbc3/postgresql-8.1-407.jdbc3.jar"
todir="${axis.home}/WEB-INF/lib"/>
-
</target>

+ <target name="delete-jars-for-tops" depends="delete-jars-for-service">
+ <delete
file="${service.home}/${deploy.root}/WEB-INF/lib/postgresql-8.1-407.jdbc3.jar"/>
+ <delete
file="${service.home}/${deploy.root}/WEB-INF/lib/exist-xmldb-1.0rc.jar" />

- <target name="delete-jars-for-tops">
+ <delete
file="${service.home}${deploy.root}/WEB-INF/classes/perfsonar/conf/TOPSRegisterRequest.xml"
/>
+ <delete
file="${service.home}/${deploy.root}/WEB-INF/classes/perfsonar/conf/interfaces-description.xml"
/>

- <delete file="${axis.home}/WEB-INF/lib/jdom.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/resolver.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xalan.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xercesImpl.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xercesSamples.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xml-apis.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xmlParserAPIs.jar"/>
-
- <delete file="${axis.home}/WEB-INF/lib/commons-pool-1.1.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xmldb.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xmlrpc-1.2-patched.jar"/>
-
- <delete file="${axis.home}/WEB-INF/lib/activation.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/mail.jar"/>
- <delete file="${axis.home}/WEB-INF/lib/xmlsec.jar"/>
-
- <!-- files needed to download from jars-for-tops target -->
-
- <delete
file="${axis.home}/WEB-INF/lib/postgresql-8.1-407.jdbc3.jar"/>
-
+ <delete
file="${service.home}/${deploy.root}/wsdd/${wsdd.file.deploy}" />
+ <delete
file="${service.home}/${deploy.root}/wsdd/${wsdd.file.undeploy}" />
</target>

+ <!-- Topology Service -->

+ <available file="${build}/perfSONAR-tops.jar"
property="jar.perfsonar.tops.present"/>

- <!-- generic -->
-
- <available file="${build}/perfSONAR-generic.jar"
property="jar.perfsonar.generic.present"/>
-
-
- <target name="does-jar-generic-exist"
unless="jar.perfsonar.generic.present">
+ <target name="does-jar-tops-exist" unless="jar.perfsonar.tops.present">
<echo>------------------------------ WARNING
---------------------------</echo>
<echo/>
- <echo>You don't have perfSONAR-generic.jar file in ${build}
directory!!!</echo>
+ <echo>You don't have perfSONAR-tops.jar file in ${build}
directory!!!</echo>
<echo/>

<echo>------------------------------------------------------------------</echo>
</target>

+ <target name="copy-tops-jar" depends="copy-generic-jar,
copy-jars-for-tops, does-jar-tops-exist"
+ if="jar.perfsonar.tops.present"
+ description="Copy tops jar to Tomcat">

- <target name="copy-generic-jar"
- depends="copy-jars-for-tops,
- does-jar-generic-exist"
- if="jar.perfsonar.generic.present"
- description="Copy generic jar to Tomcat">
+ <copy file="${build}/perfSONAR-tops.jar"
todir="${service.home}/${deploy.root}/WEB-INF/lib"/>

- <copy file="${build}/perfSONAR-generic.jar"
todir="${axis.home}/WEB-INF/lib"/>
-
</target>

+ <target name="tomcat-start-for-tops-true"
+ depends="tomcat-start-question"
+ if="tomcat.start.decision">

+ <echo>Please, insert now the following xml tag Context</echo>
+ <echo>into Tomcat configuration file server.xml</echo>
+ <echo>(${tomcat.home}/conf/server.xml)</echo>
+ <echo>inside existing xml tag Host:</echo>
+ <echo></echo>
+ <echo message=" &lt;Context path='/${deploy.root}'"/>
+ <echo message="
docBase='${service.home}/${service.name}'&gt;"/>
+ <echo message=" &lt;/Context&gt;"/>
+ <echo></echo>
+ <echo>Please, do it now. I will wait for you.</echo>
+ <input message="Press Return key ..."/>

- <!-- Topology Service -->
+ <exec dir="${tomcat.home}/bin"
+ executable="sh"
+ output="${basedir}/log/tomcat.log"
+ error="${basedir}/log/tomcat.log">
+ <arg line="startup.sh"/>
+ <env key="PATH" path="${env.PATH}:${tomcat.home}/bin:."/>
+ </exec>

- <available file="${build}/perfSONAR-tops.jar"
property="jar.perfsonar.tops.present"/>
+ <echo>Please, make sure that the Tomcat is running. Use the address
http://${target.server}:${target.port} .</echo>
+ <input message="Press Return key ..."/>

-
- <target name="does-jar-tops-exist" unless="jar.perfsonar.tops.present">
- <echo>------------------------------ WARNING
---------------------------</echo>
- <echo/>
- <echo>You don't have perfSONAR-tops.jar file in ${build}
directory!!!</echo>
- <echo/>
-
<echo>------------------------------------------------------------------</echo>
</target>

+ <target name="tomcat-start-for-tops-false"
+ unless="tomcat.start.decision">

- <target name="copy-tops-jar"
- description="Copy tops jar of Tomcat">
+ <echo>Please, insert now the following xml tag Context</echo>
+ <echo>into Tomcat configuration file server.xml</echo>
+ <echo>(${tomcat.home}/conf/server.xml)</echo>
+ <echo>inside existing xml tag Host:</echo>
+ <echo></echo>
+ <echo message=" &lt;Context path='/${deploy.root}'"/>
+ <echo message="
docBase='${service.home}/${service.name}'&gt;"/>
+ <echo message=" &lt;/Context&gt;"/>
+ <echo></echo>
+ <echo>Please, do it now. I will wait for you.</echo>
+ <input message="Press Return key ..."/>

- <copy file="${build}/perfSONAR-tops.jar"
todir="${axis.home}/WEB-INF/lib"/>
+ </target>

- <echo/>
- <echo>------------------------------ WARNING
---------------------------</echo>
- <echo/>
- <echo>Restart your application server (container of perfSONAR
service)!!!</echo>
- <echo/>
-
<echo>------------------------------------------------------------------</echo>
+ <target name="tomcat-start-for-tops"
+ depends="tomcat-start-for-tops-true,tomcat-start-for-tops-false">

</target>

+ <target name="deploy" depends="copy-tops-jar, add-context-listener"
+ description="Deploys ToS service">

- <target name="deploy-tops"
- description="Deploys Topology Service">
- <java classname="org.apache.axis.client.AdminClient">
- <arg line="-l ${adminService} ${deployFile}"/>
- <classpath refid="classpath"/>
- </java>
+ <echo>Deploying the service...</echo>
+
+ <antcall target="tomcat-start-for-tops" />
+
+ <antcall target="deploy-adminclient" />
+
</target>


- <target name="undeploy-tops"
- description="Undeploys Topology Service">
+ <target name="undeploy"
+ description="Undeploys ToS service">

- <java classname="org.apache.axis.client.AdminClient">
- <arg line="-l ${adminService} ${undeployFile}"/>
- <classpath refid="classpath"/>
- </java>
+ <echo>Undeploying the service...</echo>

- <!--- antcall target="delete-jars-for-tops"/ -->
+ <antcall target="undeploy-adminclient" />

- <!-- delete file="${axis.home}/WEB-INF/lib/perfSONAR-generic.jar" /
-->
- <delete file="${axis.home}/WEB-INF/lib/perfSONAR-tops.jar"/>
- <!-- delete file="${axis.home}/WEB-INF/lib/perfSONAR.jar"/ -->
+ <antcall target="rem-context-listener" />
+ <antcall target="delete-jars-for-tops"/>

+ <delete
file="${service.home}/${deploy.root}/WEB-INF/lib/perfSONAR-generic.jar"/>
+ <delete
file="${service.home}/${deploy.root}/WEB-INF/lib/perfSONAR-tops.jar"/>
+ <delete
file="${service.home}/${deploy.root}/WEB-INF/lib/perfSONAR.jar"/>
+
+ <antcall target="tomcat-shutdown" />
+
</target>


-</project>
+</project>
\ No newline at end of file

Modified: trunk/perfsonar/ant/tops/tops-client-run-targets.xml
===================================================================
--- trunk/perfsonar/ant/tops/tops-client-run-targets.xml 2007-01-24
14:53:57 UTC (rev 1969)
+++ trunk/perfsonar/ant/tops/tops-client-run-targets.xml 2007-01-24
15:57:08 UTC (rev 1970)
@@ -3,9 +3,8 @@
<!-- ===================================================================
<description>

- $Id: xmlls-client-run-targets.xml,v 1.2 2006/05/08 14:19:44 mac Exp $
project: perfSONAR
- author: romradz, modified by Ulisses for the Topology Service
+ author: romradz, modified by Ulisses and rodriguez for the Topology
Service

Notes: Tests the Topology Service through SOAP/Tomcat

@@ -15,37 +14,26 @@

<project name="tops-client-run-targets">

- <!-- === Targets that run SOAPClient
====================================================== -->
+ <property name="tops.local"
value="http://${target.server}:${target.port}/${deploy.root}/services/TopologyService"/>

+ <target name="run-tops-client" description="Runs Java client2">

- <!-- Sends request to Tops deployed in Tomcat, Initialize -->
- <target name="tops-initialize"
- description="Sends void message to Tomcat">
<java classname="org.perfsonar.client.testHarness.SOAPClient"
- classpathref="classpath" fork="true">
+ classpathref="classpath" fork="true">
+ <arg value="${tops.local}"/>
+ <arg
value="${basedir}/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadRequest.xml"/>
+ <arg
value="${basedir}/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadResponse.xml"/>

- <!-- arguments are: end point defined in const.properties, input
file, output file (must be specified
- even if it is not needed) -->
+ <classpath>
+ <pathelement location="build/perfSONAR-generic.jar"/>
+ </classpath>

- <arg value="${tops.test.server}"/>
- <arg
value="${basedir}/schema/example-instances/sonar/TOPS/test/Void.xml"/>
- <arg
value="${basedir}/schema/example-instances/sonar/TOPS/test/Void.xml"/>
</java>
- </target>
+
+ <echo>Test ended successfully.</echo>
+ <echo>Message used for request:
${basedir}/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadRequest.xml</echo>
+ <echo>You can check the response at:
${basedir}/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadResponse.xml</echo>

-
- <target name="tops-download-db"
- description="Sends request to Tomcat: full database download">
- <java classname="org.perfsonar.client.testHarness.SOAPClient"
- classpathref="classpath" fork="true">
-
- <!-- arguments are: end point defined in const.properties, input
file, output file (must be specified
- even if it is not needed) -->
-
- <arg value="${tops.test.server}"/>
- <arg
value="${basedir}/schema/example-instances/sonar/TOPS/test/TOPSDownloadDBRequest.xml"/>
- <arg
value="${basedir}/schema/example-instances/sonar/TOPS/test/TOPSDownloadDBResponse.xml"/>
- </java>
</target>

</project>

Added: trunk/perfsonar/ant/tops/tops-configure-targets.xml

Modified: trunk/perfsonar/ant/tops/tops-java-compile-targets.xml
===================================================================
--- trunk/perfsonar/ant/tops/tops-java-compile-targets.xml 2007-01-24
14:53:57 UTC (rev 1969)
+++ trunk/perfsonar/ant/tops/tops-java-compile-targets.xml 2007-01-24
15:57:08 UTC (rev 1970)
@@ -3,9 +3,8 @@
<!-- ===================================================================
<description>

- $Id: xmlls-java-compile-targets.xml,v 1.3 2006/05/08 14:21:27 mac Exp $
project: perfSONAR
- author: mac
+ author: rodriguez

Notes:
A set of targets for building the application.
@@ -23,72 +22,51 @@
<delete file="${build}/perfSONAR-tops.jar" failonerror="false"/>
</target>

- <target name="clean-tops-messages">
- <delete
file="${build}/org/perfsonar/commons/messages/TOPSDownloadDBRequest.class" />
- <delete
file="${build}/org/perfsonar/commons/messages/TOPSRequest.class" />
- </target>
+ <target name="compile-tops"
+ description="Compiles Java files of Topology Service">

- <target name="clean-tops" description="Removes build directories." >
- <delete dir="${build}/org/perfsonar/service/topologyService/"/>
- </target>
-
- <target name="compile-tops"
- description="Compiles Java files of Topology Service">
-
- <javac srcdir="src" destdir="${build}" deprecation="yes"
verbose="yes">
-
+ <javac srcdir="src" destdir="${build}" deprecation="yes">
<!-- tops service -->
-
<include name="org/perfsonar/service/topologyService/**" />
<include name="org/perfsonar/service/web/**" />
-
- <!-- tops client -->
-
- <!-- TODO: include
name="org/perfsonar/client/testHarness/TopsTestClient.java" / -->
-
<classpath refid="classpath"/>
-
- <compilerarg value="-Xlint:unchecked"/>
+ <compilerarg value="-Xlint:unchecked"/>
</javac>

- <copy failonerror="false"
todir="${build}/${package.root}/${wsdd.home}">
+ <copy failonerror="true"
todir="${build}/${package.root}/${wsdd.home}">
<fileset dir="src/${package.root}/${wsdd.home}">
<include name="tops-*.wsdd" />
</fileset>
</copy>
+
</target>

+ <target name="jar-tops" depends="clean-jar-tops, compile-tops"
+ description="Creates JAR file for ToS">

- <target name="jar-tops" description="Creates JAR file for Topology
Service">
<jar destfile="${build}/perfSONAR-tops.jar">
<fileset dir="${build}">
-
- <!-- tops service -->
-
<include name="org/perfsonar/service/topologyService/**" />
<include name="org/perfsonar/service/web/**" />
-
- <!-- tops client -->
-
- <!-- TODO: include
name="org/perfsonar/client/testHarness/TopsTestClient.class" / -->
-
</fileset>
</jar>
+
</target>

+ <target name="build"
+ description="Builds ToS.">

- <target name="build-tops"
- description="Builds Topology Service">
- <antcall target="clean-jar-tops"/>
- <antcall target="clean-tops"/>
- <antcall target="compile-tops"/>
+ <antcall target="clean-all"/>
+ <antcall target="jar-generic"/>
<antcall target="jar-tops"/>
- <antcall target="copy-tops-jar"/>
+
</target>




+
+
</project>



Modified: trunk/perfsonar/ant/tops/tops-libs-download-targets.xml
===================================================================
--- trunk/perfsonar/ant/tops/tops-libs-download-targets.xml 2007-01-24
14:53:57 UTC (rev 1969)
+++ trunk/perfsonar/ant/tops/tops-libs-download-targets.xml 2007-01-24
15:57:08 UTC (rev 1970)
@@ -1,31 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
-
-
-
<!-- ===================================================================
<description>

- $Id: sqlma-libs-download-targets.xml 1519 2006-08-08 14:51:08Z roman $
project: perfSONAR
- author: romradz, modified by ulisses to met tops needs
+ author: romradz, modified by ulisses and rodriguez to met tops needs

Notes: Targets to download required libraries

</description>
==================================================================== -->

-
-
-
-
<project basedir="../" name="tops-libs-download-targets"
xmlns:artifact="urn:maven-artifact-ant">

+ <target name="libs-for-tops" depends="init-libs">

+ <artifact:dependencies>
+ <dependency groupId="exist" artifactId="exist-xmldb"
version="1.0rc"/>

- <target name="libs-for-tops" depends="init-libs">
-
- <artifact:dependencies>
- <dependency groupId="postgresql" artifactId="postgresql"
version="8.1-407.jdbc3"/>
+ <dependency groupId="postgresql"
artifactId="postgresql" version="8.1-407.jdbc3"/>

<localRepository refid="local.repository"/>
<remoteRepository refid="remote.repository"/>
@@ -34,8 +26,6 @@

</target>

-
-
<target name="libs-tops">

<antcall target="libs-generic"/>
@@ -43,8 +33,4 @@

</target>

-
-</project>
-
-
-
+</project>
\ No newline at end of file

Added: trunk/perfsonar/ant/tops/tops-pre-install-targets.xml

Added: trunk/perfsonar/ant/tops/tops-release-targets.xml

Modified: trunk/perfsonar/ant/tops/tops-test-run-targets.xml
===================================================================
--- trunk/perfsonar/ant/tops/tops-test-run-targets.xml 2007-01-24 14:53:57
UTC (rev 1969)
+++ trunk/perfsonar/ant/tops/tops-test-run-targets.xml 2007-01-24 15:57:08
UTC (rev 1970)
@@ -1,36 +1,19 @@
-
-
+<?xml version="1.0" encoding="UTF-8"?>
<!-- ===================================================================
<description>

- $Id: xmlls-test-run-targets.xml 1294 2006-06-09 14:01:50Z mac $
project: perfSONAR
- author: romradz
+ author: rodriguez

- Notes: Targets to test some parts of the application
- (for exampleparsers).
-
</description>
==================================================================== -->

-
<project name="tops-test-run-targets">

+ <target name="test">

- <!-- === Targets that test TOPS functionality without Tomcat
============================= -->
+ <antcall target="run-tops-client"/>

- <!-- TESTS -->
-
-
- <target name="tops-test-query"
- description="Run TOPS pseudo Test">
- <java classname="org.perfsonar.client.testHarness.LSTestClient"
classpathref="classpath" fork="true">
- <jvmarg
value="-Dcomponents.properties=${basedir}/conf/components.properties"/>
- <jvmarg
value="-Dservice.properties=${basedir}/conf/service.properties"/>
- <arg value="query"/>
- <arg value="RequestHandler"/>
- <arg
value="${basedir}/schema/example-instances/sonar/TOPS/test/TOPSDownloadDBRequest.xml"/>
- </java>
</target>

</project>

Added: trunk/perfsonar/conf/TOPSRegisterRequest.xml

Modified: trunk/perfsonar/conf/components.properties.tops
===================================================================
--- trunk/perfsonar/conf/components.properties.tops 2007-01-24 14:53:57
UTC (rev 1969)
+++ trunk/perfsonar/conf/components.properties.tops 2007-01-24 15:57:08
UTC (rev 1970)
@@ -3,15 +3,18 @@

# --------------- Common components -----------------------------

-#Configuration component - must be the first one!
+# Configuration component - must be the first one!

config=org.perfsonar.commons.auxiliary.components.configuration.properties.PropertiesConfigurationComponent

-#Logger component - must be the second one!
+# Logger component - must be the second one!

logger=org.perfsonar.commons.auxiliary.components.logger.log4j.Log4jLoggerComponent

+scheduler=org.perfsonar.commons.auxiliary.components.simplescheduler.Scheduler
+#registrator=org.perfsonar.service.commons.registration.LSRegistrationComponent
+registrator=org.perfsonar.service.topologyService.TopsLSRegistrationComponent
# ---------------- Service specific components -------------------

-tops_scheduler=org.perfsonar.commons.auxiliary.components.simplescheduler.Scheduler
-tops-registrator=org.perfsonar.service.topologyService.TopsLSRegistrationComponent
+#tops_scheduler=org.perfsonar.commons.auxiliary.components.simplescheduler.Scheduler
+#tops-registrator=org.perfsonar.service.topologyService.TopsLSRegistrationComponent
tops-jdbc=org.perfsonar.service.topologyService.TopsJDBCComponent


Added: trunk/perfsonar/conf/interfaces-description.xml

Modified: trunk/perfsonar/conf/service.properties.tops
===================================================================
--- trunk/perfsonar/conf/service.properties.tops 2007-01-24 14:53:57
UTC (rev 1969)
+++ trunk/perfsonar/conf/service.properties.tops 2007-01-24 15:57:08
UTC (rev 1970)
@@ -2,7 +2,7 @@
##
## Service configuration file
##
-## $Id: service.properties.ls-template,v 1.1 2006/04/24 13:09:29 mac Exp $ $
+## $Id: service.properties.tops 2006/18/12 13:09:29 rodriguez $
## Project: perfSONAR
##

###############################################################################
@@ -11,69 +11,52 @@
## this parameter belongs to the lookup service information set


-## --- general service properties
--------------------------------------------------------
+## general service properties

-service.name=Lookup Service
+service.name=Topology Service

# --- directories
-------------------------------------------------------------------------
-
service.basepath=/home/ulisses/rediris/jra1/perfsonar/

service.log.log4j.config=/home/ulisses/rediris/jra1/perfsonar/conf/log4j.properties

service.sax_parser.config=/home/ulisses/rediris/jra1/perfsonar/src/objects.config

# --- registration
------------------------------------------------------------------------
-
service.r.type=tops
-service.r.access_point=http://loco4.man.poznan.pl:8090/axis/services/TopologyService
-service.r.service_name=Topology Service
-service.r.service_type=TOPS
-service.r.service_description=Topology Service, perfSONAR
-# Reference LS service
-service.r.ls_url=http://loco4.man.poznan.pl:8090/axis/services/LookupService
+service.r.location=loco4.man.poznan.pl
+service.r.description=This is Command Line MP service
+service.r.parameters=
+service.r.access_point.address=loco4.man.poznan.pl:8090/axis/services/TopologyService
+service.r.access_point.type=http
+service.r.access_point.description=test deployment
+service.r.technology=webservice
+service.r.discovery.location=
+service.r.auth_realm=RNP
+service.r.version=1.0

-# --- Lookup Service properties
--------------------------------------------------------
+### registration in LS
+#registration lookup service URL
+service.registration.accessPoint=http://loco4.man.poznan.pl:8090/axis/services/TopologyService
+service.registration.serviceName=Topology Service
+service.registration.serviceType=TOPS
+service.registration.serviceDescription=Topology Service, perfSONAR

-# Database username and password for ls_storage
-component.ls_storage.db_uri=xmldb:exist://localhost:8680/exist/xmlrpc/db/ls
-component.ls_storage.db_username=lookupservice
-component.ls_storage.db_password=sonar
-
-#LS Cleanup loader
-component.ls_cleanup_loader.interval=180000
-component.ls_cleanup_loader.scheduler_component=ls_scheduler
-component.ls_cleanup_loader.storage_component=ls_storage
-
-#Registrator loader
+#registrator component loader
+#time in milliseconds (60000 means 60 sec)
component.registrator.interval=600000
component.registrator.scheduler_component=ls_scheduler
+#component.tops-registrator.scheduler_component=tops_scheduler
+#component.tops-registrator.register_file=/home/ulisses/rediris/jra1/perfsonar/conf/rrd-database_TEST.xml
+component.registrator.scheduler_component=tops_scheduler
+component.registrator.register_file=/home/ulisses/rediris/jra1/perfsonar/conf/rrd-database_TEST.xml

-#updates
-service.ls.allow_replace=yes
+# --- ToS service properties
---------------------------------------------------------------

-# Lookup Service
+service.tops.class_name=org.perfsonar.service.topologyService.TopServiceEngine
+service.tops.message_types=SetupDataDBRequest
+service.tops.interfaces=/home/ulisses/rediris/jra1/perfsonar/conf/interfaces-description.xml

-component.ls_cleanup_loader.interval=180000
-component.ls_cleanup_loader.scheduler_component=ls_scheduler
-component.ls_cleanup_loader.storage_component=ls_storage
-
-#
-component.tops-registrator.scheduler_component=tops_scheduler
-# TODO
-component.tops-registrator.register_file=/home/ulisses/rediris/jra1/perfsonar/conf/rrd-database_TEST.xml
-
component.tops-jdbc.jdbc_uri=jdbc:postgresql:ulisses
component.tops-jdbc.jdbc_user=ulisses
component.tops-jdbc.jdbc_pass=ulisses

-
-# --- Service properties
---------------------------------------------------------------
-
-service.ls.class_name=org.perfsonar.service.lookupService.xmlType.XmlTypeLSServiceEngine
-service.ls.message_types=LSQueryRequest,LSRegisterRequest,LSDeregisterRequest
-
-service.tops.class_name=org.perfsonar.service.topologyService.TopServiceEngine
-service.tops.message_types=TOPSDownloadDBRequest
-
-
-# ------- END
--------------------------------------------------------------------------
-
+# ------- END
--------------------------------------------------------------------------
\ No newline at end of file

Deleted:
trunk/perfsonar/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadDBRequest.xml

Added:
trunk/perfsonar/schema/example-instances/perfSONAR/TOPS/test/TOPSDownloadRequest.xml

Added:
trunk/perfsonar/src/org/perfsonar/commons/messages/SetupDataDBRequest.java

Deleted:
trunk/perfsonar/src/org/perfsonar/commons/messages/TOPSDownloadDBRequest.java

Modified:
trunk/perfsonar/src/org/perfsonar/service/commons/engine/ActionType.java
===================================================================
--- trunk/perfsonar/src/org/perfsonar/service/commons/engine/ActionType.java
2007-01-24 14:53:57 UTC (rev 1969)
+++ trunk/perfsonar/src/org/perfsonar/service/commons/engine/ActionType.java
2007-01-24 15:57:08 UTC (rev 1970)
@@ -66,14 +66,6 @@
*/
public static final String LS_KEEPALIVE = "LS_KEEPALIVE";

- /**
- * Action type to request a full topology database download
- */
-
- public static final String TOPS_DOWNLOAD_DB = "TOPS_DOWNLOAD_DB";
-
-
-
// -----------------------------------------


@@ -93,4 +85,12 @@
public static final String MAKE_MEASUREMENT = "MeasurementRequest";


+ // ------------------------------------------ Topology Service Actions
+
+ /**
+ * Action type to request a full topology database download
+ */
+
+ public static final String SETUP_DATA_DB = "SETUP_DATA_DB";
+
}

Modified:
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopServiceEngine.java
===================================================================
---
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopServiceEngine.java
2007-01-24 14:53:57 UTC (rev 1969)
+++
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopServiceEngine.java
2007-01-24 15:57:08 UTC (rev 1970)
@@ -4,8 +4,11 @@
*/
package org.perfsonar.service.topologyService;

-import org.ggf.ns.nmwg.base.v2_0.*;
+import java.sql.Connection;
+import java.util.Arrays;
+import java.util.List;

+import org.ggf.ns.nmwg.base.v2_0.Message;
import org.perfsonar.commons.util.XMLUtils;
import org.perfsonar.commons.auxiliary.AuxiliaryComponentManager;
import org.perfsonar.commons.auxiliary.ComponentNames;
@@ -16,213 +19,216 @@
import org.perfsonar.service.commons.exceptions.RequestException;
import org.perfsonar.service.commons.exceptions.SystemException;

-import java.sql.*; // for jdbc
-
/**
- * ServiceEngine class for the Topology Service. (The heart of the Topology
Service)
- *
- * @see org.perfsonar.service.commons.ServiceEngine
- * @author Ulisses Alonso, used Maciej Glowiak's LookupService as an
skeleton
- *
+ * ServiceEngine class for the Topology Service. (The heart of the Topology
+ * Service)
+ *
+ * @see org.perfsonar.service.commons.ServiceEngine
+ * @author Ulisses Alonso, used Maciej Glowiak's LookupService as an
skeleton,
+ * and modified by Candido Rodriguez
+ *
*/
public class TopServiceEngine implements ServiceEngine {

-
- // -------------------------------------------------------------
Constants
-
- /**
- * Service engine type
- */
- private static final String SERVICE_ENGINE_TYPE = "service.TopService";
+ // -------------------------------------------------------------
Constants

- // These strings must match the componentName attribute of the component
going to be loaded
+ /**
+ * Service engine type
+ */
+ private static final String SERVICE_ENGINE_TYPE =
"service.TopService";

- private static final String TOPS_JDBC_COMPONENT = "tops-jdbc";
- private static final String TOPS_REGISTRATOR_COMPONENT =
"tops-registrator";
-
-
- // ---------------------------------------------------------- class
fields
+ // These strings must match the componentName attribute of the
component
+ // going to be loaded

+ private static final String TOPS_JDBC_COMPONENT = "tops-jdbc";

- /**
- * Type of service angine.
- */
- private String serviceEngineType = null;
+// private static final String TOPS_REGISTRATOR_COMPONENT =
"tops-registrator";

+ // ---------------------------------------------------------- class
fields

- /**
- * Array of action types which can be performed
- */
- private String[] acceptedTypes = null;
+ /**
+ * Type of service angine.
+ */
+ private String serviceEngineType = null;

+ /**
+ * Array of action types which can be performed
+ */
+ private List<String> acceptedTypes = null;

- private TopsJDBCComponent topsJDBC = null; // The
Component that holds the connection to the SQL database
- private LoggerComponent logger = null; // The
object to log control/debugging messages
- private TopsLSRegistrationComponent topsRegistration= null; // The
object for registering the service (done periodically with the scheduler)
-
- private Connection jdbc = null; // The
object to connect to the SQL database
-
- /**
- * Construction for the service engine
- */
- public TopServiceEngine() throws SystemException {
+ private TopsJDBCComponent topsJDBC = null; // The Component that
holds the

- // set the accepted action types
- acceptedTypes = new String[] {
- ActionType.TOPS_DOWNLOAD_DB, // Download currently valid version
of the topology
- // In the future it might be useful
to download the topology valid in an specified date
- };
-
- this.serviceEngineType = SERVICE_ENGINE_TYPE;
+ // connection to the SQL
+ // database

- // We have to:
- //
- // - initialize JDBC
- // - initialize Logger
- //
- // - register to the Lookup Service
- //
+ private LoggerComponent logger = null; // The object to log

- // get logger
+ // control/debugging messages

- logger = (LoggerComponent)AuxiliaryComponentManager.
- getInstance().getComponent(ComponentNames.LOGGER);
+// private TopsLSRegistrationComponent topsRegistration = null; // The

- if (logger == null) {
- String m= "TopologyServiceEngine: can't obtain Logger object";
- throw new SystemException("error.tops.dependency", m);
- }
+ // object
+ // for
+ // registering
+ // the
+ // service
+ // (done
+ // periodically
+ // with the
+ // scheduler)

- logger.debug("TopServiceEngine: starting... ");
+ private Connection jdbc = null; // The object to connect to the SQL
database

- // obtain jdbc connection
+ /**
+ * Construction for the service engine
+ */
+ public TopServiceEngine() throws SystemException {

- logger.debug("TopServiceEngine: Getting JDBC object");
+ // set the accepted action types
+ this.acceptedTypes = Arrays
+ .asList(new String[] {
ActionType.SETUP_DATA_DB });
+ this.serviceEngineType = SERVICE_ENGINE_TYPE;

- topsJDBC =
(TopsJDBCComponent)AuxiliaryComponentManager.getInstance().getComponent(TOPS_JDBC_COMPONENT);
-
- if (topsJDBC == null) {
- String m = "TopServiceEngine: can't obtain [" +
TOPS_JDBC_COMPONENT + "] object";
- logger.error(m);
- throw new SystemException("error.tops.dependency", m);
- }
+ // We have to:
+ //
+ // - initialize JDBC
+ // - initialize Logger
+ //
+ // - register to the Lookup Service
+ //

- logger.debug("TopServiceEngine: forcing jdbc initialization");
- topsJDBC.initComponent();
+ // get logger

- jdbc= topsJDBC.getConnection();
+ logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
+ .getComponent(ComponentNames.LOGGER);

- if (jdbc == null) {
+ if (logger == null) {
+ String m = "TopologyServiceEngine: can't obtain
Logger object";
+ throw new SystemException("error.tops.dependency", m);
+ }

- String m = "TopServiceEngine: can't obtain jdbc connection from
the component";
- logger.error(m);
- throw new SystemException("error.tops.dependency", m);
- }
+ logger.debug("TopServiceEngine: starting... ");

- String mm = "TopServiceEngine: trying to get registrator component";
- logger.debug(mm);
-
- topsRegistration=
(TopsLSRegistrationComponent)AuxiliaryComponentManager.
- getInstance().getComponent(TOPS_REGISTRATOR_COMPONENT);
+ // obtain jdbc connection

- if (topsRegistration == null) {
- String m = "TopServiceEngine: can't obtain [" +
TOPS_REGISTRATOR_COMPONENT + "] component";
- logger.error(m);
- throw new SystemException("error.tops.dependency", m);
- }
+ logger.debug("TopServiceEngine: Getting JDBC object");

- logger.debug("TopServiceEngine: started ");
-
- } //constructor
+ topsJDBC = (TopsJDBCComponent)
AuxiliaryComponentManager.getInstance()
+ .getComponent(TOPS_JDBC_COMPONENT);

+ if (topsJDBC == null) {
+ String m = "TopServiceEngine: can't obtain [" +
TOPS_JDBC_COMPONENT
+ + "] object";
+ logger.error(m);
+ throw new SystemException("error.tops.dependency", m);
+ }

+ logger.debug("TopServiceEngine: forcing jdbc initialization");
+ topsJDBC.initComponent();

- // --------------------------------------------------------- public
methods
+ jdbc = topsJDBC.getConnection();

+ if (jdbc == null) {

+ String m = "TopServiceEngine: can't obtain jdbc
connection from the component";
+ logger.error(m);
+ throw new SystemException("error.tops.dependency", m);
+ }

- /**
- * Method which provides access the type of ServiceEngine.
- * It implements the method definition in ServiceEngine Interface
- *
- * @return String containing ServiceEngine Type
- *
- * @see org.perfsonar.service.commons.engine.ServiceEngine#getType()
- */
- public String getType() {
+/* String mm = "TopServiceEngine: trying to get registrator
component";
+ logger.debug(mm);

- return this.serviceEngineType;
+ topsRegistration = (TopsLSRegistrationComponent)
AuxiliaryComponentManager
+
.getInstance().getComponent(TOPS_REGISTRATOR_COMPONENT);

- }
+ if (topsRegistration == null) {
+ String m = "TopServiceEngine: can't obtain ["
+ + TOPS_REGISTRATOR_COMPONENT + "]
component";
+ logger.error(m);
+ throw new SystemException("error.tops.dependency", m);
+ }
+*/
+ logger.debug("TopServiceEngine: started ");

+ } // constructor

- /**
- * Method to accept requests for action. It implements
- * the method definition in ServiceEngine Interface
- *
- * @return Message object containing the response
- *
- * @throws SystemException
- * @throws RequestException
- * @throws DataFormatException
- *
- * @see org.perfsonar.service.commons.engine.ServiceEngine
- */
- public Message takeAction(String actionType,
- Message request)
- throws SystemException, RequestException, DataFormatException{
-
-
- logger.debug("TopServiceEngine: takeAction for action [" +
- actionType+"]");
-
- // check if the action type can be satisfied
- boolean actionTypeCanBeSatisfied = false;
+ // --------------------------------------------------------- public
methods

- for (int itr=0; itr<acceptedTypes.length; itr++) {
- if (acceptedTypes[itr].equals(actionType)) {
- actionTypeCanBeSatisfied = true;
- break;
- }
- }
+ /**
+ * Method which provides access the type of ServiceEngine. It
implements the
+ * method definition in ServiceEngine Interface
+ *
+ * @return String containing ServiceEngine Type
+ *
+ * @see org.perfsonar.service.commons.engine.ServiceEngine#getType()
+ */
+ public String getType() {

- if (!actionTypeCanBeSatisfied) {
+ return this.serviceEngineType;

- String m= "TopServiceEngine: ActionType specified: " + actionType
+ " is not supported";
- logger.info(m);
- throw new SystemException("error.common.action_not_supported",
m);
- }
-
- logger.debug("TopServiceEngine: action valid for this ServiceEngine:
" + actionType);
-
- //Create response
- Message response = null;
+ }

- // ------------ serving actions
---------------------------------------
-
- //Take an action
- if (actionType.equals(ActionType.TOPS_DOWNLOAD_DB)) {
+ /**
+ * Method to accept requests for action. It implements the method
definition
+ * in ServiceEngine Interface
+ *
+ * @return Message object containing the response
+ *
+ * @throws SystemException
+ * @throws RequestException
+ * @throws DataFormatException
+ *
+ * @see org.perfsonar.service.commons.engine.ServiceEngine
+ */
+ public Message takeAction(String actionType, Message request)
+ throws SystemException, RequestException,
DataFormatException {

- TopsAction action = new TopsDownloadDBAction(jdbc);
- response = action.performAction(request);
-
- } else {
- String m= "TopServiceEngine: Action [" +actionType +"] not
supported";
- logger.info(m);
- throw new SystemException("error.common.action_not_supported",
m);
- }
-
- // ------end of serving actions
---------------------------------------
-
- String m;
- m= "finally response in Topology Service:\n" +
XMLUtils.serializeXML(response);
+ logger.debug("TopServiceEngine: takeAction for action [" +
actionType
+ + "]");

- logger.debug(m);
+ // check if the action type can be satisfied
+ boolean actionTypeCanBeSatisfied =
acceptedTypes.contains(actionType);

- return response;
-
- } //takeAction
+ if (!actionTypeCanBeSatisfied) {
+ String m = "TopServiceEngine: ActionType specified: "
+ actionType
+ + " is not supported";
+ logger.info(m);
+ throw new
SystemException("error.common.action_not_supported", m);
+ }

-
-} //TopServiceEngine
+ logger.debug("TopServiceEngine: action valid for this
ServiceEngine: "
+ + actionType);

+ // ------------ serving actions
---------------------------------------
+
+ // Create response
+ Message response = null;
+
+ TopsAction action = null;
+ // Take an action
+ if (actionType.equals(ActionType.SETUP_DATA_DB)) {
+ action = new TopsDownloadAction(jdbc);
+ }
+
+ if (action == null) {
+ String m = "TopServiceEngine: Action [" + actionType
+ + "] not supported";
+ logger.info(m);
+ throw new
SystemException("error.common.action_not_supported", m);
+ }
+
+ response = action.performAction(request);
+
+ // ------end of serving actions
---------------------------------------
+
+ String m;
+ m = "finally response in Topology Service:\n"
+ + XMLUtils.serializeXML(response);
+
+ logger.debug(m);
+
+ return response;
+
+ } // takeAction
+
+} // TopServiceEngine

Modified:
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsAction.java
===================================================================
--- trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsAction.java
2007-01-24 14:53:57 UTC (rev 1969)
+++ trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsAction.java
2007-01-24 15:57:08 UTC (rev 1970)
@@ -1,7 +1,6 @@
package org.perfsonar.service.topologyService;

-import java.sql.*;
-
+import java.sql.Connection;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;
@@ -21,216 +20,174 @@
import org.perfsonar.service.commons.exceptions.RequestException;
import org.perfsonar.service.commons.exceptions.SystemException;

-
/**
* Generic class for all Tops actions performed by TopServiceEngine
*
- * @author Maciej Glowiak, modified by Ulisses Alonso
- *
+ * @author Maciej Glowiak, modified by Ulisses Alonso & Candido Rodriguez
+ *
*/
public abstract class TopsAction {

- // --------------------------------------------------------------
Constants
-
- // ----------------------------------------------------- Instance
variables
-
-
- /**
- * JDBC connection
- */
- protected Connection jdbc = null;
-
-
- /**
- * The object to log control/debugging messages
- */
- protected LoggerComponent logger = null;
+ // --------------------------------------------------------------
Constants

-
- /**
- * Reference to configuration
- */
- protected ConfigurationComponent configuration;
-
-
- // ------------------------------------------------------------
Constructor
-
-
- public TopsAction(Connection jdbc) throws SystemException {
-
- this.jdbc = jdbc;
-
- logger = (LoggerComponent)AuxiliaryComponentManager.
- getInstance().getComponent(ComponentNames.LOGGER);
+ // ----------------------------------------------------- Instance
variables

- configuration = (ConfigurationComponent)AuxiliaryComponentManager.
- getInstance().getComponent(ComponentNames.CONFIG);
-
- }
-
+ /**
+ * JDBC connection
+ */
+ protected Connection jdbc = null;

- // ------------------------------------------------------ Protected
methods
-
-
- /**
- * Extracts first Metadata from Request
- * @param request
- * @return Metadata
- */
- protected Metadata getMetadataFromRequest(
- Message request) {
+ /**
+ * The object to log control/debugging messages
+ */
+ protected LoggerComponent logger = null;

- //Get Metadata
-
- Metadata requestMetadata[] = request.getMetadataArray();
- if(requestMetadata.length > 0){
- return requestMetadata[0];
- }
- else{
- return null;
- }
- }
-
-
- /**
- * Extracts Key of specific Id from Metadata
- * @param requestMetadata
- * @param keyId Key identifier
- * @return Key value
- */
- protected String getKeyFromMetadata(
- Metadata requestMetadata, String keyId) {
+ /**
+ * Reference to configuration
+ */
+ protected ConfigurationComponent configuration;

- //get Key
-
- Key key = requestMetadata.getKey();
-
- String keyValue = null;
-
- //check if there is a Key
- if (key!=null) try {
-
- //iterate parameters
- if (key.getParameters()!=null) {
-
- Map params = key.getParameters().getParameterMap();
- Collection collect = params.values();
-
- for(Iterator i = collect.iterator(); i.hasNext(); ){
-
- try {
-
- Parameter parameter = (Parameter)i.next();
-
- String parameterName = parameter.getParameterName();
- String parameterValue =
parameter.getParameterValue();
-
- //parse parameters
- if (parameterName.equals(keyId)) {
- keyValue = parameterValue;
- } //else if (parameterName.equals(...)) {...}
-
- //print all parameters read
- //logger.debug("XmlTypeLSServiceEngine:
key-parameter: ["+
- // parameterName + "] =
["+parameterValue+"]");
-
- //don't finish parsing, there may still be other
- //parameters
-
- }catch (RuntimeException ex) {
- logger.warn("XmlTypeLSServiceEngine: error while " +
- "parsing parameters from Key");
- }
- }
- }
-
- } catch (RuntimeException npex) {
- logger.warn("XmlTypeLSServiceEngine: error while getting " +
- "parameters from Key");
- }
-
- return keyValue;
-
- }
-
-
- /**
- * @author: Maciej Glowiak
- *
- * @param resultCode textual result code (result.success OR
result.error),
- * put into Metadata
- * @param details textual description (will be put in Data block);
- * if null value, Data won't be created
- * @return ResultCode (Metadata+Data)
- */
- protected ResultCode createResultCode(String resultCode, String details)
{
-
- ResultCode res = new ResultCode();
- Metadata metadata = new Metadata();
- metadata.setId("resultCodeMetadata");
-
- EventType eventType = new EventType();
- eventType.setEventType(resultCode);
- metadata.setEventType(eventType);
-
- res.setMetadata(metadata);
-
- if (details!=null) {
-
- Data data = new Data();
-
- Datum datum = new Datum();
-
- data.setId("resultCodeData");
- data.setMetadataIdRef("resultCodeMetadata");
- datum.setValue(details);
- data.setDatum(datum);
-
- res.setData(data);
-
+ // ------------------------------------------------------------
Constructor
+
+ public TopsAction(Connection jdbc) throws SystemException {
+ this.jdbc = jdbc;
+ logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
+ .getComponent(ComponentNames.LOGGER);
+ configuration = (ConfigurationComponent)
AuxiliaryComponentManager
+
.getInstance().getComponent(ComponentNames.CONFIG);
}
- return res;
- }
-
-
- // ----------------------------------------------- Abstract methods
-
-
- public abstract Message performAction(
- Message request)
- throws SystemException, RequestException, DataFormatException;
-
-
- // ---------------------------------------------------------- Inner
classes
-
-
- /**
- * Result code, contains Metadata and Data blocks
- * @author Maciej Glowiak
- *
- */
- protected class ResultCode {
-
- private Metadata metadata;
- private Data data;
-
- public Data getData() {
- return data;
- }

- public void setData(Data data) {
- this.data = data;
- }
-
- public Metadata getMetadata() {
- return metadata;
- }
-
- public void setMetadata(Metadata metadata) {
- this.metadata = metadata;
- }
-
- } //ResultCode
-
-
-} //LSAction
+ // ------------------------------------------------------ Protected
methods
+
+ /**
+ * Extracts first Metadata from Request
+ *
+ * @param request
+ * @return Metadata
+ */
+ protected Metadata getMetadataFromRequest(Message request) {
+ // Get Metadata
+ Metadata requestMetadata[] = request.getMetadataArray();
+ if (requestMetadata.length > 0) {
+ return requestMetadata[0];
+ } else {
+ return null;
+ }
+ }
+
+ /**
+ * Extracts Key of specific Id from Metadata
+ *
+ * @param requestMetadata
+ * @param keyId
+ * Key identifier
+ * @return Key value
+ */
+ protected String getKeyFromMetadata(Metadata requestMetadata, String
keyId) {
+ // get Key
+ Key key = requestMetadata.getKey();
+ String keyValue = null;
+
+ // check if there is a Key
+ if (key != null) {
+ try {
+ // iterate parameters
+ if (key.getParameters() != null) {
+ Map params =
key.getParameters().getParameterMap();
+ Collection collect = params.values();
+ for (Iterator i = collect.iterator();
i.hasNext();) {
+ try {
+ Parameter parameter =
(Parameter) i.next();
+ String parameterName
= parameter.getParameterName();
+ String parameterValue
= parameter
+
.getParameterValue();
+ // parse parameters
+ if
(parameterName.equals(keyId)) {
+ keyValue =
parameterValue;
+ }
+ } catch (RuntimeException ex)
{
+
logger.warn("TopsAction: error while "
+ +
"parsing parameters from Key");
+ }
+ }
+ }
+ } catch (RuntimeException npex) {
+ logger.warn("TopsAction: error while getting "
+ + "parameters from Key");
+ }
+ }
+ return keyValue;
+ }
+
+ /**
+ * @author: Maciej Glowiak
+ *
+ * @param resultCode
+ * textual result code (result.success OR result.error),
put into
+ * Metadata
+ * @param details
+ * textual description (will be put in Data block); if null
+ * value, Data won't be created
+ * @return ResultCode (Metadata+Data)
+ */
+ protected ResultCode createResultCode(String resultCode, String
details) {
+ ResultCode res = new ResultCode();
+ Metadata metadata = new Metadata();
+ metadata.setId("resultCodeMetadata");
+
+ EventType eventType = new EventType();
+ eventType.setEventType(resultCode);
+ metadata.setEventType(eventType);
+
+ res.setMetadata(metadata);
+
+ if (details != null) {
+ Data data = new Data();
+ Datum datum = new Datum();
+ data.setId("resultCodeData");
+ data.setMetadataIdRef("resultCodeMetadata");
+ datum.setValue(details);
+ data.setDatum(datum);
+ res.setData(data);
+ }
+ return res;
+ }
+
+ // ----------------------------------------------- Abstract methods
+
+ public abstract Message performAction(Message request)
+ throws SystemException, RequestException,
DataFormatException;
+
+ // ---------------------------------------------------------- Inner
classes
+
+ /**
+ * Result code, contains Metadata and Data blocks
+ *
+ * @author Maciej Glowiak
+ *
+ */
+ protected class ResultCode {
+
+ private Metadata metadata;
+
+ private Data data;
+
+ public Data getData() {
+ return data;
+ }
+
+ public void setData(Data data) {
+ this.data = data;
+ }
+
+ public Metadata getMetadata() {
+ return metadata;
+ }
+
+ public void setMetadata(Metadata metadata) {
+ this.metadata = metadata;
+ }
+
+ } // ResultCode
+
+} // TopsAction
\ No newline at end of file

Added:
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsDownloadAction.java

Deleted:
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsDownloadDBAction.java

Modified:
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsJDBCComponent.java
===================================================================
---
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsJDBCComponent.java
2007-01-24 14:53:57 UTC (rev 1969)
+++
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsJDBCComponent.java
2007-01-24 15:57:08 UTC (rev 1970)
@@ -1,132 +1,115 @@
package org.perfsonar.service.topologyService;

-import org.ggf.ns.nmwg.base.v2_0.Message;
+import java.sql.Connection;
+import java.sql.DriverManager;
+
import org.perfsonar.commons.auxiliary.AuxiliaryComponent;
import org.perfsonar.commons.auxiliary.AuxiliaryComponentManager;
import org.perfsonar.commons.auxiliary.ComponentNames;
import
org.perfsonar.commons.auxiliary.components.configuration.ConfigurationComponent;
import org.perfsonar.commons.auxiliary.components.logger.LoggerComponent;
-import org.perfsonar.commons.auxiliary.components.simplescheduler.Scheduler;
-import
org.perfsonar.commons.auxiliary.components.simplescheduler.SchedulerAction;
-import org.perfsonar.service.commons.exceptions.PerfSONARException;
import org.perfsonar.service.commons.exceptions.SystemException;
-import
org.perfsonar.service.commons.registration.GenericServiceLSRegistrator;
-import
org.perfsonar.service.commons.registration.InformationXMLFileServiceContent;
-import
org.perfsonar.service.commons.registration.PropertiesServiceDescription;
-import org.perfsonar.service.commons.registration.ServiceLSRegistrator;

-import java.sql.*; // for jdbc
-
/**
* Action for simple Scheduler that registers with the LS
*
- * @author Maciej Glowiak, modified by Ulisses Alonso for incorporating it
- * in the Topology Service
+ * @author Maciej Glowiak, modified by Ulisses Alonso for incorporating it in
+ * the Topology Service
*/
public class TopsJDBCComponent implements AuxiliaryComponent {
-
- // ----------------------------------------------------- constants
-
-
- // -------------------------------------------- Instance variables
-
-
- private String componentName = "tops-jdbc";
-
- private LoggerComponent logger;
-
- private ConfigurationComponent config;

- private Connection jdbc = null; // JDBC
acess to the topology information
-
- // ------------------------------------------------------- Methods
-
-
- public Connection getConnection() {
-
- return jdbc;
- }
+ // ----------------------------------------------------- constants

+ // -------------------------------------------- Instance variables

- // ---------------------- component that loads action to scheduler
-
-
- public void initComponent() throws SystemException {
+ private String componentName = "tops-jdbc";

-
- try {
-
- logger = (LoggerComponent)AuxiliaryComponentManager.
- getInstance().getComponent(ComponentNames.LOGGER);
-
- } catch (SystemException e) {
- String m = "TopsJDBCComponent: Can't obtain Logger component ";
- throw new SystemException(m);
- }
-
- logger.debug("TopsJDBCComponent: initializing component");
+ private LoggerComponent logger;

- try {
- config = (ConfigurationComponent)
- AuxiliaryComponentManager.getInstance().
- getComponent(ComponentNames.CONFIG);
- } catch (SystemException e) {
+ private ConfigurationComponent config;

- String m = "TopsJDBCComponent: Can't obtain Config component ";
- logger.error(m);
- throw new SystemException("error.tops.dependency", m);

- }
+ private Connection jdbc = null; // JDBC acess to the topology
information

+ // ------------------------------------------------------- Methods

- try {
- Class.forName("org.postgresql.Driver");
- } catch(Exception e) {
- String m = "TopsJDBCComponent: Can't obtain postgresql driver for
JDBC access";
- logger.error(m);
- throw new SystemException("error.tops.dependency", m);
- }
-
- String jdbcURI =
config.getProperty("component."+componentName+".jdbc_uri");
- String jdbcUSER =
config.getProperty("component."+componentName+".jdbc_user");
- String jdbcPASS =
config.getProperty("component."+componentName+".jdbc_pass");
+ public Connection getConnection() {

- try {
+ return jdbc;
+ }

- jdbc = DriverManager.getConnection(jdbcURI, jdbcUSER, jdbcPASS);
+ // ---------------------- component that loads action to scheduler

- } catch(Exception e) {
- String m = "TopsJDBCComponent: Can't obtain jdbc connection:
uri: " +jdbcURI +", user: " +jdbcUSER +", pass: " +jdbcPASS;
- logger.error(m);
- throw new SystemException("error.tops.dependency", m);
- }
+ public void initComponent() throws SystemException {

-
- logger.debug("TopsJDBCComponent: component initialized");
- }
+ try {

+ logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
+ .getComponent(ComponentNames.LOGGER);

- public String getComponentName() {
+ } catch (SystemException e) {
+ String m = "TopsJDBCComponent: Can't obtain Logger
component ";
+ throw new SystemException(m);
+ }

- return componentName;
-
- }
+ logger.debug("TopsJDBCComponent: initializing component");

+ try {
+ config = (ConfigurationComponent)
AuxiliaryComponentManager
+
.getInstance().getComponent(ComponentNames.CONFIG);
+ } catch (SystemException e) {

- public void setComponentName(String name) {
-
- componentName = name;
-
- }
+ String m = "TopsJDBCComponent: Can't obtain Config
component ";
+ logger.error(m);
+ throw new SystemException("error.tops.dependency", m);
+ }

-
- // ---------------------------------------------------------- test
-
-
- public static void main(String[] args) throws Exception {
+ try {
+ Class.forName("org.postgresql.Driver");
+ } catch (Exception e) {
+ String m = "TopsJDBCComponent: Can't obtain
postgresql driver for JDBC access";
+ logger.error(m);
+ throw new SystemException("error.tops.dependency", m);
+ }

- AuxiliaryComponentManager.getInstance();
-
- }
-
-
-} // TopServiceLSRegistrationComponent
+ String jdbcURI = config.getProperty("component." +
componentName
+ + ".jdbc_uri");
+ String jdbcUSER = config.getProperty("component." +
componentName
+ + ".jdbc_user");
+ String jdbcPASS = config.getProperty("component." +
componentName
+ + ".jdbc_pass");
+
+ try {
+
+ jdbc = DriverManager.getConnection(jdbcURI, jdbcUSER,
jdbcPASS);
+
+ } catch (Exception e) {
+ String m = "TopsJDBCComponent: Can't obtain jdbc
connection: uri: "
+ + jdbcURI + ", user: " + jdbcUSER +
", pass: " + jdbcPASS;
+ logger.error(m);
+ throw new SystemException("error.tops.dependency", m);
+ }
+
+ logger.debug("TopsJDBCComponent: component initialized");
+ }
+
+ public String getComponentName() {
+
+ return componentName;
+
+ }
+
+ public void setComponentName(String name) {
+
+ componentName = name;
+
+ }
+
+ // ---------------------------------------------------------- test
+
+ public static void main(String[] args) throws Exception {
+
+ AuxiliaryComponentManager.getInstance();
+
+ }
+
+} // TopServiceLSRegistrationComponent
\ No newline at end of file

Modified:
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsLSRegistrationComponent.java
===================================================================
---
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsLSRegistrationComponent.java
2007-01-24 14:53:57 UTC (rev 1969)
+++
trunk/perfsonar/src/org/perfsonar/service/topologyService/TopsLSRegistrationComponent.java
2007-01-24 15:57:08 UTC (rev 1970)
@@ -18,186 +18,171 @@
/**
* Action for simple Scheduler that registers with the LS
*
- * @author Maciej Glowiak, modified by Ulisses Alonso for incorporating it
- * in the Topology Service
+ * @author Maciej Glowiak, modified by Ulisses Alonso for incorporating it in
+ * the Topology Service
*/
-public class TopsLSRegistrationComponent
- implements SchedulerAction, AuxiliaryComponent {
-
- // ----------------------------------------------------- constants
-
-
- private static final int DEFAULT_RUN_INTERVAL = 10000;
+public class TopsLSRegistrationComponent implements SchedulerAction,
+ AuxiliaryComponent {

- private static final int MINIMAL_RUN_INTERVAL = 100;
-
- // -------------------------------------------- Instance variables
-
-
- private Message responseMessage;
-
- private String componentName = "tops-registrator";
-
- private LoggerComponent logger;
-
- private ConfigurationComponent config;
-
- private Scheduler scheduler;
+ // ----------------------------------------------------- constants

-
-
- // ------------------------------------------------------- Methods
-
-
- /**
- * Scheduler action
- */
- public void runAction() {
-
- try {
-
- config =
- (ConfigurationComponent)AuxiliaryComponentManager.
- getInstance().getComponent(ComponentNames.CONFIG);
-
- String topsRegisterFile = config.getProperty("component."
+componentName+ ".register_file");
+ private static final int DEFAULT_RUN_INTERVAL = 10000;

- String lsURL = config.getProperty(
- "service.r.ls_url");
-
- logger.debug("TopServiceLSRegistrationComponent: register to LS
["+
- lsURL+"] with file ["+topsRegisterFile+"]");
-
- ServiceLSRegistrator registrator = new
- GenericServiceLSRegistrator(
- new PropertiesServiceDescription(),
- new InformationXMLFileServiceContent(topsRegisterFile));
-
- registrator.initRegistrator();
-
- responseMessage = registrator.register(lsURL);
-
- // TODO: do something with message... ?
-
- } catch (PerfSONARException e) {
-
- logger.error("TopServiceLSRegistrationComponent: " +
- "Error while registration: "+e.getMessage());
- }
-
- }
+ private static final int MINIMAL_RUN_INTERVAL = 100;

-
- public Message getResponseMessage() {
-
- return responseMessage;
-
- }
+ // -------------------------------------------- Instance variables

+ private Message responseMessage;

- // ---------------------- component that loads action to scheduler
-
-
- public void initComponent() throws SystemException {
+ private String componentName = "tops-registrator";

- try {
-
- logger = (LoggerComponent)AuxiliaryComponentManager.
- getInstance().getComponent(ComponentNames.LOGGER);
-
- } catch (SystemException e) {
+ private LoggerComponent logger;

- throw new SystemException("error.tops.dependency",
"TopsLSRegistrationComponent: Can't obtain Logger component");
- }
-
- try {
- config = (ConfigurationComponent)
- AuxiliaryComponentManager.getInstance().
- getComponent(ComponentNames.CONFIG);
- } catch (SystemException e) {
+ private ConfigurationComponent config;

- String m= "TopsLSRegistrationComponent: Can't obtain Config
component";
- logger.error(m);
+ private Scheduler scheduler;

- throw new SystemException("error.tops.dependency", m);
- }
+ // ------------------------------------------------------- Methods

-
- //Get configuration
-
- //get interval - parameter "component.CName.interval"
- int interval = DEFAULT_RUN_INTERVAL;
- try {
- String intervalVal = config.getProperty(
- "component."+componentName+".interval");
- interval = Integer.parseInt(intervalVal);
- } catch (RuntimeException e) {
- //possibly not an integer - keep default interval
- } catch (SystemException e) {
- //no property - keep default interval
- }
-
- //if too small take default?
- if (interval<MINIMAL_RUN_INTERVAL) {
- interval = DEFAULT_RUN_INTERVAL;
- }
-
- logger.debug("TopsLSRegistrationComponent: parameter
RUN_INTERVAL="+interval);
-
- //get scheduler - parameter "component.CName.scheduler_component"
+ /**
+ * Scheduler action
+ */
+ public void runAction() {

- try {
- String schedulerVal = config.getProperty(
- "component."+componentName+".scheduler_component");
- logger.debug("TopsLSRegistrationComponent: parameter
SCHEDULER="+schedulerVal);
-
- scheduler = (Scheduler)
- AuxiliaryComponentManager.getInstance().
- getComponent(schedulerVal);
-
- if (scheduler==null) {
+ try {

- String m= "TopsLSRegistrationComponent: Can't obtain
scheduler component";
- logger.error(m);
- throw new SystemException("error.tops.dependency", m);
- }
-
- } catch (SystemException e) {
+ config = (ConfigurationComponent)
AuxiliaryComponentManager
+
.getInstance().getComponent(ComponentNames.CONFIG);

- String m= "TopsLSRegistrationComponent: no [component." +
- componentName+".scheduler_component] parameter. "
- + e.getMessage();
+ String topsRegisterFile =
config.getProperty("component."
+ + componentName + ".register_file");

- logger.error(m);
- throw new SystemException("error.tops.dependency", m);
- }
-
- // add cleanup action to scheduler
- scheduler.addSchedulerTask(interval, this);
- }
+ String lsURL = config.getProperty("service.r.ls_url");

+ logger.debug("TopServiceLSRegistrationComponent:
register to LS ["
+ + lsURL + "] with file [" +
topsRegisterFile + "]");

- public String getComponentName() {
+ ServiceLSRegistrator registrator = new
GenericServiceLSRegistrator(
+ new PropertiesServiceDescription(),
+ new
InformationXMLFileServiceContent(topsRegisterFile));

- return componentName;
-
- }
+ registrator.initRegistrator();

+ responseMessage = registrator.register(lsURL);

- public void setComponentName(String name) {
-
- componentName = name;
-
- }
+ // TODO: do something with message... ?

-
- // ---------------------------------------------------------- test
-
-
- public static void main(String[] args) throws Exception {
+ } catch (PerfSONARException e) {

- AuxiliaryComponentManager.getInstance();
- }
-
-
+ logger.error("TopServiceLSRegistrationComponent: "
+ + "Error while registration: " +
e.getMessage());
+ }
+
+ }
+
+ public Message getResponseMessage() {
+
+ return responseMessage;
+
+ }
+
+ // ---------------------- component that loads action to scheduler
+
+ public void initComponent() throws SystemException {
+
+ try {
+
+ logger = (LoggerComponent)
AuxiliaryComponentManager.getInstance()
+ .getComponent(ComponentNames.LOGGER);
+
+ } catch (SystemException e) {
+
+ throw new SystemException("error.tops.dependency",
+ "TopsLSRegistrationComponent: Can't
obtain Logger component");
+ }
+
+ try {
+ config = (ConfigurationComponent)
AuxiliaryComponentManager
+
.getInstance().getComponent(ComponentNames.CONFIG);
+ } catch (SystemException e) {
+
+ String m = "TopsLSRegistrationComponent: Can't obtain
Config component";
+ logger.error(m);
+
+ throw new SystemException("error.tops.dependency", m);
+ }
+
+ // Get configuration
+
+ // get interval - parameter "component.CName.interval"
+ int interval = DEFAULT_RUN_INTERVAL;
+ try {
+ String intervalVal = config.getProperty("component."
+ + componentName + ".interval");
+ interval = Integer.parseInt(intervalVal);
+ } catch (RuntimeException e) {
+ // possibly not an integer - keep default interval
+ } catch (SystemException e) {
+ // no property - keep default interval
+ }
+
+ // if too small take default?
+ if (interval < MINIMAL_RUN_INTERVAL) {
+ interval = DEFAULT_RUN_INTERVAL;
+ }
+
+ logger.debug("TopsLSRegistrationComponent: parameter
RUN_INTERVAL="
+ + interval);
+
+ // get scheduler - parameter
"component.CName.scheduler_component"
+
+ try {
+ String schedulerVal = config.getProperty("component."
+ + componentName +
".scheduler_component");
+ logger.debug("TopsLSRegistrationComponent: parameter
SCHEDULER="
+ + schedulerVal);
+
+ scheduler = (Scheduler)
AuxiliaryComponentManager.getInstance()
+ .getComponent(schedulerVal);
+
+ if (scheduler == null) {
+
+ String m = "TopsLSRegistrationComponent:
Can't obtain scheduler component";
+ logger.error(m);
+ throw new
SystemException("error.tops.dependency", m);
+ }
+
+ } catch (SystemException e) {
+
+ String m = "TopsLSRegistrationComponent: no
[component."
+ + componentName +
".scheduler_component] parameter. "
+ + e.getMessage();
+
+ logger.error(m);
+ throw new SystemException("error.tops.dependency", m);
+ }
+
+ // add cleanup action to scheduler
+ scheduler.addSchedulerTask(interval, this);
+ }
+
+ public String getComponentName() {
+
+ return componentName;
+
+ }
+
+ public void setComponentName(String name) {
+
+ componentName = name;
+
+ }
+
+ // ---------------------------------------------------------- test
+
+ public static void main(String[] args) throws Exception {
+
+ AuxiliaryComponentManager.getInstance();
+ }
+
} // TopServiceLSRegistrationComponent



  • r1970 - in trunk/perfsonar: ant ant/tops conf schema/example-instances/perfSONAR/TOPS/test src/org/perfsonar/commons/messages src/org/perfsonar/service/commons/engine src/org/perfsonar/service/topologyService, svnlog, 01/24/2007

Archive powered by MHonArc 2.6.16.

Top of Page