+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<classpath>\r
- <classpathentry kind="src" path="src/main/java"/>\r
- <classpathentry kind="src" path="src/main/resources"/>\r
- <classpathentry kind="src" path="src/test/java"/>\r
- <classpathentry kind="src" path="src/test/resources"/>\r
- <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v5.5"/>\r
- <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>\r
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER">\r
- <attributes>\r
- <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>\r
- </attributes>\r
- </classpathentry>\r
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>\r
- <classpathentry kind="output" path="build/classes"/>\r
-</classpath>\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<projectDescription>\r
- <name>argeo.slc.ws</name>\r
- <comment></comment>\r
- <projects>\r
- <project>org.argeo.slc.core</project>\r
- </projects>\r
- <buildSpec>\r
- <buildCommand>\r
- <name>org.maven.ide.eclipse.maven2Builder</name>\r
- <arguments>\r
- </arguments>\r
- </buildCommand>\r
- <buildCommand>\r
- <name>org.eclipse.jdt.core.javabuilder</name>\r
- <arguments>\r
- </arguments>\r
- </buildCommand>\r
- <buildCommand>\r
- <name>org.eclipse.wst.common.project.facet.core.builder</name>\r
- <arguments>\r
- </arguments>\r
- </buildCommand>\r
- <buildCommand>\r
- <name>org.eclipse.wst.validation.validationbuilder</name>\r
- <arguments>\r
- </arguments>\r
- </buildCommand>\r
- </buildSpec>\r
- <natures>\r
- <nature>org.eclipse.wst.common.project.facet.core.nature</nature>\r
- <nature>org.eclipse.jdt.core.javanature</nature>\r
- <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>\r
- <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>\r
- <nature>org.maven.ide.eclipse.maven2Nature</nature>\r
- </natures>\r
-</projectDescription>\r
+++ /dev/null
-#Mon Apr 14 09:41:37 CEST 2008\r
-eclipse.preferences.version=1\r
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5\r
-org.eclipse.jdt.core.compiler.compliance=1.5\r
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error\r
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error\r
-org.eclipse.jdt.core.compiler.source=1.5\r
+++ /dev/null
-#Mon Apr 14 09:41:45 CEST 2008\r
-classpath.helper/org.eclipse.jdt.launching.JRE_CONTAINER\:\:org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType\:\:jre1.5.0_07/owners=jst.java\:5.0\r
-classpath.helper/org.eclipse.jst.server.core.container\:\:org.eclipse.jst.server.tomcat.runtimeTarget\:\:Apache\ Tomcat\ v5.5/owners=jst.web\:2.4\r
-eclipse.preferences.version=1\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<project-modules id="moduleCoreId" project-version="1.5.0">\r
-<wb-module deploy-name="argeo.slc.ws">\r
-<wb-resource deploy-path="/" source-path="/src/main/webapp"/>\r
-<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>\r
-<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>\r
-<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/java"/>\r
-<wb-resource deploy-path="/WEB-INF/classes" source-path="/resources"/>\r
-<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/resources"/>\r
-<dependent-module deploy-path="/WEB-INF/lib" handle="module:/resource/org.argeo.slc.core/org.argeo.slc.core">\r
-<dependency-type>uses</dependency-type>\r
-</dependent-module>\r
-<property name="context-root" value="argeo.slc.ws"/>\r
-<property name="java-output-path" value="build/classes"/>\r
-</wb-module>\r
-</project-modules>\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<faceted-project>\r
- <runtime name="Apache Tomcat v5.5"/>\r
- <fixed facet="jst.web"/>\r
- <fixed facet="jst.java"/>\r
- <installed facet="jst.java" version="5.0"/>\r
- <installed facet="jst.web" version="2.4"/>\r
-</faceted-project>\r
+++ /dev/null
-<slc-execution-steps-request
- xmlns="http://argeo.org/projects/slc/schemas"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://argeo.org/projects/slc/schemas ../src/main/webapp/WEB-INF/slc.xsd">
- <steps>
- <slc-execution-step>
- <log-lines>
- <log-line>A log message</log-line>
- <log-line>and another line</log-line>
- </log-lines>
- <type>LOG</type>
- <begin>2008-04-17T18:21:00.000+02:00</begin>
- </slc-execution-step>
- <slc-execution-step>
- <log-lines>
- <log-line>A nothe rlog message</log-line>
- </log-lines>
- <type>LOG</type>
- <begin>2008-04-17T18:25:00.000+02:00</begin>
- </slc-execution-step>
- </steps>
- <slc-execution-uuid>
- 11848adc-33cf-4b3d-88c1-3a57486e1906
- </slc-execution-uuid>
-</slc-execution-steps-request>
\ No newline at end of file
+++ /dev/null
-<slc-execution-request
- xmlns="http://argeo.org/projects/slc/schemas"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://argeo.org/projects/slc/schemas ../src/main/webapp/WEB-INF/slc.xsd">
- <slc-execution uuid="11848adc-33cf-4b3d-88c1-3a57486e1906">
- <status>STARTED</status>
- <type>slcAnt</type>
- <host>localhost</host>
- <path>/test</path>
- </slc-execution>
-</slc-execution-request>
\ No newline at end of file
+++ /dev/null
-<slc-execution-request
- xmlns="http://argeo.org/projects/slc/schemas"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://argeo.org/projects/slc/schemas ../src/main/webapp/WEB-INF/slc.xsd">
- <slc-execution uuid="18b64f3f-6697-406a-997a-94356020c9f2">
- <steps>
- <slc-execution-step>
- <log-lines>
- <log-line>A log message</log-line>
- <log-line>and another line</log-line>
- </log-lines>
- <type>LOG</type>
- <begin>2008-04-17T18:21:00.000+02:00</begin>
- </slc-execution-step>
- <slc-execution-step>
- <log-lines>
- <log-line>A nothe rlog message</log-line>
- </log-lines>
- <type>LOG</type>
- <begin>2008-04-17T18:25:00.000+02:00</begin>
- </slc-execution-step>
- </steps>
- <status>STARTED</status>
- <type>slcAnt</type>
- <host>localhost</host>
- <path>/test</path>
- </slc-execution>
-</slc-execution-request>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>\r
-<project xmlns="http://maven.apache.org/POM/4.0.0"\r
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">\r
- <modelVersion>4.0.0</modelVersion>\r
- <groupId>org.argeo.slc</groupId>\r
- <artifactId>argeo-slc-ws</artifactId>\r
- <version>0.9-SNAPSHOT</version>\r
- <properties>\r
- <packaging>jar</packaging>\r
- </properties>\r
- <packaging>${packaging}</packaging>\r
- <description>SLC Web Services</description>\r
- <build>\r
- <plugins>\r
- <!-- \r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-eclipse-plugin</artifactId>\r
- <version>2.5-SNAPSHOT</version>\r
- <configuration>\r
- <wtpversion>2.0</wtpversion>\r
- <downloadSources>true</downloadSources>\r
- <workspace>C:\mbaudier\workspace</workspace>\r
- </configuration>\r
- </plugin>\r
- -->\r
- <plugin>\r
- <groupId>org.mortbay.jetty</groupId>\r
- <artifactId>maven-jetty-plugin</artifactId>\r
- <configuration>\r
- <scanIntervalSeconds>5</scanIntervalSeconds>\r
- <scanTargetPatterns>\r
- <scanTargetPattern>\r
- <directory>\r
- src/main/webapp/WEB-INF\r
- </directory>\r
- <includes>\r
- <include>**/*.xml</include>\r
- </includes>\r
- </scanTargetPattern>\r
- </scanTargetPatterns>\r
- </configuration>\r
- </plugin>\r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-compiler-plugin</artifactId>\r
- <configuration>\r
- <source>1.5</source>\r
- <target>1.5</target>\r
- </configuration>\r
- </plugin>\r
- <!-- \r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-dependency-plugin</artifactId>\r
- <executions>\r
- <execution>\r
- <id>copy-dependencies</id>\r
- <phase>package</phase>\r
- <goals>\r
- <goal>copy-dependencies</goal>\r
- </goals>\r
- <configuration>\r
- <outputDirectory>\r
- src/main/webapp/WEB-INF/lib\r
- </outputDirectory>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- \r
- </plugin>\r
- -->\r
- </plugins>\r
- </build>\r
- <dependencies>\r
- <dependency>\r
- <groupId>log4j</groupId>\r
- <artifactId>log4j</artifactId>\r
- <version>1.2.14</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>commons-logging</groupId>\r
- <artifactId>commons-logging</artifactId>\r
- <version>1.1.1</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.apache.commons</groupId>\r
- <artifactId>commons-io</artifactId>\r
- <version>1.3.2</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.ws</groupId>\r
- <artifactId>spring-ws-core</artifactId>\r
- <version>1.5.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.ws</groupId>\r
- <artifactId>spring-oxm</artifactId>\r
- <version>1.5.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>javax.servlet</groupId>\r
- <artifactId>servlet-api</artifactId>\r
- <version>2.5</version>\r
- <scope>provided</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit</artifactId>\r
- <version>3.8.2</version>\r
- </dependency>\r
-\r
- <dependency>\r
- <groupId>org.codehaus.castor</groupId>\r
- <artifactId>castor</artifactId>\r
- <version>1.1.2.1</version>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>xerces</groupId>\r
- <artifactId>xerces</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>xerces</groupId>\r
- <artifactId>xercesImpl</artifactId>\r
- <version>2.8.1</version>\r
- </dependency>\r
-\r
- <dependency>\r
- <groupId>org.mortbay.jetty</groupId>\r
- <artifactId>jetty</artifactId>\r
- <version>6.1.9</version>\r
- </dependency>\r
- <!--\r
- <dependency>\r
- <groupId>org.mortbay.jetty</groupId>\r
- <artifactId>jetty-spring</artifactId>\r
- <version>6.1.9</version>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework</groupId>\r
- <artifactId>spring</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- -->\r
- <dependency>\r
- <groupId>javax.xml.soap</groupId>\r
- <artifactId>saaj-api</artifactId>\r
- <version>1.3</version>\r
- <scope>runtime</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.sun.xml.messaging.saaj</groupId>\r
- <artifactId>saaj-impl</artifactId>\r
- <version>1.3</version>\r
- <scope>runtime</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>javax.activation</groupId>\r
- <artifactId>activation</artifactId>\r
- <version>1.1</version>\r
- <scope>runtime</scope>\r
- </dependency>\r
-\r
-\r
- <dependency>\r
- <groupId>org.argeo.slc</groupId>\r
- <artifactId>argeo-slc-core</artifactId>\r
- <version>0.9-SNAPSHOT</version>\r
- </dependency>\r
- </dependencies>\r
- <repositories>\r
- <repository>\r
- <id>central</id>\r
- <url>http://www.argeo.org/maven/proxy</url>\r
- <releases>\r
- <enabled>true</enabled>\r
- <updatePolicy>daily</updatePolicy>\r
- <checksumPolicy>warn</checksumPolicy>\r
- </releases>\r
- </repository>\r
- </repositories>\r
-</project>
\ No newline at end of file
+++ /dev/null
-package org.argeo.slc.core.process;\r
-\r
-import java.util.List;\r
-import java.util.Vector;\r
-\r
-public class SlcExecution {\r
- private String uuid;\r
- private String host;\r
- private String path;\r
- private String type;\r
- private String status;\r
- \r
- private List<SlcExecutionStep> steps = new Vector<SlcExecutionStep>();\r
- \r
- \r
-\r
- public List<SlcExecutionStep> getSteps() {\r
- return steps;\r
- }\r
-\r
- public void setSteps(List<SlcExecutionStep> steps) {\r
- this.steps = steps;\r
- }\r
-\r
- public String getUuid() {\r
- return uuid;\r
- }\r
-\r
- public void setUuid(String uuid) {\r
- this.uuid = uuid;\r
- }\r
-\r
- public String getHost() {\r
- return host;\r
- }\r
-\r
- public void setHost(String host) {\r
- this.host = host;\r
- }\r
-\r
- public String getPath() {\r
- return path;\r
- }\r
-\r
- public void setPath(String path) {\r
- this.path = path;\r
- }\r
-\r
- public String getType() {\r
- return type;\r
- }\r
-\r
- public void setType(String type) {\r
- this.type = type;\r
- }\r
-\r
- public String getStatus() {\r
- return status;\r
- }\r
-\r
- public void setStatus(String status) {\r
- this.status = status;\r
- }\r
-\r
-}\r
+++ /dev/null
-package org.argeo.slc.core.process;\r
-\r
-import java.io.IOException;\r
-import java.io.StringReader;\r
-import java.io.StringWriter;\r
-import java.util.Date;\r
-import java.util.List;\r
-import java.util.Vector;\r
-\r
-import org.apache.commons.io.IOUtils;\r
-\r
-public class SlcExecutionStep {\r
- private String type;\r
- private Date begin;\r
- private List<String> logLines = new Vector<String>();\r
-\r
- public String getType() {\r
- return type;\r
- }\r
-\r
- public void setType(String type) {\r
- this.type = type;\r
- }\r
-\r
- public Date getBegin() {\r
- return begin;\r
- }\r
-\r
- public void setBegin(Date begin) {\r
- this.begin = begin;\r
- }\r
-\r
- public List<String> getLogLines() {\r
- return logLines;\r
- }\r
-\r
- public void setLogLines(List<String> logLines) {\r
- this.logLines = logLines;\r
- }\r
-\r
- public String logAsString() {\r
- StringWriter writer = new StringWriter();\r
- String log = writer.toString();\r
- IOUtils.closeQuietly(writer);\r
- return log;\r
- }\r
-\r
- public void addLog(String log) {\r
- try {\r
- List<String> lines = IOUtils.readLines(new StringReader(log));\r
- logLines.addAll(lines);\r
- } catch (IOException e) {\r
- throw new RuntimeException("Cannot add log", e);\r
- }\r
- }\r
-\r
-}\r
+++ /dev/null
-package org.argeo.slc.core.xml;\r
-\r
-import java.io.IOException;\r
-import java.io.StringWriter;\r
-\r
-import javax.xml.transform.OutputKeys;\r
-import javax.xml.transform.Transformer;\r
-import javax.xml.transform.TransformerConfigurationException;\r
-import javax.xml.transform.TransformerException;\r
-import javax.xml.transform.TransformerFactory;\r
-import javax.xml.transform.dom.DOMSource;\r
-import javax.xml.transform.stream.StreamResult;\r
-\r
-import org.w3c.dom.Document;\r
-\r
-import org.apache.commons.io.IOUtils;\r
-\r
-public class XmlUtils {\r
- private static TransformerFactory transformerFactory = TransformerFactory\r
- .newInstance();\r
-\r
- public static String getDomAsString(Document doc, boolean indent)\r
- throws IOException, TransformerConfigurationException,\r
- TransformerException {\r
- StringWriter out = new StringWriter();\r
- try {\r
- // Create identity transformer\r
- Transformer transformer = transformerFactory.newTransformer();\r
- if (indent) {\r
- transformer.setOutputProperty(OutputKeys.INDENT, "yes");\r
- }\r
- DOMSource source = new DOMSource(doc);\r
- StreamResult result = new StreamResult(out);\r
- transformer.transform(source, result);\r
- return out.toString();\r
- } finally {\r
- IOUtils.closeQuietly(out);\r
- }\r
- }\r
-}\r
+++ /dev/null
-package org.argeo.slc.msg.process;
-
-import org.argeo.slc.core.process.SlcExecution;
-
-public class SlcExecutionRequest {
- private SlcExecution slcExecution;
-
- public SlcExecution getSlcExecution() {
- return slcExecution;
- }
-
- public void setSlcExecution(SlcExecution slcExecution) {
- this.slcExecution = slcExecution;
- }
-
-}
+++ /dev/null
-package org.argeo.slc.msg.process;\r
-\r
-import java.util.List;\r
-import java.util.Vector;\r
-\r
-import org.argeo.slc.core.process.SlcExecutionStep;\r
-\r
-public class SlcExecutionStepsRequest {\r
- private String slcExecutionUuid;\r
- private List<SlcExecutionStep> steps = new Vector<SlcExecutionStep>();\r
-\r
- public String getSlcExecutionUuid() {\r
- return slcExecutionUuid;\r
- }\r
-\r
- public void setSlcExecutionUuid(String slcExecutionUuid) {\r
- this.slcExecutionUuid = slcExecutionUuid;\r
- }\r
-\r
- public List<SlcExecutionStep> getSteps() {\r
- return steps;\r
- }\r
-\r
- public void setSteps(List<SlcExecutionStep> step) {\r
- this.steps = step;\r
- }\r
-\r
- public void addStep(SlcExecutionStep step) {\r
- steps.add(step);\r
- }\r
-}\r
+++ /dev/null
-package org.argeo.slc.ws.process;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.argeo.slc.core.process.SlcExecution;
-import org.argeo.slc.msg.process.SlcExecutionRequest;
-import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint;
-
-public class SlcExecutionRequestEp extends
- AbstractMarshallingPayloadEndpoint {
-
- private Log log = LogFactory.getLog(getClass());
-
- @Override
- protected Object invokeInternal(Object requestObject) throws Exception {
- SlcExecutionRequest msg = (SlcExecutionRequest) requestObject;
- SlcExecution slcExecution = msg.getSlcExecution();
- log.info("Received save or update request fro SlcExecution "
- + slcExecution.getUuid());
- return null;
- }
-
-}
+++ /dev/null
-# Set root logger level to DEBUG and its only appender to A1.\r
-log4j.rootLogger=INFO, console\r
-\r
-## Levels\r
-# Slc\r
-log4j.logger.org.argeo.slc=DEBUG\r
-log4j.logger.argeo.slc=DEBUG\r
-# Spring\r
-log4j.logger.org.springframework=INFO\r
-# Hibernate\r
-log4j.logger.org.hibernate=WARN\r
-#log4j.logger.org.hibernate.SQL=TRACE\r
-#log4j.logger.org.hibernate.tool.hbm2ddl=TRACE\r
-#log4j.logger.org.hibernate.type=TRACE\r
-\r
-\r
-## Appenders\r
-# A1 is set to be a ConsoleAppender.\r
-log4j.appender.console=org.apache.log4j.ConsoleAppender\r
-\r
-# A1 uses PatternLayout.\r
-log4j.appender.console.layout=org.apache.log4j.PatternLayout\r
-log4j.appender.console.layout.ConversionPattern= %-5p %d{ISO8601} %m - %c%n\r
-\r
+++ /dev/null
-<?xml version="1.0"?>
-
-<!DOCTYPE mapping PUBLIC "-//EXOLAB/Castor Mapping DTD Version 1.0//EN" "http://castor.org/mapping.dtd">
-
-<mapping>
- <description>Process objects XML mapping</description>
-
- <class name="org.argeo.slc.msg.process.SlcExecutionStepsRequest"
- auto-complete="true">
- <map-to ns-uri="http://argeo.org/projects/slc/schemas" />
- <field name="steps" collection="vector"
- type="org.argeo.slc.core.process.SlcExecutionStep">
- <bind-xml auto-naming="deriveByClass" location="steps" />
- </field>
- </class>
-
- <class name="org.argeo.slc.msg.process.SlcExecutionRequest"
- auto-complete="true">
- <map-to ns-uri="http://argeo.org/projects/slc/schemas" />
- </class>
-
- <class name="org.argeo.slc.core.process.SlcExecution"
- auto-complete="true">
- <field name="uuid" identity="true">
- <bind-xml node="attribute" />
- </field>
- <field name="steps" collection="vector">
- <bind-xml auto-naming="deriveByClass" location="steps" />
- </field>
- </class>
-
- <class name="org.argeo.slc.core.process.SlcExecutionStep"
- auto-complete="true">
- <field name="logLines" collection="vector" type="string">
- <bind-xml name="log-line" location="log-lines" />
- </field>
- </class>
-</mapping>
\ No newline at end of file
+++ /dev/null
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:slc="http://argeo.org/projects/slc/schemas"
- elementFormDefault="qualified"
- targetNamespace="http://argeo.org/projects/slc/schemas">
- <xs:element name="slc-execution-request">
- <xs:complexType>
- <xs:all>
- <xs:element name="slc-execution"
- type="slc:SlcExecutionType" />
- </xs:all>
- </xs:complexType>
- </xs:element>
- <xs:element name="slc-execution-steps-request">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="steps"
- type="slc:SlcExecutionStepsType" />
- <xs:element name="slc-execution-uuid" type="xs:string" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="SlcExecutionType">
- <xs:all>
- <xs:element name="status" type="xs:string" />
- <xs:element name="type" type="xs:string" />
- <xs:element name="host" type="xs:string" />
- <xs:element name="path" type="xs:string" />
- <xs:element name="steps" minOccurs="0"
- type="slc:SlcExecutionStepsType" />
- </xs:all>
- <xs:attribute name="uuid" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="SlcExecutionStepType">
- <xs:all>
- <xs:element name="type" type="xs:string" />
- <xs:element name="begin" type="xs:dateTime" />
- <xs:element name="log-lines" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="log-line" type="xs:string"
- maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- </xs:complexType>
- <xs:complexType name="SlcExecutionStepsType">
- <xs:sequence>
- <xs:element name="slc-execution-step"
- type="slc:SlcExecutionStepType" maxOccurs="unbounded">
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
-</xs:schema>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
-
- <bean name="slcExecutionRequestEp"
- class="org.argeo.slc.ws.process.SlcExecutionRequestEp">
- <property name="marshaller" ref="marshaller" />
- <property name="unmarshaller" ref="marshaller" />
- </bean>
-
- <bean id="marshaller"
- class="org.springframework.oxm.castor.CastorMarshaller">
- <property name="mappingLocation"
- value="classpath:org/argeo/slc/castor/process/mapping.xml" />
- </bean>
-
- <bean id="endPointMapping"
- class="org.springframework.ws.server.endpoint.mapping.PayloadRootQNameEndpointMapping">
- <property name="mappings">
- <props>
- <prop
- key="{http://argeo.org/projects/slc/schemas}slc-execution-request">
- slcExecutionRequestEp
- </prop>
- </props>
- </property>
- <property name="interceptors">
- <bean
- class="org.springframework.ws.server.endpoint.interceptor.PayloadLoggingInterceptor" />
- </property>
- </bean>
-
- <bean id="slcDefinition"
- class="org.springframework.ws.wsdl.wsdl11.DefaultWsdl11Definition">
- <property name="schema" ref="schema" />
- <property name="portTypeName" value="Slc" />
- <property name="locationUri"
- value="http://localhost:8080/argeo-slc-ws/slcService/" />
- <property name="targetNamespace"
- value="http://argeo.org/projects/slc/definitions" />
- <property name="requestSuffix" value="-request" />
- </bean>
-
- <bean id="schema"
- class="org.springframework.xml.xsd.SimpleXsdSchema">
- <property name="xsd" value="/WEB-INF/slc.xsd" />
- </bean>
-</beans>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
-
- <display-name>Archetype Created Web Application</display-name>
-
- <servlet>
- <servlet-name>spring-ws</servlet-name>
- <servlet-class>org.springframework.ws.transport.http.MessageDispatcherServlet</servlet-class>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>spring-ws</servlet-name>
- <url-pattern>/*</url-pattern>
- </servlet-mapping>
-
-</web-app>
+++ /dev/null
-package org.argeo.slc.core.process;\r
-\r
-import java.io.IOException;\r
-import java.io.StringReader;\r
-import java.io.StringWriter;\r
-import java.text.SimpleDateFormat;\r
-import java.util.UUID;\r
-\r
-import javax.xml.transform.stream.StreamResult;\r
-import javax.xml.transform.stream.StreamSource;\r
-\r
-import org.apache.commons.io.IOUtils;\r
-import org.apache.commons.logging.Log;\r
-import org.apache.commons.logging.LogFactory;\r
-import org.argeo.slc.msg.process.SlcExecutionRequest;\r
-import org.argeo.slc.msg.process.SlcExecutionStepsRequest;\r
-import org.argeo.slc.unit.AbstractSpringTestCase;\r
-import org.springframework.oxm.Marshaller;\r
-import org.springframework.oxm.Unmarshaller;\r
-\r
-public class SlcExecutionCastorTest extends AbstractSpringTestCase {\r
- private Log log = LogFactory.getLog(getClass());\r
-\r
- public void testMarshalling() throws Exception {\r
- Marshaller marshaller = getBean("marshaller");\r
- Unmarshaller unmarshaller = getBean("marshaller");\r
-\r
- SlcExecution slcExec = createSimpleSlcExecution();\r
-\r
- SlcExecutionRequest msgSave = new SlcExecutionRequest();\r
- msgSave.setSlcExecution(slcExec);\r
-\r
- String msgSaveXml = marshallAndLog(marshaller, msgSave);\r
-\r
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");\r
- SlcExecutionStep step0 = new SlcExecutionStep();\r
- step0.setBegin(sdf.parse("2008-04-17 18:21"));\r
- step0.setType("LOG");\r
- step0.addLog("A log message\nand another line");\r
-\r
- SlcExecutionStep step1 = new SlcExecutionStep();\r
- step1.setBegin(sdf.parse("2008-04-17 18:25"));\r
- step1.setType("LOG");\r
- step1.addLog("A nother log message");\r
-\r
- SlcExecutionStepsRequest msgNotif = new SlcExecutionStepsRequest();\r
- msgNotif.addStep(step0);\r
- msgNotif.addStep(step1);\r
- msgNotif.setSlcExecutionUuid(slcExec.getUuid());\r
-\r
- String msgNotifXml = marshallAndLog(marshaller, msgNotif);\r
-\r
- SlcExecutionRequest msgSaveUnm = unmarshall(unmarshaller, msgSaveXml);\r
- assertNotNull(msgSaveUnm);\r
- assertSlcExecution(slcExec, msgSaveUnm.getSlcExecution());\r
-\r
- SlcExecutionStepsRequest msgNotifUnm = unmarshall(unmarshaller,\r
- msgNotifXml);\r
- assertNotNull(msgNotifUnm);\r
- assertEquals(slcExec.getUuid(), msgNotifUnm.getSlcExecutionUuid());\r
- assertEquals(2, msgNotifUnm.getSteps().size());\r
- assertSlcExecutionStep(step0, msgNotifUnm.getSteps().get(0));\r
- assertSlcExecutionStep(step1, msgNotifUnm.getSteps().get(1));\r
-\r
- SlcExecution slcExecUnm = msgSaveUnm.getSlcExecution();\r
- slcExecUnm.getSteps().addAll(msgNotifUnm.getSteps());\r
-\r
- SlcExecutionRequest msgUpdate = new SlcExecutionRequest();\r
- msgUpdate.setSlcExecution(slcExecUnm);\r
- String msgUpdateXml = marshallAndLog(marshaller, msgUpdate);\r
- }\r
-\r
- private String marshallAndLog(Marshaller marshaller, Object obj)\r
- throws IOException {\r
- StringWriter writer = new StringWriter();\r
- marshaller.marshal(obj, new StreamResult(writer));\r
- String xml = writer.toString();\r
- log.info(xml);\r
- IOUtils.closeQuietly(writer);\r
- return xml;\r
- }\r
-\r
- private <T> T unmarshall(Unmarshaller unmarshaller, String xml)\r
- throws IOException {\r
- StringReader reader = new StringReader(xml);\r
- Object obj = unmarshaller.unmarshal(new StreamSource(reader));\r
- IOUtils.closeQuietly(reader);\r
- return (T) obj;\r
- }\r
-\r
- private void assertSlcExecution(SlcExecution expected, SlcExecution reached) {\r
- assertNotNull(reached);\r
- assertEquals(expected.getHost(), reached.getHost());\r
- assertEquals(expected.getPath(), reached.getPath());\r
- assertEquals(expected.getType(), reached.getType());\r
- assertEquals(expected.getStatus(), reached.getStatus());\r
- }\r
-\r
- private void assertSlcExecutionStep(SlcExecutionStep expected,\r
- SlcExecutionStep reached) {\r
- assertNotNull(reached);\r
- assertEquals(expected.getType(), reached.getType());\r
- assertEquals(expected.logAsString(), reached.logAsString());\r
- assertEquals(expected.getBegin(), reached.getBegin());\r
- }\r
-\r
- public static SlcExecution createSimpleSlcExecution() {\r
- SlcExecution slcExec = new SlcExecution();\r
- slcExec.setUuid(UUID.randomUUID().toString());\r
- slcExec.setHost("localhost");\r
- slcExec.setPath("/test");\r
- slcExec.setType("slcAnt");\r
- slcExec.setStatus("STARTED");\r
- return slcExec;\r
- }\r
-}\r
+++ /dev/null
-package org.argeo.slc.core.process;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.argeo.slc.msg.process.SlcExecutionRequest;
-import org.argeo.slc.unit.AbstractSpringTestCase;
-import org.springframework.ws.client.core.WebServiceTemplate;
-
-public class SlcExecutionWsIntegrationTest extends AbstractSpringTestCase {
- private Log log = LogFactory.getLog(getClass());
-
- public void testSendSlcExecutionrequest() {
- WebServiceTemplate template = getBean("webServiceTemplate");
- SlcExecution slcExec = SlcExecutionCastorTest
- .createSimpleSlcExecution();
-
- SlcExecutionRequest req = new SlcExecutionRequest();
- req.setSlcExecution(slcExec);
-
- log.info("Send SlcExecutionRequest for SlcExecution "
- + slcExec.getUuid());
-
- Object resp = template.marshalSendAndReceive(req);
- log.info("Resp: " + resp);
- }
-}
+++ /dev/null
-# Set root logger level to DEBUG and its only appender to A1.\r
-log4j.rootLogger=INFO, console\r
-\r
-## Levels\r
-# Slc\r
-log4j.logger.org.argeo.slc=DEBUG\r
-log4j.logger.argeo.slc=DEBUG\r
-# Spring\r
-log4j.logger.org.springframework=INFO\r
-# Hibernate\r
-log4j.logger.org.hibernate=WARN\r
-#log4j.logger.org.hibernate.SQL=TRACE\r
-#log4j.logger.org.hibernate.tool.hbm2ddl=TRACE\r
-#log4j.logger.org.hibernate.type=TRACE\r
-\r
-\r
-## Appenders\r
-# A1 is set to be a ConsoleAppender.\r
-log4j.appender.console=org.apache.log4j.ConsoleAppender\r
-\r
-# A1 uses PatternLayout.\r
-log4j.appender.console.layout=org.apache.log4j.PatternLayout\r
-log4j.appender.console.layout.ConversionPattern= %-5p %d{ISO8601} %m - %c%n\r
-\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
-
- <bean id="marshaller"
- class="org.springframework.oxm.castor.CastorMarshaller">
- <property name="mappingLocation"
- value="classpath:org/argeo/slc/castor/process/mapping.xml" />
- </bean>
-
- <bean id="messageFactory"
- class="org.springframework.ws.soap.saaj.SaajSoapMessageFactory" />
-
- <bean id="webServiceTemplate"
- class="org.springframework.ws.client.core.WebServiceTemplate">
- <constructor-arg ref="messageFactory" />
- <property name="marshaller" ref="marshaller"/>
- <property name="unmarshaller" ref="marshaller"/>
- <property name="defaultUri"
- value="http://localhost:8080/argeo.slc.ws/slcService/" />
- </bean>
-
-</beans>
\ No newline at end of file