Compare commits
2 Commits
Author | SHA1 | Date |
---|---|---|
Brian Rosenberger | 6d6a0c4640 | |
Brian Rosenberger | f8302c6914 |
59
build.gradle
59
build.gradle
|
@ -8,13 +8,19 @@ repositories {
|
||||||
|
|
||||||
java {
|
java {
|
||||||
toolchain {
|
toolchain {
|
||||||
languageVersion = JavaLanguageVersion.of(8)
|
languageVersion = JavaLanguageVersion.of(17)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
project.version "2.0.2-SNAPSHOT"
|
|
||||||
|
project.version "3.0.0-SNAPSHOT"
|
||||||
group "net.brutex.xservices"
|
group "net.brutex.xservices"
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
}
|
||||||
|
|
||||||
publishing {
|
publishing {
|
||||||
publications {
|
publications {
|
||||||
maven(MavenPublication) {
|
maven(MavenPublication) {
|
||||||
|
@ -69,10 +75,20 @@ tasks.register('createDist', Zip) {Zip t ->
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compileOnly "javax.servlet:javax.servlet-api:4.0.1"
|
compileOnly "jakarta.servlet:jakarta.servlet-api:6.0.0"
|
||||||
compileOnly "javax.ws.rs:javax.ws.rs-api:2.1.1"
|
|
||||||
|
|
||||||
implementation "org.apache.commons:commons-configuration2:2.9.0"
|
implementation "jakarta.ws.rs:jakarta.ws.rs-api:4.0.0"
|
||||||
|
//runtimeOnly "com.sun.ws.rs:"
|
||||||
|
|
||||||
|
implementation "jakarta.xml.ws:jakarta.xml.ws-api:2.3.3"
|
||||||
|
//runtimeOnly "com.sun.xml.ws:jaxws-rt:2.3.3"
|
||||||
|
|
||||||
|
implementation "jakarta.xml.bind:jakarta.xml.bind-api:4.0.2"
|
||||||
|
runtimeOnly "com.sun.xml.bind:jaxb-impl:4.0.2"
|
||||||
|
|
||||||
|
implementation 'jakarta.jws:jakarta.jws-api:3.0.0'
|
||||||
|
|
||||||
|
implementation 'org.apache.commons:commons-configuration2:2.10.1'
|
||||||
implementation "org.apache.commons:commons-lang3:3.12.0"
|
implementation "org.apache.commons:commons-lang3:3.12.0"
|
||||||
implementation "commons-net:commons-net:3.9.0"
|
implementation "commons-net:commons-net:3.9.0"
|
||||||
implementation "commons-beanutils:commons-beanutils:1.9.4"
|
implementation "commons-beanutils:commons-beanutils:1.9.4"
|
||||||
|
@ -89,40 +105,35 @@ dependencies {
|
||||||
|
|
||||||
implementation "org.apache.commons:commons-jcs-core:2.2.1"
|
implementation "org.apache.commons:commons-jcs-core:2.2.1"
|
||||||
|
|
||||||
implementation "org.quartz-scheduler:quartz:2.3.2"
|
implementation "org.quartz-scheduler:quartz:2.5.0-rc1"
|
||||||
|
|
||||||
implementation "org.slf4j:slf4j-api:2.0.7"
|
implementation "org.slf4j:slf4j-api:2.0.7"
|
||||||
runtimeOnly "ch.qos.logback:logback-core:1.3.8"
|
runtimeOnly "ch.qos.logback:logback-core:1.3.8"
|
||||||
runtimeOnly "ch.qos.logback:logback-classic:1.3.8"
|
runtimeOnly "ch.qos.logback:logback-classic:1.3.8"
|
||||||
//runtimeOnly "org.slf4j:slf4j-simple:2.0.7"
|
//runtimeOnly "org.slf4j:slf4j-simple:2.0.7"
|
||||||
|
|
||||||
implementation "org.apache.ws.commons.axiom:axiom:1.2.22"
|
implementation "org.apache.ws.commons.axiom:axiom:1.4.0"
|
||||||
implementation "org.apache.ws.commons.axiom:axiom-impl:1.2.22"
|
implementation "org.apache.ws.commons.axiom:axiom-impl:1.4.0"
|
||||||
|
|
||||||
implementation "org.apache.shiro:shiro-core:1.12.0"
|
implementation 'org.apache.shiro:shiro-jakarta-ee:2.0.1'
|
||||||
implementation "org.apache.shiro:shiro-root:1.12.0"
|
implementation "org.apache.shiro:shiro-web:2.0.1:jakarta"
|
||||||
implementation "org.apache.shiro:shiro-web:1.12.0"
|
|
||||||
|
|
||||||
implementation "org.apache.cxf:cxf:3.4.10"
|
implementation "org.apache.cxf:cxf-rt-transports-http:4.0.4"
|
||||||
implementation "org.apache.cxf:cxf-rt-databinding-aegis:3.2.14"
|
implementation "org.apache.cxf:cxf-rt-databinding-aegis:4.0.4"
|
||||||
|
|
||||||
runtimeOnly "org.apache.cxf:cxf-rt-transports-http:3.2.14"
|
|
||||||
runtimeOnly "org.apache.cxf:cxf-rt-frontend-jaxrs:3.2.14"
|
|
||||||
runtimeOnly "org.apache.cxf:cxf-rt-frontend-jaxws:3.2.14"
|
|
||||||
runtimeOnly "org.apache.cxf:cxf-rt-security:3.2.14"
|
|
||||||
|
|
||||||
|
runtimeOnly "org.apache.cxf:cxf-rt-transports-http:4.0.4"
|
||||||
|
runtimeOnly "org.apache.cxf:cxf-rt-frontend-jaxrs:4.0.4"
|
||||||
|
runtimeOnly "org.apache.cxf:cxf-rt-frontend-jaxws:4.0.4"
|
||||||
|
runtimeOnly "org.apache.cxf:cxf-rt-security:4.0.4"
|
||||||
|
|
||||||
implementation "rhino:js:1.7R2"
|
implementation "rhino:js:1.7R2"
|
||||||
|
|
||||||
implementation "org.springframework:spring-core:5.3.29"
|
implementation 'org.springframework:spring-core:6.1.10'
|
||||||
implementation "org.springframework:spring-context:5.3.29"
|
implementation "org.springframework:spring-context:6.1.10"
|
||||||
implementation "org.springframework:spring-web:5.3.29"
|
implementation "org.springframework:spring-web:6.1.10"
|
||||||
|
|
||||||
implementation "com.h2database:h2:2.2.222"
|
implementation "com.h2database:h2:2.2.222"
|
||||||
|
|
||||||
implementation "com.sun.xml.bind:jaxb-impl:2.3.0.1"
|
|
||||||
implementation "com.sun.xml.bind:jaxb-core:2.3.0.1"
|
|
||||||
|
|
||||||
implementation fileTree(dir: "lib/", includes: ["*.jar"], excludes: ["serena.*.jar"])
|
implementation fileTree(dir: "lib/", includes: ["*.jar"], excludes: ["serena.*.jar"])
|
||||||
compileOnly fileTree(dir: "lib/", includes: ["serena.*.jar"])
|
compileOnly fileTree(dir: "lib/", includes: ["serena.*.jar"])
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -16,9 +16,9 @@
|
||||||
|
|
||||||
package net.brutex.xservices.cmtypes;
|
package net.brutex.xservices.cmtypes;
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import java.net.URL;
|
||||||
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
@XmlType(name="Item")
|
@XmlType(name="Item")
|
||||||
public class ItemType {
|
public class ItemType {
|
||||||
|
|
|
@ -20,8 +20,8 @@ import java.io.Serializable;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
@XmlRootElement
|
@XmlRootElement
|
||||||
public class ItemTypeList implements Serializable {
|
public class ItemTypeList implements Serializable {
|
||||||
|
|
|
@ -20,8 +20,9 @@ package net.brutex.xservices.security;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.shiro.config.Ini;
|
import org.apache.shiro.config.Ini;
|
||||||
|
import org.apache.shiro.lang.util.Nameable;
|
||||||
import org.apache.shiro.realm.text.IniRealm;
|
import org.apache.shiro.realm.text.IniRealm;
|
||||||
import org.apache.shiro.util.Nameable;
|
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.net.URISyntaxException;
|
import java.net.URISyntaxException;
|
||||||
|
@ -39,7 +40,7 @@ import java.net.URISyntaxException;
|
||||||
* The Class XServicesRealm.
|
* The Class XServicesRealm.
|
||||||
*/
|
*/
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class XServicesRealm extends IniRealm implements Nameable {
|
public class XServicesRealm extends IniRealm implements Nameable {
|
||||||
|
|
||||||
|
|
||||||
/** The name. */
|
/** The name. */
|
||||||
|
|
|
@ -16,8 +16,8 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlEnum;
|
import jakarta.xml.bind.annotation.XmlEnum;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
|
@ -21,9 +21,9 @@ import java.util.Date;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlEnum;
|
import jakarta.xml.bind.annotation.XmlEnum;
|
||||||
import javax.xml.bind.annotation.XmlEnumValue;
|
import jakarta.xml.bind.annotation.XmlEnumValue;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -20,8 +20,8 @@ import java.text.SimpleDateFormat;
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -20,8 +20,8 @@ import java.util.Date;
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -15,8 +15,8 @@
|
||||||
*/
|
*/
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlEnum;
|
import jakarta.xml.bind.annotation.XmlEnum;
|
||||||
import javax.xml.bind.annotation.XmlEnumValue;
|
import jakarta.xml.bind.annotation.XmlEnumValue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Different pre-defined date formats.
|
* Different pre-defined date formats.
|
||||||
|
|
|
@ -35,12 +35,12 @@ import java.nio.file.attribute.PosixFileAttributes;
|
||||||
import java.nio.file.attribute.UserPrincipal;
|
import java.nio.file.attribute.UserPrincipal;
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorOrder;
|
import jakarta.xml.bind.annotation.XmlAccessorOrder;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
*
|
*
|
||||||
|
|
|
@ -16,8 +16,8 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
|
@ -23,7 +23,7 @@ import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
* Host information.
|
* Host information.
|
||||||
* @author Brian Rosenberger, bru@brutex.de
|
* @author Brian Rosenberger, bru@brutex.de
|
||||||
*/
|
*/
|
||||||
@javax.xml.bind.annotation.XmlType(name=HostinfoType.XML_NAME, namespace=BrutexNamespaces.WS_XSERVICES)
|
@jakarta.xml.bind.annotation.XmlType(name=HostinfoType.XML_NAME, namespace=BrutexNamespaces.WS_XSERVICES)
|
||||||
public class HostinfoType {
|
public class HostinfoType {
|
||||||
|
|
||||||
public final static String XML_NAME="hostinfo";
|
public final static String XML_NAME="hostinfo";
|
||||||
|
|
|
@ -15,8 +15,8 @@
|
||||||
*/
|
*/
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlEnum;
|
import jakarta.xml.bind.annotation.XmlEnum;
|
||||||
import javax.xml.bind.annotation.XmlEnumValue;
|
import jakarta.xml.bind.annotation.XmlEnumValue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* MIME types for email messages.
|
* MIME types for email messages.
|
||||||
|
|
|
@ -19,8 +19,8 @@ package net.brutex.xservices.types;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
|
|
|
@ -18,8 +18,8 @@ package net.brutex.xservices.types;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
|
|
|
@ -18,8 +18,8 @@ package net.brutex.xservices.types;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generic key/ value pairs.
|
* Generic key/ value pairs.
|
||||||
|
|
|
@ -17,8 +17,8 @@
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.types.ant.AntProperty;
|
import net.brutex.xservices.types.ant.AntProperty;
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
|
|
|
@ -17,10 +17,10 @@ package net.brutex.xservices.types;
|
||||||
|
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,7 @@ package net.brutex.xservices.types;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
@XmlType
|
@XmlType
|
||||||
public class StringReplaceType
|
public class StringReplaceType
|
||||||
|
|
|
@ -19,7 +19,7 @@ package net.brutex.xservices.types;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
|
|
|
@ -16,8 +16,8 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types;
|
package net.brutex.xservices.types;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -17,8 +17,8 @@ package net.brutex.xservices.types;
|
||||||
|
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -3,10 +3,10 @@ package net.brutex.xservices.types.alfevent;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,12 +3,12 @@ package net.brutex.xservices.types.alfevent;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlAttribute;
|
import jakarta.xml.bind.annotation.XmlAttribute;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,10 +3,10 @@ package net.brutex.xservices.types.alfevent;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -5,12 +5,12 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
|
@ -5,11 +5,11 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
|
@ -5,12 +5,12 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
|
@ -5,11 +5,11 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
|
@ -5,11 +5,11 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
|
@ -3,12 +3,12 @@ package net.brutex.xservices.types.alfevent;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlSchemaType;
|
import jakarta.xml.bind.annotation.XmlSchemaType;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.datatype.XMLGregorianCalendar;
|
import javax.xml.datatype.XMLGregorianCalendar;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
|
|
||||||
|
|
|
@ -5,11 +5,11 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlAnyElement;
|
import jakarta.xml.bind.annotation.XmlAnyElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
|
|
|
@ -3,12 +3,12 @@ package net.brutex.xservices.types.alfevent;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlAnyAttribute;
|
import jakarta.xml.bind.annotation.XmlAnyAttribute;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlSchemaType;
|
import jakarta.xml.bind.annotation.XmlSchemaType;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.datatype.XMLGregorianCalendar;
|
import javax.xml.datatype.XMLGregorianCalendar;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types.alfevent;
|
package net.brutex.xservices.types.alfevent;
|
||||||
|
|
||||||
import javax.xml.bind.JAXBElement;
|
import jakarta.xml.bind.JAXBElement;
|
||||||
import javax.xml.bind.annotation.XmlElementDecl;
|
import jakarta.xml.bind.annotation.XmlElementDecl;
|
||||||
import javax.xml.bind.annotation.XmlRegistry;
|
import jakarta.xml.bind.annotation.XmlRegistry;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types.alfevent;
|
package net.brutex.xservices.types.alfevent;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlSchemaType;
|
import jakarta.xml.bind.annotation.XmlSchemaType;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -19,8 +19,8 @@ import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generic key/ value pairs.
|
* Generic key/ value pairs.
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
package net.brutex.xservices.types.ant;
|
package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlEnum;
|
import jakarta.xml.bind.annotation.XmlEnum;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
import org.apache.tools.ant.Project;
|
import org.apache.tools.ant.Project;
|
||||||
|
|
|
@ -19,8 +19,8 @@ package net.brutex.xservices.types.ant;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
import javax.activation.DataHandler;
|
import jakarta.activation.DataHandler;
|
||||||
import javax.xml.bind.annotation.XmlMimeType;
|
import jakarta.xml.bind.annotation.XmlMimeType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -18,8 +18,8 @@ package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Defines a collection of storable objects.
|
* Defines a collection of storable objects.
|
||||||
|
|
|
@ -16,8 +16,8 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types.ant;
|
package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import org.apache.tools.ant.types.selectors.ContainsSelector;
|
import org.apache.tools.ant.types.selectors.ContainsSelector;
|
||||||
import org.apache.tools.ant.types.selectors.FileSelector;
|
import org.apache.tools.ant.types.selectors.FileSelector;
|
||||||
|
|
||||||
|
|
|
@ -19,8 +19,8 @@ package net.brutex.xservices.types.ant;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import net.brutex.xservices.types.DateFormatType;
|
import net.brutex.xservices.types.DateFormatType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
package net.brutex.xservices.types.ant;
|
package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlEnum;
|
import jakarta.xml.bind.annotation.XmlEnum;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
import org.apache.tools.ant.Project;
|
import org.apache.tools.ant.Project;
|
||||||
|
|
|
@ -16,9 +16,9 @@
|
||||||
package net.brutex.xservices.types.ant;
|
package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlEnum;
|
import jakarta.xml.bind.annotation.XmlEnum;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import org.apache.tools.ant.Project;
|
import org.apache.tools.ant.Project;
|
||||||
import org.apache.tools.ant.types.FileSet;
|
import org.apache.tools.ant.types.FileSet;
|
||||||
import org.apache.tools.ant.types.Resource;
|
import org.apache.tools.ant.types.Resource;
|
||||||
|
|
|
@ -16,8 +16,8 @@
|
||||||
|
|
||||||
package net.brutex.xservices.types.ant;
|
package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.bind.annotation.XmlValue;
|
import jakarta.xml.bind.annotation.XmlValue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
package net.brutex.xservices.types.ant;
|
package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
package net.brutex.xservices.types.ant;
|
package net.brutex.xservices.types.ant;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import org.apache.tools.ant.types.selectors.FileSelector;
|
import org.apache.tools.ant.types.selectors.FileSelector;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -12,7 +12,7 @@ import org.apache.commons.configuration2.event.ConfigurationEvent;
|
||||||
import org.apache.commons.configuration2.event.EventListener;
|
import org.apache.commons.configuration2.event.EventListener;
|
||||||
import org.apache.commons.configuration2.ex.ConfigurationException;
|
import org.apache.commons.configuration2.ex.ConfigurationException;
|
||||||
|
|
||||||
import javax.servlet.ServletContext;
|
import jakarta.servlet.ServletContext;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -48,6 +48,7 @@ public class EventmanagerConfiguration {
|
||||||
private int cleaner_interval;
|
private int cleaner_interval;
|
||||||
private List<ALFEventFilter> alf_filter = new ArrayList<>();
|
private List<ALFEventFilter> alf_filter = new ArrayList<>();
|
||||||
private int init_delay;
|
private int init_delay;
|
||||||
|
private long logMaxAge;
|
||||||
|
|
||||||
|
|
||||||
public synchronized EventmanagerConfiguration refreshConfig() {
|
public synchronized EventmanagerConfiguration refreshConfig() {
|
||||||
|
@ -66,6 +67,7 @@ public class EventmanagerConfiguration {
|
||||||
this.jdbc_filedb = config.getString("fdb", "jdbc:h2:mem:lockdb;DB_CLOSE_DELAY=-1;");
|
this.jdbc_filedb = config.getString("fdb", "jdbc:h2:mem:lockdb;DB_CLOSE_DELAY=-1;");
|
||||||
this.isEmitterActive = config.getBoolean("emitter_active", true);
|
this.isEmitterActive = config.getBoolean("emitter_active", true);
|
||||||
this.cleaner_interval = config.getInt("cleaner_interval", 5);
|
this.cleaner_interval = config.getInt("cleaner_interval", 5);
|
||||||
|
this.logMaxAge = config.getLong("logMaxAge", 72);
|
||||||
List<String> lst = config.getList(String.class,"alf_filter", new ArrayList<String>());
|
List<String> lst = config.getList(String.class,"alf_filter", new ArrayList<String>());
|
||||||
|
|
||||||
for ( String c :lst ) {
|
for ( String c :lst ) {
|
||||||
|
|
|
@ -3,6 +3,8 @@ package net.brutex.xservices.util;
|
||||||
import java.sql.*;
|
import java.sql.*;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
|
||||||
|
import lombok.NonNull;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.h2.jdbcx.JdbcConnectionPool;
|
import org.h2.jdbcx.JdbcConnectionPool;
|
||||||
import org.quartz.*;
|
import org.quartz.*;
|
||||||
|
@ -18,6 +20,7 @@ public class LockCleanerJob implements Job, InterruptableJob {
|
||||||
log.debug("LockCleaner is executing now.");
|
log.debug("LockCleaner is executing now.");
|
||||||
final Instant d = Instant.now();
|
final Instant d = Instant.now();
|
||||||
final long ts = d.toEpochMilli();
|
final long ts = d.toEpochMilli();
|
||||||
|
@NonNull
|
||||||
final JdbcConnectionPool mpool = (JdbcConnectionPool) context.getMergedJobDataMap().get("mdbConnection");
|
final JdbcConnectionPool mpool = (JdbcConnectionPool) context.getMergedJobDataMap().get("mdbConnection");
|
||||||
final String deleteMemTable = "DELETE FROM brutex.tbl_lock where btx_validity < " + (ts-5000);
|
final String deleteMemTable = "DELETE FROM brutex.tbl_lock where btx_validity < " + (ts-5000);
|
||||||
|
|
||||||
|
|
|
@ -6,10 +6,10 @@ import org.h2.jdbcx.JdbcConnectionPool;
|
||||||
import org.quartz.*;
|
import org.quartz.*;
|
||||||
import org.quartz.impl.StdSchedulerFactory;
|
import org.quartz.impl.StdSchedulerFactory;
|
||||||
|
|
||||||
import javax.servlet.ServletContext;
|
import jakarta.servlet.ServletContext;
|
||||||
import javax.servlet.ServletContextEvent;
|
import jakarta.servlet.ServletContextEvent;
|
||||||
import javax.servlet.ServletContextListener;
|
import jakarta.servlet.ServletContextListener;
|
||||||
import javax.servlet.annotation.WebListener;
|
import jakarta.servlet.annotation.WebListener;
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.ResultSet;
|
import java.sql.ResultSet;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
|
@ -187,6 +187,7 @@ public class MiscServiceServletContextListener implements ServletContextListener
|
||||||
}
|
}
|
||||||
|
|
||||||
startLockCleaner((Scheduler) context.getAttribute("scheduler"));
|
startLockCleaner((Scheduler) context.getAttribute("scheduler"));
|
||||||
|
startLogRetention((Scheduler) context.getAttribute("scheduler"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getLinkSQL() {
|
private String getLinkSQL() {
|
||||||
|
@ -262,6 +263,32 @@ public class MiscServiceServletContextListener implements ServletContextListener
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void startLogRetention(Scheduler scheduler) {
|
||||||
|
try {
|
||||||
|
if (!scheduler.checkExists(JobKey.jobKey("Retention"))) {
|
||||||
|
JobDetail job2 = JobBuilder.newJob(RetentionJob.class).withIdentity("Retention").build();
|
||||||
|
job2.getJobDataMap().put("fdbConnection", fdbpool);
|
||||||
|
SimpleTrigger t =
|
||||||
|
(SimpleTrigger)
|
||||||
|
newTrigger()
|
||||||
|
.withIdentity("Retention")
|
||||||
|
.withSchedule(
|
||||||
|
SimpleScheduleBuilder.simpleSchedule()
|
||||||
|
.withIntervalInMinutes(60)
|
||||||
|
.repeatForever())
|
||||||
|
.startAt(
|
||||||
|
Date.from(
|
||||||
|
Instant.now()
|
||||||
|
.plus(60, ChronoUnit.MINUTES)))
|
||||||
|
.build();
|
||||||
|
scheduler.scheduleJob(job2, t);
|
||||||
|
}
|
||||||
|
} catch (SchedulerException ex) {
|
||||||
|
log.error("Could not start Retention: {}", ex.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private void readConfiguration(ServletContext ctx) {
|
private void readConfiguration(ServletContext ctx) {
|
||||||
/* Configure ServletContext attributes using configuration object*/
|
/* Configure ServletContext attributes using configuration object*/
|
||||||
EventmanagerConfiguration c = EventmanagerConfiguration.getInstance().refreshConfig();
|
EventmanagerConfiguration c = EventmanagerConfiguration.getInstance().refreshConfig();
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
package net.brutex.xservices.util;
|
||||||
|
|
||||||
|
import java.sql.*;
|
||||||
|
import java.time.Instant;
|
||||||
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.h2.jdbcx.JdbcConnectionPool;
|
||||||
|
import org.quartz.*;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@DisallowConcurrentExecution
|
||||||
|
public class RetentionJob implements Job, InterruptableJob {
|
||||||
|
|
||||||
|
private final AtomicBoolean isInterrupted = new AtomicBoolean(false);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute(JobExecutionContext context) throws JobExecutionException {
|
||||||
|
log.debug("Retention job is executing now for alf event logs.");
|
||||||
|
final Instant d = Instant.now();
|
||||||
|
final long ts = d.toEpochMilli();
|
||||||
|
final JdbcConnectionPool fpool = (JdbcConnectionPool) context.getMergedJobDataMap().get("fdbConnection");
|
||||||
|
final EventmanagerConfiguration conf = (EventmanagerConfiguration) context.getMergedJobDataMap().get(EventmanagerConfiguration.KEY);
|
||||||
|
final String deleteMemTable = "DELETE FROM brutex.tbl_events_all where btx_timestamp < " + (ts-(conf.getLogMaxAge()*60*60*1000));
|
||||||
|
|
||||||
|
try (Connection mcon = fpool.getConnection()) {
|
||||||
|
Statement stmt = mcon.createStatement();
|
||||||
|
stmt.execute(deleteMemTable);
|
||||||
|
int count = stmt.getUpdateCount();
|
||||||
|
log.debug("Retention job deleted '{}' stale locks.", count);
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
log.error("Exception in SQL execution: {}", e.getMessage());
|
||||||
|
throw new JobExecutionException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* Called by the <code>{@link Scheduler}</code> when a user
|
||||||
|
* interrupts the <code>Job</code>.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @throws UnableToInterruptJobException if there is an exception while interrupting the job.
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public synchronized void interrupt() throws UnableToInterruptJobException {
|
||||||
|
isInterrupted.set(true);
|
||||||
|
log.warn("Retention job received an interrupt.");
|
||||||
|
Thread.currentThread().interrupt();
|
||||||
|
}
|
||||||
|
}
|
|
@ -19,9 +19,9 @@ package net.brutex.xservices.util.cache;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
import java.util.concurrent.ThreadFactory;
|
import java.util.concurrent.ThreadFactory;
|
||||||
import javax.servlet.ServletContext;
|
import jakarta.servlet.ServletContext;
|
||||||
import javax.servlet.ServletContextEvent;
|
import jakarta.servlet.ServletContextEvent;
|
||||||
import javax.servlet.ServletContextListener;
|
import jakarta.servlet.ServletContextListener;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
|
|
|
@ -21,8 +21,8 @@ import java.util.ArrayList;
|
||||||
import java.util.Enumeration;
|
import java.util.Enumeration;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import javax.servlet.ServletException;
|
import jakarta.servlet.ServletException;
|
||||||
import javax.servlet.http.HttpServlet;
|
import jakarta.servlet.http.HttpServlet;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.brutex.xservices.types.scm.ObjectFactory;
|
import net.brutex.xservices.types.scm.ObjectFactory;
|
||||||
|
|
|
@ -26,10 +26,6 @@ import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
import javax.servlet.ServletContext;
|
|
||||||
import javax.servlet.ServletException;
|
|
||||||
import javax.servlet.http.HttpServlet;
|
|
||||||
import javax.ws.rs.core.Response;
|
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.brutex.xservices.types.scm.ItemListType;
|
import net.brutex.xservices.types.scm.ItemListType;
|
||||||
|
@ -46,6 +42,9 @@ import org.apache.commons.configuration2.builder.fluent.Configurations;
|
||||||
import org.apache.commons.configuration2.ex.ConfigurationException;
|
import org.apache.commons.configuration2.ex.ConfigurationException;
|
||||||
import org.apache.commons.jcs.access.exception.CacheException;
|
import org.apache.commons.jcs.access.exception.CacheException;
|
||||||
|
|
||||||
|
import jakarta.servlet.ServletException;
|
||||||
|
import jakarta.servlet.http.HttpServlet;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
* @author Brian Rosenberger, bru(at)brutex.de
|
||||||
|
|
|
@ -15,9 +15,9 @@ g * Copyright 2010 Brian Rosenberger (Brutex Network)
|
||||||
*/
|
*/
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import net.brutex.xservices.types.CompressionType;
|
import net.brutex.xservices.types.CompressionType;
|
||||||
|
|
||||||
import net.brutex.xservices.types.ReturnCode;
|
import net.brutex.xservices.types.ReturnCode;
|
||||||
|
|
|
@ -21,11 +21,10 @@ import java.util.Date;
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.datatype.XMLGregorianCalendar;
|
|
||||||
|
|
||||||
import net.brutex.xservices.types.DateFormatType;
|
import net.brutex.xservices.types.DateFormatType;
|
||||||
import net.brutex.xservices.types.DateInfoExtendedType;
|
import net.brutex.xservices.types.DateInfoExtendedType;
|
||||||
|
|
|
@ -16,10 +16,10 @@
|
||||||
|
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
import net.brutex.xservices.types.HostConnection;
|
import net.brutex.xservices.types.HostConnection;
|
||||||
import net.brutex.xservices.types.ReturnCode;
|
import net.brutex.xservices.types.ReturnCode;
|
||||||
|
|
|
@ -18,10 +18,10 @@ package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
import org.apache.cxf.annotations.WSDLDocumentation;
|
import org.apache.cxf.annotations.WSDLDocumentation;
|
||||||
import org.apache.cxf.annotations.WSDLDocumentationCollection;
|
import org.apache.cxf.annotations.WSDLDocumentationCollection;
|
||||||
|
|
|
@ -18,10 +18,10 @@ package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
import net.brutex.xservices.types.ScheduledJob;
|
import net.brutex.xservices.types.ScheduledJob;
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
|
@ -15,10 +15,10 @@
|
||||||
*/
|
*/
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
import net.brutex.xservices.types.HostConnection;
|
import net.brutex.xservices.types.HostConnection;
|
||||||
import net.brutex.xservices.types.MailMimeType;
|
import net.brutex.xservices.types.MailMimeType;
|
||||||
|
|
|
@ -15,10 +15,10 @@
|
||||||
*/
|
*/
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.jws.soap.SOAPBinding;
|
import jakarta.jws.soap.SOAPBinding;
|
||||||
|
|
||||||
import net.brutex.xservices.types.HostConnection;
|
import net.brutex.xservices.types.HostConnection;
|
||||||
import net.brutex.xservices.types.HostinfoType;
|
import net.brutex.xservices.types.HostinfoType;
|
||||||
|
|
|
@ -1,218 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2017 Brian Rosenberger (Brutex Network)
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package net.brutex.xservices.ws;
|
|
||||||
|
|
||||||
import java.util.GregorianCalendar;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
|
||||||
import javax.jws.WebParam;
|
|
||||||
import javax.jws.WebService;
|
|
||||||
import javax.jws.soap.SOAPBinding;
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
|
||||||
|
|
||||||
import org.apache.cxf.annotations.WSDLDocumentation;
|
|
||||||
|
|
||||||
import net.brutex.mgmt.api.xml.AnyEntity;
|
|
||||||
import net.brutex.mgmt.api.xml.Customer;
|
|
||||||
import net.brutex.mgmt.api.xml.Project;
|
|
||||||
import net.brutex.mgmt.api.xml.TimesheetEntry;
|
|
||||||
import net.brutex.mgmt.api.xml.TimesheetFilter;
|
|
||||||
import net.brutex.mgmt.api.xml.User;
|
|
||||||
import net.brutex.xservices.types.ant.AttachmentType;
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* OpenAir proxy services
|
|
||||||
* @author Brian Rosenberger
|
|
||||||
* @since 20160531
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
@WebService(targetNamespace = BrutexNamespaces.WS_XSERVICES)
|
|
||||||
public interface OpenAirProxyService {
|
|
||||||
|
|
||||||
public static final String SERVICE_NAME = "OpenAirProxyService";
|
|
||||||
final String OPERATION_GETTIMEENTRIES = "getTimeentries";
|
|
||||||
final String OPERATION_GETEXCELTIMESHEET = "getExcelTimesheet";
|
|
||||||
final String OPERATION_GETEXCELTIMESHEET2 = "getExcelTimesheet2";
|
|
||||||
final String OPERATION_GETPROJECTBYEXTERNALID = "getProjectsByExternalId";
|
|
||||||
final String OPERATION_GETPROJECTBYOPPID = "getProjectsByOppId";
|
|
||||||
final String OPERATION_GETCUSTOMERBYID = "getCustomerById";
|
|
||||||
final String OPERATION_GETUSERBYID = "getUserById";
|
|
||||||
final String OPERATION_GETUSERBYUSERNAME = "getUserByUsername";
|
|
||||||
final String OPERATION_GETANYOBJECT = "getAnyObject";
|
|
||||||
final String OPERATION_GETUPDATEDCOMPANIES = "getUpdatedCustomer";
|
|
||||||
final String OPERATION_GETUPDATEDPROJECTS = "getUpdatedProject";
|
|
||||||
|
|
||||||
|
|
||||||
final String PARAM_PROJECTID = "oa_projectid";
|
|
||||||
final String PARAM_CUSTOMERID = "oa_customerid";
|
|
||||||
final String PARAM_USERID = "oa_userid";
|
|
||||||
final String PARAM_USERNAME = "oa_username";
|
|
||||||
final String PARAM_TEMPLATE ="template";
|
|
||||||
final String PARAM_STARTDATE = "startdate";
|
|
||||||
final String PARAM_ENDDATE = "enddate";
|
|
||||||
final String PARAM_ENTRYLIST = "timeentries";
|
|
||||||
final String PARAM_EXTERNALID = "externalid";
|
|
||||||
final String PARAM_OPPID = "oppid";
|
|
||||||
final String PARAM_INCLUDENONBILLABLE = "includeNonBillable";
|
|
||||||
final String PARAM_OBJECTTYPE = "objecttype";
|
|
||||||
final String PARAM_QUERIES = "queries";
|
|
||||||
final String PARAM_DATE = "datetime";
|
|
||||||
final String PARAM_OFFSET = "offset_minutes";
|
|
||||||
final String PARAM_TIMESHEETSTATUS = "timesheetstatus";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a list of time entries.
|
|
||||||
*
|
|
||||||
* @return List of time entries
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETTIMEENTRIES)
|
|
||||||
@WSDLDocumentation(value="Get list of time entries")
|
|
||||||
public abstract List<TimesheetEntry> getTimeEntryList(
|
|
||||||
@WebParam(name=PARAM_PROJECTID) int oa_projectid,
|
|
||||||
@WebParam(name=PARAM_CUSTOMERID) int oa_customerid,
|
|
||||||
@WebParam(name=PARAM_USERID) int oa_userid,
|
|
||||||
@WebParam(name=PARAM_STARTDATE) GregorianCalendar startdate,
|
|
||||||
@WebParam(name=PARAM_ENDDATE) GregorianCalendar enddate,
|
|
||||||
@WebParam(name=PARAM_INCLUDENONBILLABLE) boolean includeNonBillable,
|
|
||||||
@WebParam(name=PARAM_TIMESHEETSTATUS) java.util.List<TimesheetFilter.TimesheetFilterType> filter)
|
|
||||||
throws XServicesFault;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get an excel time sheet file.
|
|
||||||
*
|
|
||||||
* @return List of time entries
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETEXCELTIMESHEET)
|
|
||||||
@WSDLDocumentation(value="Get an excel time sheet file.")
|
|
||||||
public abstract AttachmentType getExcelTimesheet(
|
|
||||||
@WebParam(name=PARAM_PROJECTID) int oa_projectid,
|
|
||||||
@WebParam(name=PARAM_CUSTOMERID) int oa_customerid,
|
|
||||||
@WebParam(name=PARAM_USERID) int oa_userid,
|
|
||||||
@WebParam(name=PARAM_STARTDATE) GregorianCalendar startdate,
|
|
||||||
@WebParam(name=PARAM_ENDDATE) GregorianCalendar enddate,
|
|
||||||
@WebParam(name=PARAM_INCLUDENONBILLABLE) boolean includeNonBillable,
|
|
||||||
@WebParam(name=PARAM_TIMESHEETSTATUS) java.util.List<TimesheetFilter.TimesheetFilterType> filter,
|
|
||||||
@WebParam(name=PARAM_TEMPLATE) AttachmentType templatefile) throws XServicesFault;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get an excel time sheet file.
|
|
||||||
*
|
|
||||||
* @return List of time entries
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETEXCELTIMESHEET2)
|
|
||||||
@WSDLDocumentation(value="Get an excel time sheet file.")
|
|
||||||
public abstract AttachmentType getExcelTimesheet2(
|
|
||||||
@WebParam(name=PARAM_ENTRYLIST) List<TimesheetEntry> entries,
|
|
||||||
@WebParam(name=PARAM_INCLUDENONBILLABLE) boolean includeNonBillable,
|
|
||||||
@WebParam(name=PARAM_TEMPLATE) AttachmentType templatefile) throws XServicesFault;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a project from External Id
|
|
||||||
*
|
|
||||||
* @return List of projects with this ExternalId
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETPROJECTBYEXTERNALID)
|
|
||||||
@WSDLDocumentation(value="Get a project from External Id")
|
|
||||||
public abstract List<Project> getProjectsByExternalId(
|
|
||||||
@WebParam(name=PARAM_EXTERNALID) String externalid) throws XServicesFault;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a project from Opportunity
|
|
||||||
*
|
|
||||||
* @return List of projects with this Opportunity
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETPROJECTBYOPPID)
|
|
||||||
@WSDLDocumentation(value="Get a project from Opportunity Id")
|
|
||||||
public abstract List<Project> getProjectsByOppId(
|
|
||||||
@WebParam(name=PARAM_OPPID) String oppid) throws XServicesFault;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a customer by its ID
|
|
||||||
*
|
|
||||||
* @return Customer object
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETCUSTOMERBYID)
|
|
||||||
@WSDLDocumentation(value="Get a customer by its Id")
|
|
||||||
public abstract Customer getCustomerById(
|
|
||||||
@WebParam(name=PARAM_CUSTOMERID) int customerid) throws XServicesFault;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a user record by its ID
|
|
||||||
*
|
|
||||||
* @return user object
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETUSERBYID)
|
|
||||||
@WSDLDocumentation(value="Get a user by its Id")
|
|
||||||
public abstract User getUserById(
|
|
||||||
@WebParam(name=PARAM_USERID) int userid) throws XServicesFault;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a user record by its username
|
|
||||||
*
|
|
||||||
* @return user object
|
|
||||||
* @throws XServicesFault
|
|
||||||
*/
|
|
||||||
@WebMethod(operationName=OPERATION_GETUSERBYUSERNAME)
|
|
||||||
@WSDLDocumentation(value="Get a user by its username")
|
|
||||||
public abstract User getUserByUsername(
|
|
||||||
@WebParam(name=PARAM_USERNAME) String username) throws XServicesFault;
|
|
||||||
|
|
||||||
@WebMethod(operationName=OPERATION_GETANYOBJECT)
|
|
||||||
@WSDLDocumentation(value="Get any Object by Query")
|
|
||||||
public abstract List<AnyEntity> getAnyObject(
|
|
||||||
@WebParam(name=PARAM_OBJECTTYPE) @XmlElement(required=true) String objecttype,
|
|
||||||
@WebParam(name=PARAM_QUERIES) List<QueryParameter> queries) throws XServicesFault;
|
|
||||||
|
|
||||||
|
|
||||||
@WebMethod(operationName=OPERATION_GETUPDATEDCOMPANIES)
|
|
||||||
@WSDLDocumentation(value="Get updated customers")
|
|
||||||
public abstract List<Customer> getUpdatedCustomer(
|
|
||||||
@WebParam(name=PARAM_DATE) @XmlElement(required=true) GregorianCalendar date,
|
|
||||||
@WebParam(name=PARAM_OFFSET) @XmlElement(required=true) int offset)
|
|
||||||
throws XServicesFault;
|
|
||||||
|
|
||||||
@WebMethod(operationName=OPERATION_GETUPDATEDPROJECTS)
|
|
||||||
@WSDLDocumentation(value="Get updated projects")
|
|
||||||
|
|
||||||
public abstract List<Project> getUpdatedProjects(
|
|
||||||
@WebParam(name=PARAM_DATE) @XmlElement(required=true) GregorianCalendar date,
|
|
||||||
@WebParam(name=PARAM_OFFSET) @XmlElement(required=true) int offset)
|
|
||||||
throws XServicesFault;
|
|
||||||
|
|
||||||
|
|
||||||
public class QueryParameter {
|
|
||||||
@XmlElement(required=true)
|
|
||||||
public String field;
|
|
||||||
@XmlElement(required=true)
|
|
||||||
public String value;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -16,9 +16,9 @@
|
||||||
|
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import net.brutex.xservices.types.TargetNodeType;
|
import net.brutex.xservices.types.TargetNodeType;
|
||||||
import net.brutex.xservices.types.ant.AttachmentType;
|
import net.brutex.xservices.types.ant.AttachmentType;
|
||||||
import net.brutex.xservices.types.ant.CollectionType;
|
import net.brutex.xservices.types.ant.CollectionType;
|
||||||
|
|
|
@ -16,10 +16,10 @@
|
||||||
|
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
import net.brutex.xservices.types.StringMatchType;
|
import net.brutex.xservices.types.StringMatchType;
|
||||||
import net.brutex.xservices.types.StringReplaceType;
|
import net.brutex.xservices.types.StringReplaceType;
|
||||||
|
|
|
@ -17,13 +17,13 @@
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import java.util.GregorianCalendar;
|
import java.util.GregorianCalendar;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
import javax.xml.bind.annotation.XmlType;
|
import jakarta.xml.bind.annotation.XmlType;
|
||||||
import javax.xml.datatype.DatatypeConfigurationException;
|
import javax.xml.datatype.DatatypeConfigurationException;
|
||||||
import javax.xml.datatype.DatatypeFactory;
|
import javax.xml.datatype.DatatypeFactory;
|
||||||
import javax.xml.datatype.XMLGregorianCalendar;
|
import javax.xml.datatype.XMLGregorianCalendar;
|
||||||
import javax.xml.ws.WebFault;
|
import jakarta.xml.ws.WebFault;
|
||||||
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
||||||
|
|
|
@ -16,10 +16,10 @@
|
||||||
|
|
||||||
package net.brutex.xservices.ws;
|
package net.brutex.xservices.ws;
|
||||||
|
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
import net.brutex.xservices.types.AttributeType;
|
import net.brutex.xservices.types.AttributeType;
|
||||||
import net.brutex.xservices.types.NamespaceListType;
|
import net.brutex.xservices.types.NamespaceListType;
|
||||||
|
|
|
@ -16,9 +16,9 @@
|
||||||
package net.brutex.xservices.ws.impl;
|
package net.brutex.xservices.ws.impl;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import net.brutex.xservices.types.CompressionType;
|
import net.brutex.xservices.types.CompressionType;
|
||||||
import net.brutex.xservices.types.ReturnCode;
|
import net.brutex.xservices.types.ReturnCode;
|
||||||
import net.brutex.xservices.types.ant.ArchiveResource;
|
import net.brutex.xservices.types.ant.ArchiveResource;
|
||||||
|
|
|
@ -24,7 +24,7 @@ import java.util.GregorianCalendar;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
|
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import net.brutex.xservices.types.DateFormatType;
|
import net.brutex.xservices.types.DateFormatType;
|
||||||
import net.brutex.xservices.types.DateInfoExtendedType;
|
import net.brutex.xservices.types.DateInfoExtendedType;
|
||||||
import net.brutex.xservices.types.DateInfoType;
|
import net.brutex.xservices.types.DateInfoType;
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
package net.brutex.xservices.ws.impl;
|
package net.brutex.xservices.ws.impl;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import net.brutex.xservices.types.HostConnection;
|
import net.brutex.xservices.types.HostConnection;
|
||||||
import net.brutex.xservices.types.ReturnCode;
|
import net.brutex.xservices.types.ReturnCode;
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
import net.brutex.xservices.util.BrutexNamespaces;
|
||||||
|
|
|
@ -22,10 +22,10 @@ import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.activation.DataHandler;
|
import jakarta.activation.DataHandler;
|
||||||
import javax.jws.WebMethod;
|
import jakarta.jws.WebMethod;
|
||||||
import javax.jws.WebParam;
|
import jakarta.jws.WebParam;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
|
|
||||||
import net.brutex.xservices.types.ReplacePattern;
|
import net.brutex.xservices.types.ReplacePattern;
|
||||||
import net.brutex.xservices.types.ReturnCode;
|
import net.brutex.xservices.types.ReturnCode;
|
||||||
|
|
|
@ -24,7 +24,7 @@ import java.util.Set;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
|
|
||||||
import org.quartz.*;
|
import org.quartz.*;
|
||||||
import org.quartz.impl.StdSchedulerFactory;
|
import org.quartz.impl.StdSchedulerFactory;
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
package net.brutex.xservices.ws.impl;
|
package net.brutex.xservices.ws.impl;
|
||||||
|
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
|
|
||||||
import net.brutex.xservices.types.HostConnection;
|
import net.brutex.xservices.types.HostConnection;
|
||||||
import net.brutex.xservices.types.MailMimeType;
|
import net.brutex.xservices.types.MailMimeType;
|
||||||
|
|
|
@ -18,7 +18,6 @@ package net.brutex.xservices.ws.impl;
|
||||||
|
|
||||||
import static org.quartz.TriggerBuilder.newTrigger;
|
import static org.quartz.TriggerBuilder.newTrigger;
|
||||||
|
|
||||||
import java.io.StringReader;
|
|
||||||
import java.io.StringWriter;
|
import java.io.StringWriter;
|
||||||
import java.math.BigInteger;
|
import java.math.BigInteger;
|
||||||
import java.sql.*;
|
import java.sql.*;
|
||||||
|
@ -26,15 +25,15 @@ import java.time.Instant;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.concurrent.atomic.AtomicLong;
|
import java.util.concurrent.atomic.AtomicLong;
|
||||||
import javax.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.servlet.ServletContext;
|
import jakarta.servlet.ServletContext;
|
||||||
import javax.xml.bind.JAXBContext;
|
import jakarta.xml.bind.JAXBContext;
|
||||||
import javax.xml.bind.JAXBElement;
|
import jakarta.xml.bind.JAXBElement;
|
||||||
import javax.xml.bind.JAXBException;
|
import jakarta.xml.bind.JAXBException;
|
||||||
import javax.xml.bind.Marshaller;
|
import jakarta.xml.bind.Marshaller;
|
||||||
import javax.xml.ws.WebServiceContext;
|
import jakarta.xml.ws.WebServiceContext;
|
||||||
import javax.xml.ws.handler.MessageContext;
|
import jakarta.xml.ws.handler.MessageContext;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.brutex.xservices.types.*;
|
import net.brutex.xservices.types.*;
|
||||||
import net.brutex.xservices.types.alfevent.ALFEventResponseType;
|
import net.brutex.xservices.types.alfevent.ALFEventResponseType;
|
||||||
|
|
|
@ -1,492 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2017 Brian Rosenberger (Brutex Network)
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package net.brutex.xservices.ws.impl;
|
|
||||||
|
|
||||||
import java.io.BufferedInputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStreamReader;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.time.format.DateTimeFormatter;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.GregorianCalendar;
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import javax.activation.DataHandler;
|
|
||||||
import javax.jws.WebParam;
|
|
||||||
import javax.jws.WebService;
|
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.apache.commons.configuration2.ex.ConfigurationException;
|
|
||||||
import org.apache.commons.configuration2.PropertiesConfiguration;
|
|
||||||
import org.apache.commons.jcs.JCS;
|
|
||||||
import org.apache.commons.jcs.access.exception.CacheException;
|
|
||||||
|
|
||||||
|
|
||||||
import net.brutex.DocBuilder.DocBuilder;
|
|
||||||
import net.brutex.mgmt.api.generator.JITCompiler;
|
|
||||||
import net.brutex.mgmt.api.xml.AnyEntity;
|
|
||||||
import net.brutex.mgmt.api.xml.Customer;
|
|
||||||
import net.brutex.mgmt.api.xml.DateFilter;
|
|
||||||
import net.brutex.mgmt.api.xml.Project;
|
|
||||||
import net.brutex.mgmt.api.xml.Query;
|
|
||||||
import net.brutex.mgmt.api.xml.Query.BOOL;
|
|
||||||
import net.brutex.mgmt.api.xml.QueryEntity;
|
|
||||||
import net.brutex.mgmt.api.xml.StringEntity;
|
|
||||||
import net.brutex.mgmt.api.xml.TimesheetEntry;
|
|
||||||
import net.brutex.mgmt.api.xml.TimesheetFilter;
|
|
||||||
import net.brutex.mgmt.api.xml.User;
|
|
||||||
import net.brutex.mgmt.openair.OpenAirRestConnection;
|
|
||||||
import net.brutex.xservices.types.ant.AttachmentType;
|
|
||||||
import net.brutex.xservices.util.BrutexNamespaces;
|
|
||||||
import net.brutex.xservices.ws.OpenAirProxyService;
|
|
||||||
import net.brutex.xservices.ws.XServicesFault;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Brian Rosenberger
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
@Slf4j
|
|
||||||
@WebService(targetNamespace = BrutexNamespaces.WS_XSERVICES, endpointInterface = "net.brutex.xservices.ws.OpenAirProxyService", serviceName = OpenAirProxyService.SERVICE_NAME)
|
|
||||||
public class OpenAirProxyServiceImpl implements OpenAirProxyService {
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* net.brutex.xservices.ws.OpenAirProxyService#getTimeEntryList(java.lang.
|
|
||||||
* String)
|
|
||||||
*/
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<TimesheetEntry> getTimeEntryList(int oa_projectid, int oa_customerid, int oa_userid,
|
|
||||||
GregorianCalendar startdate, GregorianCalendar enddate, boolean includeNonBillable, List<TimesheetFilter.TimesheetFilterType> filter) throws XServicesFault {
|
|
||||||
return getTimeEntries(oa_projectid, oa_customerid, oa_userid, startdate, enddate, includeNonBillable, filter);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private List<TimesheetEntry> getTimeEntries(final int oa_projectid, final int oa_customerid, final int oa_userid,
|
|
||||||
final GregorianCalendar fromDate, final GregorianCalendar toDate, final boolean includeNonBillable, List<TimesheetFilter.TimesheetFilterType> filter)
|
|
||||||
throws XServicesFault {
|
|
||||||
|
|
||||||
List<TimesheetEntry> resultlist = new ArrayList<TimesheetEntry>();
|
|
||||||
|
|
||||||
if( filter != null && filter.size()>0) {
|
|
||||||
for( TimesheetFilter.TimesheetFilterType f : filter) {
|
|
||||||
resultlist.addAll(
|
|
||||||
getTimeEntriesRAW(oa_projectid, oa_customerid, oa_userid, fromDate, toDate, includeNonBillable, f)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
resultlist = getTimeEntriesRAW(oa_projectid, oa_customerid, oa_userid, fromDate, toDate, includeNonBillable, null);
|
|
||||||
}
|
|
||||||
return resultlist;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private List<TimesheetEntry> getTimeEntriesRAW(final int oa_projectid, final int oa_customerid, final int oa_userid,
|
|
||||||
final GregorianCalendar fromDate, final GregorianCalendar toDate, final boolean includeNonBillable, TimesheetFilter.TimesheetFilterType filter)
|
|
||||||
throws XServicesFault {
|
|
||||||
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
|
|
||||||
Query query = new Query(TimesheetEntry.class);
|
|
||||||
|
|
||||||
if (oa_projectid > 0) {
|
|
||||||
query.addQuery(new QueryEntity("projectid", new StringEntity(String.valueOf(oa_projectid))), BOOL.AND);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (oa_customerid > 0) {
|
|
||||||
query.addQuery(new QueryEntity("customerid", new StringEntity(String.valueOf(oa_customerid))), BOOL.AND);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (oa_userid > 0) {
|
|
||||||
query.addQuery(new QueryEntity("userid", new StringEntity(String.valueOf(oa_userid))), BOOL.AND);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fromDate != null) {
|
|
||||||
//adjust
|
|
||||||
fromDate.add(GregorianCalendar.DAY_OF_MONTH, -1);
|
|
||||||
DateFilter date = new DateFilter("date");
|
|
||||||
date.setStartdate(fromDate);
|
|
||||||
if (toDate != null) {
|
|
||||||
toDate.add(GregorianCalendar.DAY_OF_MONTH, 1);
|
|
||||||
date.setEnddate(toDate);
|
|
||||||
}
|
|
||||||
query.addFilter(date);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (filter != null) {
|
|
||||||
query.addFilter(new TimesheetFilter(filter));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
List<TimesheetEntry> timesheets = (List<TimesheetEntry>) con.getEntitiesByQuery(query);
|
|
||||||
if (!includeNonBillable)
|
|
||||||
timesheets = filterBillableOnly(timesheets);
|
|
||||||
return timesheets;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Query q = new Query(Project.class);
|
|
||||||
*
|
|
||||||
* //QueryEntity qe = new QueryEntity("Portfolio__c", new
|
|
||||||
* StringEntity("Serena")); QueryEntity qe = new QueryEntity("id", new
|
|
||||||
* StringEntity("19738")); //DWP Bank QueryEntity qe2 = new
|
|
||||||
* QueryEntity("id", new StringEntity("19737")); //PNW //QueryEntity qe2
|
|
||||||
* = new QueryEntity("customer_name", new StringEntity(
|
|
||||||
* "Gerencia Informatica Seguridad Social (GISS)"));
|
|
||||||
*
|
|
||||||
* q.addQuery(qe, Query.BOOL.OR); q.addQuery(qe2, Query.BOOL.OR);
|
|
||||||
*
|
|
||||||
* List<Project> list = (List<Project>) con.getEntitiesByQuery(q, true);
|
|
||||||
*
|
|
||||||
* /*for (Project p : list) {
|
|
||||||
* Logger.getLogger("TestMain").debug(p.getName());
|
|
||||||
* System.out.println(p.toString()); }
|
|
||||||
*/
|
|
||||||
// User user = con.getUserByLogin("brosenberger");
|
|
||||||
|
|
||||||
// System.out.println(user.toString());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public AttachmentType getExcelTimesheet(int oa_projectid, int oa_customerid, int oa_userid,
|
|
||||||
GregorianCalendar startdate, GregorianCalendar enddate, boolean includeNonBillable, List<TimesheetFilter.TimesheetFilterType> filter, AttachmentType template)
|
|
||||||
throws XServicesFault {
|
|
||||||
|
|
||||||
List<TimesheetEntry> list = getTimeEntries(oa_projectid, oa_customerid, oa_userid, startdate, enddate,
|
|
||||||
includeNonBillable, filter);
|
|
||||||
AttachmentType t = getExcelTimesheet2(list, includeNonBillable, template);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Try to set a time sheet name:
|
|
||||||
* SignOff <From> - <To> <Project> - <Id> <User>.xlxs
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
String filename = "SignOff";
|
|
||||||
if(startdate!=null) {
|
|
||||||
filename += "_";
|
|
||||||
filename += startdate.toZonedDateTime()
|
|
||||||
.format( DateTimeFormatter.ofPattern( "uuuu-MM-dd" ) );
|
|
||||||
}
|
|
||||||
if(enddate!=null) {
|
|
||||||
filename += "-";
|
|
||||||
filename += enddate.toZonedDateTime()
|
|
||||||
.format( DateTimeFormatter.ofPattern( "uuuu-MM-dd" ) );
|
|
||||||
}
|
|
||||||
if(oa_projectid > 0) {
|
|
||||||
//Project spezifiziert
|
|
||||||
filename += "_";
|
|
||||||
if(list.size()>0) {
|
|
||||||
TimesheetEntry anyentry = list.get(0);
|
|
||||||
filename += anyentry.getProject().getName();
|
|
||||||
} else {
|
|
||||||
filename +="Emtpy";
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
//Mehrere Projekte, gibt es vielleicht nur eins?
|
|
||||||
int i = 0;
|
|
||||||
Set<String> namen = new HashSet<String>();
|
|
||||||
for (TimesheetEntry entry : list) {
|
|
||||||
namen.add( entry.getProject().getId() );
|
|
||||||
}
|
|
||||||
if(namen.size()>1) {
|
|
||||||
filename += "_Multiple_Projects";
|
|
||||||
} else {
|
|
||||||
if(list.size()>0) {
|
|
||||||
TimesheetEntry anyentry = list.get(0);
|
|
||||||
filename += anyentry.getProject().getName();
|
|
||||||
} else {
|
|
||||||
filename +="_Emtpy";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//Username
|
|
||||||
if(oa_userid>0) {
|
|
||||||
filename += "_";
|
|
||||||
if(list.size()>0) {
|
|
||||||
TimesheetEntry anyentry = list.get(0);
|
|
||||||
filename += anyentry.getUser().getName();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
filename = filename.replace(" ","_");
|
|
||||||
filename = filename.replaceAll("[^A-Za-z0-9_\\-]", "");
|
|
||||||
filename += ".xlsx";
|
|
||||||
t.setFilename(filename);
|
|
||||||
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public AttachmentType getExcelTimesheet2(List<TimesheetEntry> entries, boolean includeNonBillable,
|
|
||||||
AttachmentType templatefile) throws XServicesFault {
|
|
||||||
DocBuilder builder = new DocBuilder();
|
|
||||||
DataHandler dh;
|
|
||||||
if (templatefile != null) {
|
|
||||||
dh = builder.createTimesheet(entries, templatefile.getContent());
|
|
||||||
} else {
|
|
||||||
dh = builder.createTimesheet(entries, null);
|
|
||||||
}
|
|
||||||
AttachmentType t = new AttachmentType();
|
|
||||||
t.setContent(dh);
|
|
||||||
|
|
||||||
t.setFilename("timesheet.xlsx");
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<Project> getProjectsByExternalId(String externalid) throws XServicesFault {
|
|
||||||
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
|
|
||||||
Query query = new Query(Project.class);
|
|
||||||
|
|
||||||
if (externalid.length() > 0) {
|
|
||||||
query.addQuery(new QueryEntity("externalid", new StringEntity(externalid)), BOOL.AND);
|
|
||||||
}
|
|
||||||
|
|
||||||
List<Project> projects = (List<Project>) con.getEntitiesByQuery(query);
|
|
||||||
|
|
||||||
return projects;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* net.brutex.xservices.ws.OpenAirProxyService#getProjectsByOppId(java.lang.
|
|
||||||
* String)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public List<Project> getProjectsByOppId(String oppid) throws XServicesFault {
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
|
|
||||||
Query query = new Query(Project.class);
|
|
||||||
|
|
||||||
if (oppid.length() > 0) {
|
|
||||||
query.addQuery(new QueryEntity("opportunity_num__c", new StringEntity(oppid)), BOOL.OR);
|
|
||||||
query.addQuery(new QueryEntity("SAP_Oracle_Number__c", new StringEntity(oppid)), BOOL.OR);
|
|
||||||
}
|
|
||||||
|
|
||||||
List<Project> projects = (List<Project>) con.getEntitiesByQuery(query);
|
|
||||||
|
|
||||||
return projects;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Customer getCustomerById(int customerid) throws XServicesFault {
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
|
|
||||||
Query query = new Query(Customer.class);
|
|
||||||
|
|
||||||
if (customerid > 0) {
|
|
||||||
query.addQuery(new QueryEntity("id", new StringEntity(String.valueOf(customerid))), BOOL.AND);
|
|
||||||
}
|
|
||||||
|
|
||||||
List<Customer> customer = (List<Customer>) con.getEntitiesByQuery(query);
|
|
||||||
|
|
||||||
if (customer.isEmpty()) {
|
|
||||||
return null;
|
|
||||||
} else {
|
|
||||||
return customer.get(0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see net.brutex.xservices.ws.OpenAirProxyService#getUpdatedCustomer(java.util.GregorianCalendar)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public List<Customer> getUpdatedCustomer(GregorianCalendar date, int offset) throws XServicesFault {
|
|
||||||
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
|
|
||||||
Query query = new Query(Customer.class);
|
|
||||||
//query.addQuery("Address_Country", new StringEntity(search), BOOL.AND);
|
|
||||||
query.addQuery("active", new StringEntity("1"), BOOL.AND);
|
|
||||||
|
|
||||||
DateFilter datefilter = new DateFilter("updated");
|
|
||||||
date.add(GregorianCalendar.MINUTE, -1*offset);
|
|
||||||
datefilter.setStartdate(date);
|
|
||||||
query.addFilter(datefilter);
|
|
||||||
|
|
||||||
List<Customer> customer = (List<Customer>) con.getEntitiesByQuery(query);
|
|
||||||
|
|
||||||
if (customer.isEmpty()) {
|
|
||||||
return null;
|
|
||||||
} else {
|
|
||||||
return customer;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<Project> getUpdatedProjects(GregorianCalendar date, int offset) throws XServicesFault {
|
|
||||||
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
|
|
||||||
Query query = new Query(Project.class);
|
|
||||||
//query.addQuery("Address_Country", new StringEntity(search), BOOL.AND);
|
|
||||||
query.addQuery("Stage", new StringEntity("3"), BOOL.AND);
|
|
||||||
|
|
||||||
DateFilter datefilter = new DateFilter("updated");
|
|
||||||
date.add(GregorianCalendar.MINUTE, -1*offset);
|
|
||||||
datefilter.setStartdate(date);
|
|
||||||
query.addFilter(datefilter);
|
|
||||||
|
|
||||||
List<Project> project = (List<Project>) con.getEntitiesByQuery(query);
|
|
||||||
|
|
||||||
if (project.isEmpty()) {
|
|
||||||
return null;
|
|
||||||
} else {
|
|
||||||
return project;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public User getUserById(int userid) throws XServicesFault {
|
|
||||||
Query query = new Query(User.class);
|
|
||||||
if (userid > 0) {
|
|
||||||
query.addQuery(new QueryEntity("id", new StringEntity(String.valueOf(userid))), BOOL.AND);
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return getUserByQuery(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public User getUserByUsername(String username) throws XServicesFault {
|
|
||||||
Query query = new Query(User.class);
|
|
||||||
query.addQuery(new QueryEntity("nickname", new StringEntity(username)), BOOL.AND);
|
|
||||||
return getUserByQuery(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<AnyEntity> getAnyObject(String objecttype, List<QueryParameter> queries) throws XServicesFault {
|
|
||||||
JITCompiler.load();
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
Class clazz;
|
|
||||||
try {
|
|
||||||
Class.forName("net.brutex.mgmt.api.xml.EntityType");
|
|
||||||
Class.forName("net.brutex.mgmt.api.xml.AbstractEntity");
|
|
||||||
clazz = Class.forName("net.brutex.mgmt.api.xml."+objecttype);
|
|
||||||
} catch (ClassNotFoundException ex ) {
|
|
||||||
throw new XServicesFault(ex);
|
|
||||||
}
|
|
||||||
Query query = new Query(clazz);
|
|
||||||
|
|
||||||
for(QueryParameter p : queries) {
|
|
||||||
query.addQuery(new QueryEntity(p.field, new StringEntity(p.value)), BOOL.AND);
|
|
||||||
}
|
|
||||||
|
|
||||||
List<AnyEntity> anyentity = (List<AnyEntity>) con.getEntitiesByQuery(query);
|
|
||||||
|
|
||||||
if (anyentity.isEmpty()) {
|
|
||||||
return null;
|
|
||||||
} else {
|
|
||||||
return anyentity;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private User getUserByQuery(Query query) throws XServicesFault {
|
|
||||||
final OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
if (con == null) {
|
|
||||||
throw new XServicesFault("Could not establish Open Air connection.");
|
|
||||||
}
|
|
||||||
User user = (User) con.getSingleEntityByQuery(query);
|
|
||||||
return user;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List<TimesheetEntry> filterBillableOnly(List<TimesheetEntry> timesheets) {
|
|
||||||
List<TimesheetEntry> list = new ArrayList<TimesheetEntry>();
|
|
||||||
for (TimesheetEntry entry : timesheets) {
|
|
||||||
if (entry.getProjecttask().isBillable()) {
|
|
||||||
list.add(entry);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return list;
|
|
||||||
}
|
|
||||||
|
|
||||||
private OpenAirRestConnection getOpenAirConnection() {
|
|
||||||
|
|
||||||
/*
|
|
||||||
* get details from configuration file
|
|
||||||
*/
|
|
||||||
final PropertiesConfiguration props;
|
|
||||||
try {
|
|
||||||
final String config = "../openair.properties";
|
|
||||||
log.debug("Loading Open Air connection details from " + this.getClass().getClassLoader().getResource("/")
|
|
||||||
+ config);
|
|
||||||
|
|
||||||
final URL configloc = this.getClass().getClassLoader().getResource(config);
|
|
||||||
|
|
||||||
props = new PropertiesConfiguration();
|
|
||||||
props.read( new InputStreamReader( new BufferedInputStream( configloc.openStream() )));
|
|
||||||
final String user = props.getString("user");
|
|
||||||
final String password = props.getString("password");
|
|
||||||
final String company = props.getString("company");
|
|
||||||
final String apikey = props.getString("apikey", "_PUT_HERE_");
|
|
||||||
final String namespace = props.getString("namespace");
|
|
||||||
|
|
||||||
final OpenAirRestConnection con;
|
|
||||||
|
|
||||||
con = new OpenAirRestConnection(JCS.getInstance("OACache"), company, user, password);
|
|
||||||
return con;
|
|
||||||
} catch (CacheException | ConfigurationException | IOException e) {
|
|
||||||
log.error(e.getMessage());
|
|
||||||
e.printStackTrace();
|
|
||||||
} finally {
|
|
||||||
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
|
@ -15,7 +15,7 @@
|
||||||
*/
|
*/
|
||||||
package net.brutex.xservices.ws.impl;
|
package net.brutex.xservices.ws.impl;
|
||||||
|
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
|
|
||||||
import net.brutex.xservices.types.TargetNodeType;
|
import net.brutex.xservices.types.TargetNodeType;
|
||||||
import net.brutex.xservices.types.ant.AttachmentType;
|
import net.brutex.xservices.types.ant.AttachmentType;
|
||||||
|
|
|
@ -22,7 +22,7 @@ import java.util.StringTokenizer;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
|
|
||||||
import net.brutex.xservices.types.StringMatchType;
|
import net.brutex.xservices.types.StringMatchType;
|
||||||
import net.brutex.xservices.types.StringReplaceType;
|
import net.brutex.xservices.types.StringReplaceType;
|
||||||
|
|
|
@ -26,7 +26,7 @@ import java.nio.charset.Charset;
|
||||||
import java.nio.charset.IllegalCharsetNameException;
|
import java.nio.charset.IllegalCharsetNameException;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.jws.WebService;
|
import jakarta.jws.WebService;
|
||||||
import javax.xml.namespace.QName;
|
import javax.xml.namespace.QName;
|
||||||
import javax.xml.stream.XMLOutputFactory;
|
import javax.xml.stream.XMLOutputFactory;
|
||||||
import javax.xml.stream.XMLStreamException;
|
import javax.xml.stream.XMLStreamException;
|
||||||
|
|
|
@ -1,14 +1,10 @@
|
||||||
package net.brutex.xservices.ws.rs;
|
package net.brutex.xservices.ws.rs;
|
||||||
|
|
||||||
|
import jakarta.ws.rs.*;
|
||||||
|
import jakarta.ws.rs.core.Context;
|
||||||
|
import jakarta.ws.rs.core.HttpHeaders;
|
||||||
|
import jakarta.ws.rs.core.Response;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import javax.ws.rs.DefaultValue;
|
|
||||||
import javax.ws.rs.GET;
|
|
||||||
import javax.ws.rs.Path;
|
|
||||||
import javax.ws.rs.Produces;
|
|
||||||
import javax.ws.rs.QueryParam;
|
|
||||||
import javax.ws.rs.core.Context;
|
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
|
||||||
import javax.ws.rs.core.Response;
|
|
||||||
|
|
||||||
@Path("/CVSService/")
|
@Path("/CVSService/")
|
||||||
@Produces({"application/xml", "application/json"})
|
@Produces({"application/xml", "application/json"})
|
||||||
|
|
|
@ -4,13 +4,11 @@ import java.io.ByteArrayOutputStream;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileReader;
|
import java.io.FileReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.PrintStream;
|
|
||||||
import java.net.URI;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.StringTokenizer;
|
import java.util.StringTokenizer;
|
||||||
|
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
import jakarta.ws.rs.core.HttpHeaders;
|
||||||
import javax.ws.rs.core.Response;
|
import jakarta.ws.rs.core.Response;
|
||||||
|
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.brutex.xservices.types.scm.AttributeType;
|
import net.brutex.xservices.types.scm.AttributeType;
|
||||||
|
@ -24,7 +22,6 @@ import net.brutex.xservices.types.scm.TagListType;
|
||||||
import net.brutex.xservices.types.scmfindings.FindingsListType;
|
import net.brutex.xservices.types.scmfindings.FindingsListType;
|
||||||
import net.brutex.xservices.util.BasicCVSListener;
|
import net.brutex.xservices.util.BasicCVSListener;
|
||||||
import net.brutex.xservices.util.CVSClient;
|
import net.brutex.xservices.util.CVSClient;
|
||||||
import net.brutex.xservices.util.CVSRoot;
|
|
||||||
|
|
||||||
import org.apache.commons.configuration2.ex.ConfigurationException;
|
import org.apache.commons.configuration2.ex.ConfigurationException;
|
||||||
import org.apache.commons.jcs.JCS;
|
import org.apache.commons.jcs.JCS;
|
||||||
|
@ -33,15 +30,12 @@ import org.apache.commons.jcs.access.exception.CacheException;
|
||||||
import org.netbeans.lib.cvsclient.Client;
|
import org.netbeans.lib.cvsclient.Client;
|
||||||
import org.netbeans.lib.cvsclient.command.CommandAbortedException;
|
import org.netbeans.lib.cvsclient.command.CommandAbortedException;
|
||||||
import org.netbeans.lib.cvsclient.command.CommandException;
|
import org.netbeans.lib.cvsclient.command.CommandException;
|
||||||
import org.netbeans.lib.cvsclient.command.FileInfoContainer;
|
|
||||||
import org.netbeans.lib.cvsclient.command.PipedFileInformation;
|
import org.netbeans.lib.cvsclient.command.PipedFileInformation;
|
||||||
import org.netbeans.lib.cvsclient.command.checkout.CheckoutCommand;
|
import org.netbeans.lib.cvsclient.command.checkout.CheckoutCommand;
|
||||||
import org.netbeans.lib.cvsclient.command.checkout.ModuleListInformation;
|
import org.netbeans.lib.cvsclient.command.checkout.ModuleListInformation;
|
||||||
import org.netbeans.lib.cvsclient.command.log.LogInformation;
|
import org.netbeans.lib.cvsclient.command.log.LogInformation;
|
||||||
import org.netbeans.lib.cvsclient.command.log.LogInformation.Revision;
|
|
||||||
import org.netbeans.lib.cvsclient.command.log.RlogCommand;
|
import org.netbeans.lib.cvsclient.command.log.RlogCommand;
|
||||||
import org.netbeans.lib.cvsclient.connection.AuthenticationException;
|
import org.netbeans.lib.cvsclient.connection.AuthenticationException;
|
||||||
import org.netbeans.lib.cvsclient.event.EventManager;
|
|
||||||
import org.netbeans.lib.cvsclient.event.FileInfoEvent;
|
import org.netbeans.lib.cvsclient.event.FileInfoEvent;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
|
@ -51,7 +45,7 @@ public class CVSInfoImpl implements CVSInfo {
|
||||||
final ItemListType list = this.FACTORY.createItemListType();
|
final ItemListType list = this.FACTORY.createItemListType();
|
||||||
|
|
||||||
public Response getRepositoryFiles(HttpHeaders h, File f, String modules,
|
public Response getRepositoryFiles(HttpHeaders h, File f, String modules,
|
||||||
boolean isRecursive, boolean showRevisions, boolean forceNoCache) {
|
boolean isRecursive, boolean showRevisions, boolean forceNoCache) {
|
||||||
String cachekey = "getFiles" + f.toURI().toString();
|
String cachekey = "getFiles" + f.toURI().toString();
|
||||||
log.debug("forceNoCache=" + forceNoCache);
|
log.debug("forceNoCache=" + forceNoCache);
|
||||||
ItemListType cacheresult = (ItemListType) getCacheInstance().get(
|
ItemListType cacheresult = (ItemListType) getCacheInstance().get(
|
||||||
|
|
|
@ -18,15 +18,15 @@ package net.brutex.xservices.ws.rs;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import javax.ws.rs.DefaultValue;
|
import jakarta.ws.rs.DefaultValue;
|
||||||
import javax.ws.rs.GET;
|
import jakarta.ws.rs.GET;
|
||||||
import javax.ws.rs.Path;
|
import jakarta.ws.rs.Path;
|
||||||
import javax.ws.rs.Produces;
|
import jakarta.ws.rs.Produces;
|
||||||
import javax.ws.rs.QueryParam;
|
import jakarta.ws.rs.QueryParam;
|
||||||
import javax.ws.rs.core.Context;
|
import jakarta.ws.rs.core.Context;
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
import jakarta.ws.rs.core.HttpHeaders;
|
||||||
import javax.ws.rs.core.Response;
|
import jakarta.ws.rs.core.Response;
|
||||||
import javax.ws.rs.core.UriInfo;
|
import jakarta.ws.rs.core.UriInfo;
|
||||||
|
|
||||||
import org.apache.commons.jcs.access.exception.CacheException;
|
import org.apache.commons.jcs.access.exception.CacheException;
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ public abstract interface DIMCMInfo {
|
||||||
* @param paramHttpHeaders the param http headers
|
* @param paramHttpHeaders the param http headers
|
||||||
* @param uriInfo request url info
|
* @param uriInfo request url info
|
||||||
* @param directory The directory to list.
|
* @param directory The directory to list.
|
||||||
* @param includeDirectories Whether or not to include directories in the listing. Default is true.
|
* @param recursive Whether or not to include directories in the listing. Default is true.
|
||||||
* @param includeFiles Whether or not to include files in the listing. Default is true.
|
* @param includeFiles Whether or not to include files in the listing. Default is true.
|
||||||
* @param depth Include subdirectories down to a given depth. Default is 1.
|
* @param depth Include subdirectories down to a given depth. Default is 1.
|
||||||
* @param search Additional "Glob search pattern" for the file/ directory name. I.e. '*.log'
|
* @param search Additional "Glob search pattern" for the file/ directory name. I.e. '*.log'
|
||||||
|
@ -70,7 +70,7 @@ public abstract interface DIMCMInfo {
|
||||||
@QueryParam("projSpec") String project,
|
@QueryParam("projSpec") String project,
|
||||||
@QueryParam("directory") String directory,
|
@QueryParam("directory") String directory,
|
||||||
@QueryParam("recursive") @DefaultValue("false") boolean recursive,
|
@QueryParam("recursive") @DefaultValue("false") boolean recursive,
|
||||||
@QueryParam("includeFiles") @DefaultValue("1") boolean includeFiles,
|
@QueryParam("includeFiles") @DefaultValue("true") boolean includeFiles,
|
||||||
@QueryParam("depth") @DefaultValue("1") int depth,
|
@QueryParam("depth") @DefaultValue("1") int depth,
|
||||||
@QueryParam("search") String search,
|
@QueryParam("search") String search,
|
||||||
@QueryParam("itemsPerPage") @DefaultValue("50") int itemsPerPage,
|
@QueryParam("itemsPerPage") @DefaultValue("50") int itemsPerPage,
|
||||||
|
|
|
@ -29,9 +29,9 @@ import java.nio.file.Path;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
import jakarta.ws.rs.core.HttpHeaders;
|
||||||
import javax.ws.rs.core.Response;
|
import jakarta.ws.rs.core.Response;
|
||||||
import javax.ws.rs.core.UriInfo;
|
import jakarta.ws.rs.core.UriInfo;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.configuration2.PropertiesConfiguration;
|
import org.apache.commons.configuration2.PropertiesConfiguration;
|
||||||
|
|
|
@ -18,15 +18,15 @@ package net.brutex.xservices.ws.rs;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import javax.ws.rs.DefaultValue;
|
import jakarta.ws.rs.DefaultValue;
|
||||||
import javax.ws.rs.GET;
|
import jakarta.ws.rs.GET;
|
||||||
import javax.ws.rs.Path;
|
import jakarta.ws.rs.Path;
|
||||||
import javax.ws.rs.Produces;
|
import jakarta.ws.rs.Produces;
|
||||||
import javax.ws.rs.QueryParam;
|
import jakarta.ws.rs.QueryParam;
|
||||||
import javax.ws.rs.core.Context;
|
import jakarta.ws.rs.core.Context;
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
import jakarta.ws.rs.core.HttpHeaders;
|
||||||
import javax.ws.rs.core.Response;
|
import jakarta.ws.rs.core.Response;
|
||||||
import javax.ws.rs.core.UriInfo;
|
import jakarta.ws.rs.core.UriInfo;
|
||||||
|
|
||||||
import net.brutex.xservices.ws.XServicesFault;
|
import net.brutex.xservices.ws.XServicesFault;
|
||||||
|
|
||||||
|
@ -65,13 +65,13 @@ public abstract interface FileInfo {
|
||||||
@Context HttpHeaders paramHttpHeaders,
|
@Context HttpHeaders paramHttpHeaders,
|
||||||
@Context UriInfo uriInfo,
|
@Context UriInfo uriInfo,
|
||||||
@QueryParam("directory") String directory,
|
@QueryParam("directory") String directory,
|
||||||
@QueryParam("includeDirectories") @DefaultValue("0") boolean includeDirectories,
|
@QueryParam("includeDirectories") @DefaultValue("false") boolean includeDirectories,
|
||||||
@QueryParam("includeFiles") @DefaultValue("1") boolean includeFiles,
|
@QueryParam("includeFiles") @DefaultValue("true") boolean includeFiles,
|
||||||
@QueryParam("depth") @DefaultValue("1") int depth,
|
@QueryParam("depth") @DefaultValue("1") int depth,
|
||||||
@QueryParam("search") String search,
|
@QueryParam("search") String search,
|
||||||
@QueryParam("itemsPerPage") @DefaultValue("50") int itemsPerPage,
|
@QueryParam("itemsPerPage") @DefaultValue("50") int itemsPerPage,
|
||||||
@QueryParam("page") @DefaultValue("1") int page,
|
@QueryParam("page") @DefaultValue("1") int page,
|
||||||
@QueryParam("usecache") @DefaultValue("1") boolean useCache);
|
@QueryParam("usecache") @DefaultValue("true") boolean useCache);
|
||||||
|
|
||||||
@GET
|
@GET
|
||||||
@Path("getFile/")
|
@Path("getFile/")
|
||||||
|
|
|
@ -38,14 +38,14 @@ import java.util.List;
|
||||||
import java.util.zip.ZipEntry;
|
import java.util.zip.ZipEntry;
|
||||||
import java.util.zip.ZipOutputStream;
|
import java.util.zip.ZipOutputStream;
|
||||||
|
|
||||||
import javax.ws.rs.NotAuthorizedException;
|
import jakarta.ws.rs.NotAuthorizedException;
|
||||||
import javax.ws.rs.WebApplicationException;
|
import jakarta.ws.rs.WebApplicationException;
|
||||||
import javax.ws.rs.core.GenericEntity;
|
import jakarta.ws.rs.core.GenericEntity;
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
import jakarta.ws.rs.core.HttpHeaders;
|
||||||
import javax.ws.rs.core.MediaType;
|
import jakarta.ws.rs.core.MediaType;
|
||||||
import javax.ws.rs.core.Response;
|
import jakarta.ws.rs.core.Response;
|
||||||
import javax.ws.rs.core.StreamingOutput;
|
import jakarta.ws.rs.core.StreamingOutput;
|
||||||
import javax.ws.rs.core.UriInfo;
|
import jakarta.ws.rs.core.UriInfo;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.brutex.xservices.security.DirectoryPermission;
|
import net.brutex.xservices.security.DirectoryPermission;
|
||||||
|
|
|
@ -16,8 +16,8 @@
|
||||||
|
|
||||||
package net.brutex.xservices.ws.rs;
|
package net.brutex.xservices.ws.rs;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
@XmlRootElement(name="FileList")
|
@XmlRootElement(name="FileList")
|
||||||
public class FileListType
|
public class FileListType
|
||||||
|
|
|
@ -1,49 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2013 Brian Rosenberger (Brutex Network)
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package net.brutex.xservices.ws.rs;
|
|
||||||
|
|
||||||
import javax.ws.rs.GET;
|
|
||||||
import javax.ws.rs.Path;
|
|
||||||
import javax.ws.rs.Produces;
|
|
||||||
import javax.ws.rs.QueryParam;
|
|
||||||
import javax.ws.rs.core.Context;
|
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
|
||||||
import javax.ws.rs.core.Response;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The OpenAirInfoService Rest Service.
|
|
||||||
*
|
|
||||||
* @author Brian Rosenberger, bru(at)brutex.de
|
|
||||||
*/
|
|
||||||
|
|
||||||
@Path("/OpenAirInfoService/")
|
|
||||||
@Produces({ "text/xml" })
|
|
||||||
public abstract interface OpenAirInfoService {
|
|
||||||
|
|
||||||
public final static String BASE_PATH = "/OpenAirInfoService/";
|
|
||||||
public final static String SERVICE_NAME = "OpenAirInfoService";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@GET
|
|
||||||
@Path("getCompanies/")
|
|
||||||
//@Produces("application/octet-stream")
|
|
||||||
public abstract Response getCompanies(
|
|
||||||
@Context HttpHeaders paramHttpHeaders,
|
|
||||||
@QueryParam("search") String search);
|
|
||||||
}
|
|
|
@ -1,87 +0,0 @@
|
||||||
package net.brutex.xservices.ws.rs;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
import java.util.GregorianCalendar;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import javax.ws.rs.core.GenericEntity;
|
|
||||||
import javax.ws.rs.core.HttpHeaders;
|
|
||||||
import javax.ws.rs.core.Response;
|
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.apache.commons.configuration2.PropertiesConfiguration;
|
|
||||||
import org.apache.commons.configuration2.builder.fluent.Configurations;
|
|
||||||
import org.apache.commons.configuration2.ex.ConfigurationException;
|
|
||||||
import org.apache.commons.jcs.JCS;
|
|
||||||
import org.apache.commons.jcs.access.exception.CacheException;
|
|
||||||
|
|
||||||
import net.brutex.mgmt.api.xml.Customer;
|
|
||||||
import net.brutex.mgmt.api.xml.DateFilter;
|
|
||||||
import net.brutex.mgmt.api.xml.Query;
|
|
||||||
import net.brutex.mgmt.api.xml.Query.BOOL;
|
|
||||||
import net.brutex.mgmt.api.xml.StringEntity;
|
|
||||||
import net.brutex.mgmt.openair.OpenAirRestConnection;
|
|
||||||
|
|
||||||
@Slf4j
|
|
||||||
public class OpenAirInfoServiceImpl implements OpenAirInfoService {
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Response getCompanies(HttpHeaders paramHttpHeaders, String search) {
|
|
||||||
OpenAirRestConnection con = getOpenAirConnection();
|
|
||||||
Query query = new Query(Customer.class);
|
|
||||||
|
|
||||||
query.addQuery("Address_Country", new StringEntity(search), BOOL.AND);
|
|
||||||
query.addQuery("active", new StringEntity("1"), BOOL.AND);
|
|
||||||
DateFilter datefilter = new DateFilter("updated");
|
|
||||||
GregorianCalendar date = new GregorianCalendar();
|
|
||||||
|
|
||||||
date.add(GregorianCalendar.MINUTE, -5);
|
|
||||||
datefilter.setStartdate(date);
|
|
||||||
|
|
||||||
query.addFilter(datefilter);
|
|
||||||
//query.addQuery("CustomerAccountCode", new StringEntity(search), BOOL.OR);
|
|
||||||
List<Customer> resultlist = (List<Customer>) con.getEntitiesByQuery(query);
|
|
||||||
GenericEntity generic = new GenericEntity<List<Customer>>(resultlist) {};
|
|
||||||
Response response = Response.ok(generic).build();
|
|
||||||
return response;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private OpenAirRestConnection getOpenAirConnection() {
|
|
||||||
|
|
||||||
/*
|
|
||||||
* get details from configuration file
|
|
||||||
*/
|
|
||||||
Configurations configs = new Configurations();
|
|
||||||
final PropertiesConfiguration props;
|
|
||||||
try {
|
|
||||||
final String config = "../openair.properties";
|
|
||||||
log.debug("Loading Open Air connection details from '{}'.", this.getClass().getClassLoader().getResource("/")
|
|
||||||
+ config);
|
|
||||||
|
|
||||||
final URL configloc = this.getClass().getClassLoader().getResource(config);
|
|
||||||
|
|
||||||
props = configs.properties(configloc);
|
|
||||||
|
|
||||||
final String user = props.getString("user");
|
|
||||||
final String password = props.getString("password");
|
|
||||||
final String company = props.getString("company");
|
|
||||||
final String apikey = props.getString("apikey", "9x7G49ENkLCJ81i9XZJU");
|
|
||||||
final String namespace = props.getString("namespace");
|
|
||||||
|
|
||||||
final OpenAirRestConnection con;
|
|
||||||
|
|
||||||
con = new OpenAirRestConnection(JCS.getInstance("FileCache"), company, user, password);
|
|
||||||
return con;
|
|
||||||
} catch (CacheException | ConfigurationException e) {
|
|
||||||
log.error(e.getMessage());
|
|
||||||
e.printStackTrace();
|
|
||||||
} finally {
|
|
||||||
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -7,7 +7,7 @@ jcs.default.cacheattributes.MemoryCacheName=org.apache.commons.jcs.engine.memory
|
||||||
# AVAILABLE AUXILIARY CACHES
|
# AVAILABLE AUXILIARY CACHES
|
||||||
jcs.auxiliary.DC=org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
|
jcs.auxiliary.DC=org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
|
||||||
jcs.auxiliary.DC.attributes=org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
|
jcs.auxiliary.DC.attributes=org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
|
||||||
jcs.auxiliary.DC.attributes.DiskPath=${user.dir}/jcs_swap
|
jcs.auxiliary.DC.attributes.DiskPath=${user.dir}/.jcs_swap
|
||||||
jcs.auxiliary.DC.attributes.MaxPurgatorySize=10000000
|
jcs.auxiliary.DC.attributes.MaxPurgatorySize=10000000
|
||||||
jcs.auxiliary.DC.attributes.MaxKeySize=1000000
|
jcs.auxiliary.DC.attributes.MaxKeySize=1000000
|
||||||
jcs.auxiliary.DC.attributes.OptimizeAtRemoveCount=300000
|
jcs.auxiliary.DC.attributes.OptimizeAtRemoveCount=300000
|
||||||
|
|
|
@ -9,7 +9,7 @@ org.slf4j.simpleLogger.defaultLogLevel=warn
|
||||||
# Logging detail level for a SimpleLogger instance named "xxxxx".
|
# Logging detail level for a SimpleLogger instance named "xxxxx".
|
||||||
# Must be one of ("trace", "debug", "info", "warn", or "error").
|
# Must be one of ("trace", "debug", "info", "warn", or "error").
|
||||||
# If not specified, the default logging detail level is used.
|
# If not specified, the default logging detail level is used.
|
||||||
org.slf4j.simpleLogger.log.net.brutex.xservices=info
|
org.slf4j.simpleLogger.log.net.brutex.xservices=debug
|
||||||
|
|
||||||
# Set to true if you want the current date and time to be included in output messages.
|
# Set to true if you want the current date and time to be included in output messages.
|
||||||
# Default is false, and will output the number of milliseconds elapsed since startup.
|
# Default is false, and will output the number of milliseconds elapsed since startup.
|
||||||
|
|
|
@ -3,12 +3,13 @@
|
||||||
xmlns:jaxws="http://cxf.apache.org/jaxws"
|
xmlns:jaxws="http://cxf.apache.org/jaxws"
|
||||||
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
|
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
|
||||||
xsi:schemaLocation="
|
xsi:schemaLocation="
|
||||||
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
|
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
|
||||||
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
|
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
|
||||||
http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd">
|
http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd">
|
||||||
|
|
||||||
<import resource="classpath:META-INF/cxf/cxf.xml"/>
|
<import resource="classpath:META-INF/cxf/cxf.xml"/>
|
||||||
<import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
|
<import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
|
||||||
|
|
||||||
|
|
||||||
<jaxws:endpoint id="archiveservice"
|
<jaxws:endpoint id="archiveservice"
|
||||||
implementor="net.brutex.xservices.ws.impl.ArchiveServiceImpl" address="/ArchiveService">
|
implementor="net.brutex.xservices.ws.impl.ArchiveServiceImpl" address="/ArchiveService">
|
||||||
|
@ -80,9 +81,6 @@
|
||||||
</jaxrs:serviceBeans>
|
</jaxrs:serviceBeans>
|
||||||
</jaxrs:server>
|
</jaxrs:server>
|
||||||
<bean id="FileInfoBean" class="net.brutex.xservices.ws.rs.FileInfoImpl" />
|
<bean id="FileInfoBean" class="net.brutex.xservices.ws.rs.FileInfoImpl" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<jaxrs:server id="CVSInfo" address="/cvsinfo">
|
<jaxrs:server id="CVSInfo" address="/cvsinfo">
|
||||||
|
|
|
@ -36,6 +36,11 @@ emitter_active = true
|
||||||
# deactivates the cleaner. Value in minutes.
|
# deactivates the cleaner. Value in minutes.
|
||||||
cleaner_interval = 4
|
cleaner_interval = 4
|
||||||
|
|
||||||
|
# EventLogCleaner retention interval, max age of logs in the tbl_events_all table. The job runs once an hour.
|
||||||
|
# Value is in hours and default is 72.
|
||||||
|
# logMaxAge = 72
|
||||||
|
logMaxAge = 72
|
||||||
|
|
||||||
# ALFEventFilter classes, executed in order. This can be a comma separated list of classes
|
# ALFEventFilter classes, executed in order. This can be a comma separated list of classes
|
||||||
# default: empty
|
# default: empty
|
||||||
alf_filter = net.brutex.xservices.util.EventIdTruncateFilter
|
alf_filter = net.brutex.xservices.util.EventIdTruncateFilter
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<con:soapui-project name="MiscService" resourceRoot="" soapui-version="5.5.0" abortOnError="false" runType="SEQUENTIAL" activeEnvironment="Default" id="9befe4d3-50f1-42cf-a014-7b610d0a7c7f" xmlns:con="http://eviware.com/soapui/config"><con:settings/><con:interface xsi:type="con:WsdlInterface" wsaVersion="NONE" name="MiscServiceSoapBinding" type="wsdl" bindingName="{http://ws.xservices.brutex.net}MiscServiceSoapBinding" soapVersion="1_1" anonymous="optional" definition="http://localhost:8080/XServices/MiscService?WSDL" id="ca00c2ff-8f34-4b91-bd61-3b6aae9f9fd3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings/><con:definitionCache type="TEXT" rootPart="http://localhost:8080/XServices/MiscService?WSDL"><con:part><con:url>http://localhost:8080/XServices/MiscService?WSDL</con:url><con:content><![CDATA[<wsdl:definitions name="MiscService" targetNamespace="http://ws.xservices.brutex.net" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://ws.xservices.brutex.net" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns1="http://schemas.xmlsoap.org/soap/http">
|
<con:soapui-project name="MiscService" resourceRoot="" soapui-version="5.5.0" abortOnError="false" runType="SEQUENTIAL" activeEnvironment="Default" id="9befe4d3-50f1-42cf-a014-7b610d0a7c7f" xmlns:con="http://eviware.com/soapui/config"><con:settings/><con:interface xsi:type="con:WsdlInterface" wsaVersion="NONE" name="MiscServiceSoapBinding" type="wsdl" bindingName="{http://ws.xservices.brutex.net}MiscServiceSoapBinding" soapVersion="1_1" anonymous="optional" definition="http://localhost:8080/XServices/MiscService?WSDL" id="ca00c2ff-8f34-4b91-bd61-3b6aae9f9fd3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings/><con:definitionCache type="TEXT" rootPart="http://localhost:8080/XServices/MiscService?WSDL"><con:part><con:url>http://localhost:8080/XServices/MiscService?WSDL</con:url><con:content><![CDATA[<wsdl:definitions name="MiscService" targetNamespace="http://ws.xservices.brutex.net" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://ws.xservices.brutex.net" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns2="http://schemas.xmlsoap.org/soap/http" xmlns:ns1="http://www.eclipse.org/alf/schema/EventBase/1">
|
||||||
<wsdl:types>
|
<wsdl:types>
|
||||||
<xs:schema targetNamespace="http://www.eclipse.org/alf/schema/EventBase/1" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.eclipse.org/alf/schema/EventBase/1">
|
<xs:schema targetNamespace="http://www.eclipse.org/alf/schema/EventBase/1" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.eclipse.org/alf/schema/EventBase/1">
|
||||||
<xs:element name="EventNotice" type="tns:ALFEventType"/>
|
<xs:element name="ALFEventNoticeDoc" type="tns:ALFEventType"/>
|
||||||
<xs:complexType name="ALFEventType">
|
<xs:complexType name="ALFEventType">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element form="qualified" name="Base" type="tns:EventBaseType"/>
|
<xs:element form="qualified" name="Base" type="tns:EventBaseType"/>
|
||||||
|
@ -15,7 +15,7 @@
|
||||||
<xs:complexType name="EventBaseType">
|
<xs:complexType name="EventBaseType">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element form="qualified" name="EventId" type="xs:string"/>
|
<xs:element form="qualified" name="EventId" type="xs:string"/>
|
||||||
<xs:element form="qualified" name="Timestamp" type="xs:dateTime"/>
|
<xs:element form="qualified" name="Timestamp" nillable="true" type="xs:dateTime"/>
|
||||||
<xs:element form="qualified" name="EventType" type="xs:string"/>
|
<xs:element form="qualified" name="EventType" type="xs:string"/>
|
||||||
<xs:element form="qualified" name="ObjectType" type="xs:string"/>
|
<xs:element form="qualified" name="ObjectType" type="xs:string"/>
|
||||||
<xs:element form="qualified" name="ObjectId" type="xs:string"/>
|
<xs:element form="qualified" name="ObjectId" type="xs:string"/>
|
||||||
|
@ -36,10 +36,31 @@
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="CredentialsType">
|
<xs:complexType name="CredentialsType">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
|
<xs:element form="qualified" minOccurs="0" name="ALFSecurity" type="tns:ALFSecurityType"/>
|
||||||
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
<xs:complexType name="ALFSecurityType">
|
||||||
|
<xs:sequence>
|
||||||
|
<xs:element form="qualified" name="UsernameToken">
|
||||||
|
<xs:complexType>
|
||||||
|
<xs:sequence>
|
||||||
|
<xs:element form="qualified" name="Username" type="xs:string"/>
|
||||||
|
<xs:element form="qualified" name="Password" type="xs:string"/>
|
||||||
|
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
||||||
|
</xs:sequence>
|
||||||
|
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
||||||
|
</xs:complexType>
|
||||||
|
</xs:element>
|
||||||
|
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
||||||
|
</xs:sequence>
|
||||||
|
</xs:complexType>
|
||||||
|
<xs:complexType name="ALFEventWithReplyResponseType">
|
||||||
|
<xs:sequence>
|
||||||
|
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
||||||
|
</xs:sequence>
|
||||||
|
</xs:complexType>
|
||||||
<xs:complexType name="EmBaseType">
|
<xs:complexType name="EmBaseType">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element form="qualified" name="EmEventId" type="xs:string"/>
|
<xs:element form="qualified" name="EmEventId" type="xs:string"/>
|
||||||
|
@ -52,6 +73,7 @@
|
||||||
<xs:element form="qualified" name="Callback" type="xs:boolean"/>
|
<xs:element form="qualified" name="Callback" type="xs:boolean"/>
|
||||||
<xs:element form="qualified" name="Environment" type="xs:string"/>
|
<xs:element form="qualified" name="Environment" type="xs:string"/>
|
||||||
<xs:element form="qualified" name="EmUser" type="tns:CredentialsType"/>
|
<xs:element form="qualified" name="EmUser" type="tns:CredentialsType"/>
|
||||||
|
<xs:element form="qualified" minOccurs="0" name="AttemptCount" type="xs:int"/>
|
||||||
<xs:element form="qualified" minOccurs="0" name="EmExtension" type="tns:EmExtensionType"/>
|
<xs:element form="qualified" minOccurs="0" name="EmExtension" type="tns:EmExtensionType"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
||||||
|
@ -64,16 +86,16 @@
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="ALFEventResponseType">
|
<xs:complexType name="ALFEventResponseType">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:any namespace="##other" processContents="lax"/>
|
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="DetailExtensionType">
|
<xs:complexType name="CustomExtensionType">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="CustomExtensionType">
|
<xs:complexType name="DetailExtensionType">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
|
@ -85,16 +107,9 @@
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
<xs:anyAttribute namespace="##other" processContents="skip"/>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="ALFEventWithReplyResponseType">
|
|
||||||
<xs:sequence>
|
|
||||||
<xs:any namespace="##other" processContents="lax"/>
|
|
||||||
</xs:sequence>
|
|
||||||
</xs:complexType>
|
|
||||||
</xs:schema>
|
</xs:schema>
|
||||||
<xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://ws.xservices.brutex.net" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.eclipse.org/alf/schema/EventBase/1">
|
<xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://ws.xservices.brutex.net" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns0="http://www.eclipse.org/alf/schema/EventBase/1">
|
||||||
<xs:import namespace="http://www.eclipse.org/alf/schema/EventBase/1"/>
|
<xs:import namespace="http://www.eclipse.org/alf/schema/EventBase/1"/>
|
||||||
<xs:element name="EventNotice" type="tns:EventNotice"/>
|
|
||||||
<xs:element name="EventNoticeResponse" type="tns:EventNoticeResponse"/>
|
|
||||||
<xs:element name="antProperty" type="tns:antProperty"/>
|
<xs:element name="antProperty" type="tns:antProperty"/>
|
||||||
<xs:element name="generateUUID" type="tns:generateUUID"/>
|
<xs:element name="generateUUID" type="tns:generateUUID"/>
|
||||||
<xs:element name="generateUUIDResponse" type="tns:generateUUIDResponse"/>
|
<xs:element name="generateUUIDResponse" type="tns:generateUUIDResponse"/>
|
||||||
|
@ -135,16 +150,6 @@
|
||||||
<xs:element name="totalMemoryMB" type="xs:long"/>
|
<xs:element name="totalMemoryMB" type="xs:long"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
<xs:complexType name="EventNotice">
|
|
||||||
<xs:sequence>
|
|
||||||
<xs:element minOccurs="0" ref="ns1:EventNotice"/>
|
|
||||||
</xs:sequence>
|
|
||||||
</xs:complexType>
|
|
||||||
<xs:complexType name="EventNoticeResponse">
|
|
||||||
<xs:sequence>
|
|
||||||
<xs:element minOccurs="0" name="return" type="ns1:ALFEventResponseType"/>
|
|
||||||
</xs:sequence>
|
|
||||||
</xs:complexType>
|
|
||||||
<xs:complexType name="lock">
|
<xs:complexType name="lock">
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element minOccurs="0" name="id" type="xs:string"/>
|
<xs:element minOccurs="0" name="id" type="xs:string"/>
|
||||||
|
@ -218,6 +223,7 @@
|
||||||
<xs:element minOccurs="0" name="message" type="xs:string"/>
|
<xs:element minOccurs="0" name="message" type="xs:string"/>
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
|
<xs:element name="mergeALFEventResponse" nillable="true" type="ns0:ALFEventResponseType"/>
|
||||||
</xs:schema>
|
</xs:schema>
|
||||||
</wsdl:types>
|
</wsdl:types>
|
||||||
<wsdl:message name="generateUUID">
|
<wsdl:message name="generateUUID">
|
||||||
|
@ -235,6 +241,9 @@
|
||||||
<wsdl:message name="lock">
|
<wsdl:message name="lock">
|
||||||
<wsdl:part element="tns:lock" name="parameters"></wsdl:part>
|
<wsdl:part element="tns:lock" name="parameters"></wsdl:part>
|
||||||
</wsdl:message>
|
</wsdl:message>
|
||||||
|
<wsdl:message name="mergeALFEvent">
|
||||||
|
<wsdl:part element="ns1:ALFEventNoticeDoc" name="ALFEventNoticeDoc"></wsdl:part>
|
||||||
|
</wsdl:message>
|
||||||
<wsdl:message name="getHostinfo">
|
<wsdl:message name="getHostinfo">
|
||||||
<wsdl:part element="tns:getHostinfo" name="parameters"></wsdl:part>
|
<wsdl:part element="tns:getHostinfo" name="parameters"></wsdl:part>
|
||||||
</wsdl:message>
|
</wsdl:message>
|
||||||
|
@ -247,21 +256,18 @@
|
||||||
<wsdl:message name="getMemory">
|
<wsdl:message name="getMemory">
|
||||||
<wsdl:part element="tns:getMemory" name="parameters"></wsdl:part>
|
<wsdl:part element="tns:getMemory" name="parameters"></wsdl:part>
|
||||||
</wsdl:message>
|
</wsdl:message>
|
||||||
<wsdl:message name="EventNotice">
|
|
||||||
<wsdl:part element="tns:EventNotice" name="parameters"></wsdl:part>
|
|
||||||
</wsdl:message>
|
|
||||||
<wsdl:message name="XServicesFault">
|
<wsdl:message name="XServicesFault">
|
||||||
<wsdl:part element="tns:XServicesFault" name="XServicesFault"></wsdl:part>
|
<wsdl:part element="tns:XServicesFault" name="XServicesFault"></wsdl:part>
|
||||||
</wsdl:message>
|
</wsdl:message>
|
||||||
<wsdl:message name="getHostinfoResponse">
|
<wsdl:message name="getHostinfoResponse">
|
||||||
<wsdl:part element="tns:getHostinfoResponse" name="parameters"></wsdl:part>
|
<wsdl:part element="tns:getHostinfoResponse" name="parameters"></wsdl:part>
|
||||||
</wsdl:message>
|
</wsdl:message>
|
||||||
|
<wsdl:message name="mergeALFEventResponse">
|
||||||
|
<wsdl:part element="tns:mergeALFEventResponse" name="mergeALFEventResponse"></wsdl:part>
|
||||||
|
</wsdl:message>
|
||||||
<wsdl:message name="getInfo">
|
<wsdl:message name="getInfo">
|
||||||
<wsdl:part element="tns:getInfo" name="parameters"></wsdl:part>
|
<wsdl:part element="tns:getInfo" name="parameters"></wsdl:part>
|
||||||
</wsdl:message>
|
</wsdl:message>
|
||||||
<wsdl:message name="EventNoticeResponse">
|
|
||||||
<wsdl:part element="tns:EventNoticeResponse" name="parameters"></wsdl:part>
|
|
||||||
</wsdl:message>
|
|
||||||
<wsdl:message name="lockResponse">
|
<wsdl:message name="lockResponse">
|
||||||
<wsdl:part element="tns:lockResponse" name="parameters"></wsdl:part>
|
<wsdl:part element="tns:lockResponse" name="parameters"></wsdl:part>
|
||||||
</wsdl:message>
|
</wsdl:message>
|
||||||
|
@ -277,17 +283,17 @@
|
||||||
<wsdl:input message="tns:getMemory" name="getMemory"></wsdl:input>
|
<wsdl:input message="tns:getMemory" name="getMemory"></wsdl:input>
|
||||||
<wsdl:output message="tns:getMemoryResponse" name="getMemoryResponse"></wsdl:output>
|
<wsdl:output message="tns:getMemoryResponse" name="getMemoryResponse"></wsdl:output>
|
||||||
</wsdl:operation>
|
</wsdl:operation>
|
||||||
<wsdl:operation name="EventNotice">
|
|
||||||
<wsdl:input message="tns:EventNotice" name="EventNotice"></wsdl:input>
|
|
||||||
<wsdl:output message="tns:EventNoticeResponse" name="EventNoticeResponse"></wsdl:output>
|
|
||||||
<wsdl:fault message="tns:XServicesFault" name="XServicesFault"></wsdl:fault>
|
|
||||||
</wsdl:operation>
|
|
||||||
<wsdl:operation name="lock">
|
<wsdl:operation name="lock">
|
||||||
<wsdl:documentation>Get a lock.</wsdl:documentation>
|
<wsdl:documentation>Get a lock.</wsdl:documentation>
|
||||||
<wsdl:input message="tns:lock" name="lock"></wsdl:input>
|
<wsdl:input message="tns:lock" name="lock"></wsdl:input>
|
||||||
<wsdl:output message="tns:lockResponse" name="lockResponse"></wsdl:output>
|
<wsdl:output message="tns:lockResponse" name="lockResponse"></wsdl:output>
|
||||||
<wsdl:fault message="tns:XServicesFault" name="XServicesFault"></wsdl:fault>
|
<wsdl:fault message="tns:XServicesFault" name="XServicesFault"></wsdl:fault>
|
||||||
</wsdl:operation>
|
</wsdl:operation>
|
||||||
|
<wsdl:operation name="mergeALFEvent">
|
||||||
|
<wsdl:input message="tns:mergeALFEvent" name="mergeALFEvent"></wsdl:input>
|
||||||
|
<wsdl:output message="tns:mergeALFEventResponse" name="mergeALFEventResponse"></wsdl:output>
|
||||||
|
<wsdl:fault message="tns:XServicesFault" name="XServicesFault"></wsdl:fault>
|
||||||
|
</wsdl:operation>
|
||||||
<wsdl:operation name="getInfo">
|
<wsdl:operation name="getInfo">
|
||||||
<wsdl:documentation>Get XService information.</wsdl:documentation>
|
<wsdl:documentation>Get XService information.</wsdl:documentation>
|
||||||
<wsdl:input message="tns:getInfo" name="getInfo"></wsdl:input>
|
<wsdl:input message="tns:getInfo" name="getInfo"></wsdl:input>
|
||||||
|
@ -324,18 +330,6 @@
|
||||||
<soap:body use="literal"/>
|
<soap:body use="literal"/>
|
||||||
</wsdl:output>
|
</wsdl:output>
|
||||||
</wsdl:operation>
|
</wsdl:operation>
|
||||||
<wsdl:operation name="EventNotice">
|
|
||||||
<soap:operation soapAction="" style="document"/>
|
|
||||||
<wsdl:input name="EventNotice">
|
|
||||||
<soap:body use="literal"/>
|
|
||||||
</wsdl:input>
|
|
||||||
<wsdl:output name="EventNoticeResponse">
|
|
||||||
<soap:body use="literal"/>
|
|
||||||
</wsdl:output>
|
|
||||||
<wsdl:fault name="XServicesFault">
|
|
||||||
<soap:fault name="XServicesFault" use="literal"/>
|
|
||||||
</wsdl:fault>
|
|
||||||
</wsdl:operation>
|
|
||||||
<wsdl:operation name="lock">
|
<wsdl:operation name="lock">
|
||||||
<soap:operation soapAction="" style="document"/>
|
<soap:operation soapAction="" style="document"/>
|
||||||
<wsdl:input name="lock">
|
<wsdl:input name="lock">
|
||||||
|
@ -348,6 +342,18 @@
|
||||||
<soap:fault name="XServicesFault" use="literal"/>
|
<soap:fault name="XServicesFault" use="literal"/>
|
||||||
</wsdl:fault>
|
</wsdl:fault>
|
||||||
</wsdl:operation>
|
</wsdl:operation>
|
||||||
|
<wsdl:operation name="mergeALFEvent">
|
||||||
|
<soap:operation soapAction="EventNotice" style="document"/>
|
||||||
|
<wsdl:input name="mergeALFEvent">
|
||||||
|
<soap:body use="literal"/>
|
||||||
|
</wsdl:input>
|
||||||
|
<wsdl:output name="mergeALFEventResponse">
|
||||||
|
<soap:body use="literal"/>
|
||||||
|
</wsdl:output>
|
||||||
|
<wsdl:fault name="XServicesFault">
|
||||||
|
<soap:fault name="XServicesFault" use="literal"/>
|
||||||
|
</wsdl:fault>
|
||||||
|
</wsdl:operation>
|
||||||
<wsdl:operation name="getInfo">
|
<wsdl:operation name="getInfo">
|
||||||
<soap:operation soapAction="" style="document"/>
|
<soap:operation soapAction="" style="document"/>
|
||||||
<wsdl:input name="getInfo">
|
<wsdl:input name="getInfo">
|
||||||
|
@ -400,49 +406,125 @@
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ws:lock>
|
<ws:lock>
|
||||||
<!--Optional:-->
|
</ws:lock>
|
||||||
<id>${=org.apache.commons.lang.RandomStringUtils.randomNumeric(12)}</id>
|
|
||||||
<!--Optional:-->
|
|
||||||
<objectId>12345-${=org.apache.commons.lang.RandomStringUtils.randomNumeric(1)}</objectId>
|
|
||||||
</ws:lock>
|
|
||||||
</soapenv:Body>
|
</soapenv:Body>
|
||||||
</soapenv:Envelope>]]></con:request><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://ws.xservices.brutex.net/MiscService/lock"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation id="b0374c2b-4ebd-40fe-a161-22b3b70d2617" isOneWay="false" action="" name="EventNotice" bindingOperationName="EventNotice" type="Request-Response" outputName="EventNoticeResponse" inputName="EventNotice" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call id="b5dd6db6-6931-4abd-9fb9-5e49cef8dd58" name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net" xmlns:ns="http://www.eclipse.org/alf/schema/EventBase/1">\r
|
</soapenv:Envelope>]]></con:request><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://ws.xservices.brutex.net/MiscService/lock"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation id="8076c474-8699-481e-8b60-3c48aacc4496" isOneWay="false" action="EventNotice" name="mergeALFEvent" bindingOperationName="mergeALFEvent" type="Request-Response" outputName="mergeALFEventResponse" inputName="mergeALFEvent" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call id="41950d0f-99a4-421c-9c57-7413ddd129ec" name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns="http://www.eclipse.org/alf/schema/EventBase/1" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
|
||||||
<soapenv:Header/>\r
|
<soapenv:Header/>
|
||||||
<soapenv:Body>\r
|
<soapenv:Body>
|
||||||
<ws:EventNotice>\r
|
<ALFEventNoticeDoc version="1.0">
|
||||||
<!--Optional:-->\r
|
<Base>
|
||||||
<ns:EventNotice version="?">\r
|
<EventId>15b5fafba04143fb82a2fbfab51541a0</EventId>
|
||||||
<ns:Base>\r
|
<Timestamp>2023-05-15T17:15:00Z</Timestamp>
|
||||||
<ns:EventId>${=org.apache.commons.lang.RandomStringUtils.randomNumeric(12)}</ns:EventId>\r
|
<EventType>sync</EventType>
|
||||||
<!-- ${=java.time.Instant.now().truncatedTo(java.time.temporal.ChronoUnit.SECONDS)} -->
|
<ObjectType>OU</ObjectType>
|
||||||
<ns:Timestamp>${=java.time.Instant.now()}</ns:Timestamp>\r
|
<ObjectId>T945GyIUhU615E/eORsiFA==</ObjectId>
|
||||||
<ns:EventType>sync</ns:EventType>\r
|
<Source>
|
||||||
<ns:ObjectType>User</ns:ObjectType>\r
|
<Product>IDM</Product>
|
||||||
<ns:ObjectId>ABC${=org.apache.commons.lang.RandomStringUtils.randomNumeric(1)}</ns:ObjectId>\r
|
<ProductVersion>1.0</ProductVersion>
|
||||||
<ns:Source>\r
|
<ProductInstance>Default</ProductInstance>
|
||||||
<ns:Product>IDM</ns:Product>\r
|
</Source>
|
||||||
<ns:ProductVersion>1.0</ns:ProductVersion>\r
|
<User>
|
||||||
<ns:ProductInstance>Default</ns:ProductInstance>\r
|
<ALFSecurity>
|
||||||
|
<UsernameToken>
|
||||||
</ns:Source>\r
|
<Username>idminterface</Username>
|
||||||
<ns:User>\r
|
<Password>H?_{_8>8@wNWRx?ZaQ</Password>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
</UsernameToken>
|
||||||
</ns:User>\r
|
</ALFSecurity>
|
||||||
|
</User>
|
||||||
</ns:Base>\r
|
</Base>
|
||||||
<!--Optional:-->\r
|
<Extension>
|
||||||
<ns:Detail>\r
|
<FDN>C=DE\O=SYSTEM\OU=IDM\OU=MasterData\OU=OrgUnit\CN=24054</FDN>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
<data>
|
||||||
</ns:Detail>\r
|
<transport>
|
||||||
<!--Optional:-->\r
|
<was-attr-class-name>OU</was-attr-class-name>
|
||||||
<ns:Extension>\r
|
<was-attr-event-id>15b5fafba04143fb82a2fbfab51541a0</was-attr-event-id>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
<was-attr-from-merge>true</was-attr-from-merge>
|
||||||
</ns:Extension>\r
|
<was-attr-qualified-src-dn>C=DE\O=SYSTEM\OU=IDM\OU=MasterData\OU=OrgUnit\CN=24054</was-attr-qualified-src-dn>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
<was-attr-src-dn>\IDMTEST\DE\SYSTEM\IDM\MasterData\OrgUnit\24054</was-attr-src-dn>
|
||||||
</ns:EventNotice>\r
|
<was-attr-src-entry-id>7173715</was-attr-src-entry-id>
|
||||||
</ws:EventNotice>\r
|
<association>
|
||||||
</soapenv:Body>\r
|
<text>T945GyIUhU615E/eORsiFA==</text>
|
||||||
</soapenv:Envelope>]]></con:request><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://ws.xservices.brutex.net/MiscService/EventNotice"/><con:wsrmConfig version="1.2"/></con:call></con:operation></con:interface><con:testSuite name="Basic Call Tests" id="4f7bbdb7-7717-424b-b6d8-31bcb6834678"><con:settings/><con:runType>SEQUENTIAL</con:runType><con:testCase failOnError="true" failTestCaseOnErrors="true" keepSession="true" maxResults="0" name="Pull WSDL" searchProperties="true" id="2048fa40-8ecb-484e-98ff-6c50df26f33b"><con:settings/><con:testStep type="httprequest" name="http://localhost:8080/XServices/MiscService?WSDL" id="9352cf68-f189-4208-99a6-e0ce6707f0ba"><con:settings/><con:config method="GET" xsi:type="con:HttpRequest" name="http://localhost:8080/XServices/MiscService?WSDL" id="8f5f3123-56eb-4369-bc5d-fad6eb8b704f" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:endpoint>http://localhost:8080/XServices/MiscService?WSDL</con:endpoint><con:request/><con:assertion type="HTTP Download all resources" name="HTTP Download all resources" id="33c191fb-3b6f-40c1-ac69-466e87f3e592"/><con:assertion type="Response SLA Assertion" name="Response SLA" id="3fdfdeb5-6c77-44b7-ab0a-99c910314b0b"><con:configuration><SLA>200</SLA></con:configuration></con:assertion><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:parameters/></con:config></con:testStep><con:properties/></con:testCase><con:testCase failOnError="true" failTestCaseOnErrors="true" keepSession="false" maxResults="0" name="getHostInfo" searchProperties="true" id="056daaec-9b00-4484-9326-f1f83de86500"><con:settings/><con:testStep type="request" name="getHostInfo-localhost" id="c8233bd0-de27-40c6-85f0-6e99b4510525"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>getHostinfo</con:operation><con:request name="getHostInfo-localhost" id="bc8e3c7b-c849-4344-aacf-275d6f49314b"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net">
|
</association>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>CN</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-naming>true</was-attr-naming>
|
||||||
|
<was-attr-timestamp>1668775101#1357</was-attr-timestamp>
|
||||||
|
<was-attr-type>string</was-attr-type>
|
||||||
|
<text>24054</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degOULevel</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1328</was-attr-timestamp>
|
||||||
|
<was-attr-type>int</was-attr-type>
|
||||||
|
<text>5</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degOUManager</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1344</was-attr-timestamp>
|
||||||
|
<was-attr-type>string</was-attr-type>
|
||||||
|
<text>N0165</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degOUShort</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1333</was-attr-timestamp>
|
||||||
|
<was-attr-type>string</was-attr-type>
|
||||||
|
<text>IDM NEU 31052023_1</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degStatus</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1334</was-attr-timestamp>
|
||||||
|
<was-attr-type>int</was-attr-type>
|
||||||
|
<text>1</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>GUID</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1358</was-attr-timestamp>
|
||||||
|
<was-attr-type>octet</was-attr-type>
|
||||||
|
<text>T945GyIUhU615E/eORsiFA==</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<operation-data>
|
||||||
|
<was-attr-GUID>T945GyIUhU615E/eORsiFA==</was-attr-GUID>
|
||||||
|
<was-attr-event-id>15b5fafba04143fb82a2fbfab51541a0</was-attr-event-id>
|
||||||
|
<was-attr-op>sync</was-attr-op>
|
||||||
|
<was-attr-src-dn>\IDMTEST\DE\SYSTEM\IDM\MasterData\OrgUnit\24054</was-attr-src-dn>
|
||||||
|
</operation-data>
|
||||||
|
</transport>
|
||||||
|
</data>
|
||||||
|
</Extension>
|
||||||
|
</ALFEventNoticeDoc>
|
||||||
|
</soapenv:Body>
|
||||||
|
</soapenv:Envelope>
|
||||||
|
]]></con:request><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="EventNotice"/><con:wsrmConfig version="1.2"/></con:call></con:operation></con:interface><con:testSuite name="Basic Call Tests" id="4f7bbdb7-7717-424b-b6d8-31bcb6834678"><con:settings/><con:runType>SEQUENTIAL</con:runType><con:testCase failOnError="true" failTestCaseOnErrors="true" keepSession="true" maxResults="0" name="Pull WSDL" searchProperties="true" id="2048fa40-8ecb-484e-98ff-6c50df26f33b"><con:settings/><con:testStep type="httprequest" name="http://localhost:8080/XServices/MiscService?WSDL" id="9352cf68-f189-4208-99a6-e0ce6707f0ba"><con:settings/><con:config method="GET" xsi:type="con:HttpRequest" name="http://localhost:8080/XServices/MiscService?WSDL" id="8f5f3123-56eb-4369-bc5d-fad6eb8b704f" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:endpoint>http://localhost:8080/XServices/MiscService?WSDL</con:endpoint><con:request/><con:assertion type="HTTP Download all resources" name="HTTP Download all resources" id="33c191fb-3b6f-40c1-ac69-466e87f3e592"/><con:assertion type="Response SLA Assertion" name="Response SLA" id="3fdfdeb5-6c77-44b7-ab0a-99c910314b0b"><con:configuration><SLA>500</SLA></con:configuration></con:assertion><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:parameters/></con:config></con:testStep><con:properties/></con:testCase><con:testCase failOnError="true" failTestCaseOnErrors="true" keepSession="false" maxResults="0" name="getHostInfo" searchProperties="true" id="056daaec-9b00-4484-9326-f1f83de86500"><con:settings/><con:testStep type="request" name="getHostInfo-localhost" id="c8233bd0-de27-40c6-85f0-6e99b4510525"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>getHostinfo</con:operation><con:request name="getHostInfo-localhost" id="bc8e3c7b-c849-4344-aacf-275d6f49314b"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net">
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ws:getHostinfo>
|
<ws:getHostinfo>
|
||||||
|
@ -500,7 +582,7 @@
|
||||||
<seconds>0</seconds>
|
<seconds>0</seconds>
|
||||||
</ws:sleep>
|
</ws:sleep>
|
||||||
</soapenv:Body>
|
</soapenv:Body>
|
||||||
</soapenv:Envelope>]]></con:request><con:assertion type="SOAP Response" id="39c23799-a7e1-4732-a5ac-6f2c81b41d65"/><con:assertion type="Schema Compliance" id="56153039-f327-4288-a175-0ed896b8b40a"><con:configuration/></con:assertion><con:assertion type="SOAP Fault Assertion" id="8691aac4-de36-4ef7-a5ff-596d8cc33eae"/><con:assertion type="Response SLA Assertion" name="Response SLA" id="ba3c1c1d-6f5e-4a16-bd8f-12ae814abc94"><con:configuration><SLA>120200</SLA></con:configuration></con:assertion><con:credentials><con:authType>Global HTTP Settings</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508"/><con:wsrmConfig version="1.2"/></con:request></con:config></con:testStep><con:testStep type="request" name="sleep-verylong" id="234e0ca8-d4f1-4b51-932f-4c23965f8bce"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>sleep</con:operation><con:request name="sleep-verylong" id="4508e1b1-7f2b-4574-99a7-61eb61441b2e"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net">
|
</soapenv:Envelope>]]></con:request><con:assertion type="SOAP Response" id="39c23799-a7e1-4732-a5ac-6f2c81b41d65"/><con:assertion type="Schema Compliance" id="56153039-f327-4288-a175-0ed896b8b40a"><con:configuration/></con:assertion><con:assertion type="SOAP Fault Assertion" id="8691aac4-de36-4ef7-a5ff-596d8cc33eae"/><con:assertion type="Response SLA Assertion" name="Response SLA" id="ba3c1c1d-6f5e-4a16-bd8f-12ae814abc94"><con:configuration><SLA>120200</SLA></con:configuration></con:assertion><con:credentials><con:selectedAuthProfile>Basic</con:selectedAuthProfile><con:addedBasicAuthenticationTypes>Basic</con:addedBasicAuthenticationTypes><con:authType>Global HTTP Settings</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508"/><con:wsrmConfig version="1.2"/></con:request></con:config></con:testStep><con:testStep type="request" name="sleep-verylong" id="234e0ca8-d4f1-4b51-932f-4c23965f8bce"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>sleep</con:operation><con:request name="sleep-verylong" id="4508e1b1-7f2b-4574-99a7-61eb61441b2e"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net">
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ws:sleep>
|
<ws:sleep>
|
||||||
|
@ -518,48 +600,128 @@
|
||||||
<soapenv:Body>\r
|
<soapenv:Body>\r
|
||||||
<ws:lock>\r
|
<ws:lock>\r
|
||||||
<!--Optional:-->\r
|
<!--Optional:-->\r
|
||||||
<id>${=org.apache.commons.lang.RandomStringUtils.randomNumeric(12)}</id>\r
|
<id>${=org.apache.commons.lang.RandomStringUtils.randomNumeric(4)}</id>\r
|
||||||
<!--Optional:-->\r
|
<!--Optional:-->\r
|
||||||
<objectId>12345-${=org.apache.commons.lang.RandomStringUtils.randomNumeric(1)}</objectId>\r
|
<objectId>12345-${=org.apache.commons.lang.RandomStringUtils.randomNumeric(2)}</objectId>\r
|
||||||
</ws:lock>\r
|
</ws:lock>\r
|
||||||
</soapenv:Body>\r
|
</soapenv:Body>\r
|
||||||
</soapenv:Envelope>]]></con:request><con:assertion type="SOAP Response" id="62a06f54-9dd6-4acd-81ee-63b20bca9cc5" name="SOAP Response"/><con:assertion type="SOAP Fault Assertion" id="1165de94-a09d-4e7e-96ff-931c950e4208" name="Not SOAP Fault"/><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://ws.xservices.brutex.net/MiscService/lock"/><con:wsrmConfig version="1.2"/></con:request></con:config></con:testStep><con:loadTest id="127f0187-0a39-4543-9417-a0dfcfd1b832" name="lock-loadTest"><con:settings><con:setting id="HttpSettings@close-connections">false</con:setting></con:settings><con:threadCount>2</con:threadCount><con:startDelay>0</con:startDelay><con:sampleInterval>250</con:sampleInterval><con:calculateTPSOnTimePassed>true</con:calculateTPSOnTimePassed><con:resetStatisticsOnThreadCountChange>true</con:resetStatisticsOnThreadCountChange><con:historyLimit>-1</con:historyLimit><con:testLimit>30</con:testLimit><con:limitType>TIME</con:limitType><con:loadStrategy><con:type>Simple</con:type><con:config><testDelay>300</testDelay><randomFactor>0.5</randomFactor></con:config></con:loadStrategy><con:assertion type="Step Status" name="Step Status"/><con:maxAssertionErrors>100</con:maxAssertionErrors><con:cancelExcessiveThreads>true</con:cancelExcessiveThreads><con:strategyInterval>500</con:strategyInterval></con:loadTest><con:properties/></con:testCase><con:testCase id="a2f60fdb-57bd-4270-8473-5d5f06cae0a4" failOnError="true" failTestCaseOnErrors="true" keepSession="false" maxResults="0" name="SendALFEvent" searchProperties="true"><con:settings/><con:testStep type="request" id="775c1b45-941c-40e1-956b-0039b2b9d1b6" name="EventNotice - Request 1"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>EventNotice</con:operation><con:request name="EventNotice - Request 1" outgoingWss="" incomingWss="" timeout="" sslKeystore="" useWsAddressing="false" useWsReliableMessaging="false" wssPasswordType="" id="9ab98bee-e2aa-4498-9dc0-6b393c965ece"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net" xmlns:ns="http://www.eclipse.org/alf/schema/EventBase/1">\r
|
</soapenv:Envelope>]]></con:request><con:assertion type="SOAP Response" id="62a06f54-9dd6-4acd-81ee-63b20bca9cc5" name="SOAP Response"/><con:assertion type="SOAP Fault Assertion" id="1165de94-a09d-4e7e-96ff-931c950e4208" name="Not SOAP Fault"/><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://ws.xservices.brutex.net/MiscService/lock"/><con:wsrmConfig version="1.2"/></con:request></con:config></con:testStep><con:loadTest id="127f0187-0a39-4543-9417-a0dfcfd1b832" name="lock-loadTest"><con:settings><con:setting id="HttpSettings@close-connections">false</con:setting></con:settings><con:threadCount>12</con:threadCount><con:startDelay>0</con:startDelay><con:sampleInterval>250</con:sampleInterval><con:calculateTPSOnTimePassed>true</con:calculateTPSOnTimePassed><con:resetStatisticsOnThreadCountChange>true</con:resetStatisticsOnThreadCountChange><con:historyLimit>-1</con:historyLimit><con:testLimit>1000000</con:testLimit><con:limitType>COUNT</con:limitType><con:loadStrategy><con:type>Simple</con:type><con:config><testDelay>20</testDelay><randomFactor>0.5</randomFactor></con:config></con:loadStrategy><con:assertion type="Step Status" name="Step Status"/><con:maxAssertionErrors>100</con:maxAssertionErrors><con:cancelExcessiveThreads>true</con:cancelExcessiveThreads><con:strategyInterval>500</con:strategyInterval></con:loadTest><con:properties/></con:testCase><con:testCase id="a2f60fdb-57bd-4270-8473-5d5f06cae0a4" failOnError="true" failTestCaseOnErrors="true" keepSession="false" maxResults="0" name="SendALFEvent" searchProperties="true"><con:settings/><con:testStep type="request" id="60d02e49-d967-486a-9902-f57ccc2d41be" name="mergeALFEvent - Request 1"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>mergeALFEvent</con:operation><con:request name="mergeALFEvent - Request 1" outgoingWss="" incomingWss="" timeout="" sslKeystore="" useWsAddressing="false" useWsReliableMessaging="false" wssPasswordType="" id="990dc76f-6088-4dbb-b96c-2f7351300bd8"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns="http://www.eclipse.org/alf/schema/EventBase/1" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
|
||||||
<soapenv:Header/>\r
|
<soapenv:Header/>
|
||||||
<soapenv:Body>\r
|
<soapenv:Body>
|
||||||
<ws:EventNotice>\r
|
<ALFEventNoticeDoc version="1.0">
|
||||||
<!--Optional:-->\r
|
<Base>
|
||||||
<ns:EventNotice version="?">\r
|
<EventId>15b5fafba04143fb82a2fefab51541a0ccccccccccccccccccccccccccccc</EventId>
|
||||||
<ns:Base>\r
|
<Timestamp>2023-05-15T17:15:10Z</Timestamp>
|
||||||
<ns:EventId>${=org.apache.commons.lang.RandomStringUtils.randomNumeric(12)}</ns:EventId>\r
|
<EventType>sync</EventType>
|
||||||
<!-- ${=java.time.Instant.now().truncatedTo(java.time.temporal.ChronoUnit.SECONDS)} -->
|
<ObjectType>OU</ObjectType>
|
||||||
<ns:Timestamp>${=java.time.Instant.now()}</ns:Timestamp>\r
|
<ObjectId>T945GyIUhU615E/eOR${=org.apache.commons.lang.RandomStringUtils.randomNumeric(5)}</ObjectId>
|
||||||
<ns:EventType>sync</ns:EventType>\r
|
<Source>
|
||||||
<ns:ObjectType>User</ns:ObjectType>\r
|
<Product>IDM</Product>
|
||||||
<ns:ObjectId>ABC${=org.apache.commons.lang.RandomStringUtils.randomNumeric(5)}</ns:ObjectId>\r
|
<ProductVersion>1.0</ProductVersion>
|
||||||
<ns:Source>\r
|
<ProductInstance>Default</ProductInstance>
|
||||||
<ns:Product>IDM</ns:Product>\r
|
</Source>
|
||||||
<ns:ProductVersion>1.0</ns:ProductVersion>\r
|
<User>
|
||||||
<ns:ProductInstance>Default</ns:ProductInstance>\r
|
<ALFSecurity>
|
||||||
|
<UsernameToken>
|
||||||
</ns:Source>\r
|
<Username>idminterface</Username>
|
||||||
<ns:User>\r
|
<Password>H?_{_8>8@wNWRx?ZaQ</Password>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
</UsernameToken>
|
||||||
</ns:User>\r
|
</ALFSecurity>
|
||||||
|
</User>
|
||||||
</ns:Base>\r
|
</Base>
|
||||||
<!--Optional:-->\r
|
<Extension>
|
||||||
<ns:Detail>\r
|
<FDN>C=DE\O=SYSTEM\OU=IDM\OU=MasterData\OU=OrgUnit\CN=24054</FDN>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
<data>
|
||||||
</ns:Detail>\r
|
<transport>
|
||||||
<!--Optional:-->\r
|
<was-attr-class-name>OU</was-attr-class-name>
|
||||||
<ns:Extension>\r
|
<was-attr-event-id>15b5fafba04143fb82a2fbfab51541a0</was-attr-event-id>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
<was-attr-from-merge>true</was-attr-from-merge>
|
||||||
</ns:Extension>\r
|
<was-attr-qualified-src-dn>C=DE\O=SYSTEM\OU=IDM\OU=MasterData\OU=OrgUnit\CN=24054</was-attr-qualified-src-dn>
|
||||||
<!--You may enter ANY elements at this point-->\r
|
<was-attr-src-dn>\IDMTEST\DE\SYSTEM\IDM\MasterData\OrgUnit\24054</was-attr-src-dn>
|
||||||
</ns:EventNotice>\r
|
<was-attr-src-entry-id>7173715</was-attr-src-entry-id>
|
||||||
</ws:EventNotice>\r
|
<association>
|
||||||
</soapenv:Body>\r
|
<text>T945GyIUhU615E/eORsiFA==</text>
|
||||||
</soapenv:Envelope>]]></con:request><con:assertion type="SOAP Fault Assertion" id="bef57b04-a0a9-48dd-9b9b-6b719ffcbe37" name="Not SOAP Fault"/><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://ws.xservices.brutex.net/MiscService/EventNotice"/><con:wsrmConfig version="1.2"/></con:request></con:config></con:testStep><con:loadTest id="2ba2dd71-6199-481e-b63b-f1c1aa0b8a88" name="ALFEvend-LoadTest"><con:settings><con:setting id="HttpSettings@close-connections">false</con:setting><con:setting id="HttpSettings@include_request_in_time_taken">true</con:setting><con:setting id="HttpSettings@include_response_in_time_taken">true</con:setting></con:settings><con:threadCount>1</con:threadCount><con:startDelay>0</con:startDelay><con:sampleInterval>250</con:sampleInterval><con:calculateTPSOnTimePassed>true</con:calculateTPSOnTimePassed><con:resetStatisticsOnThreadCountChange>true</con:resetStatisticsOnThreadCountChange><con:historyLimit>-1</con:historyLimit><con:testLimit>5000</con:testLimit><con:limitType>COUNT</con:limitType><con:loadStrategy><con:type>Simple</con:type><con:config><testDelay>20</testDelay><randomFactor>0.5</randomFactor></con:config></con:loadStrategy><con:assertion type="Step Status" name="Step Status"/><con:maxAssertionErrors>100</con:maxAssertionErrors><con:statisticsLogFolder/><con:statisticsLogInterval>0</con:statisticsLogInterval><con:logStatisticsOnThreadChange>false</con:logStatisticsOnThreadChange><con:cancelOnReachedLimit>false</con:cancelOnReachedLimit><con:cancelExcessiveThreads>true</con:cancelExcessiveThreads><con:strategyInterval>500</con:strategyInterval><con:updateStatisticsPerTestStep>false</con:updateStatisticsPerTestStep></con:loadTest><con:properties/></con:testCase><con:testCase id="009c4c6f-cb7f-4881-ada4-a07ef8273328" failOnError="true" failTestCaseOnErrors="true" keepSession="false" maxResults="0" name="Generate UUID" searchProperties="true"><con:settings/><con:testStep type="request" id="8f3b38a1-67c5-4fe9-a0f4-018e4dec186b" name="generateUUID - Request 1"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>generateUUID</con:operation><con:request name="generateUUID - Request 1" outgoingWss="" incomingWss="" timeout="" sslKeystore="" useWsAddressing="false" useWsReliableMessaging="false" wssPasswordType="" id="85939931-bd58-456e-861d-16ed0149b6c6"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net">\r
|
</association>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>CN</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-naming>true</was-attr-naming>
|
||||||
|
<was-attr-timestamp>1668775101#1357</was-attr-timestamp>
|
||||||
|
<was-attr-type>string</was-attr-type>
|
||||||
|
<text>24054</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degOULevel</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1328</was-attr-timestamp>
|
||||||
|
<was-attr-type>int</was-attr-type>
|
||||||
|
<text>5</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degOUManager</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1344</was-attr-timestamp>
|
||||||
|
<was-attr-type>string</was-attr-type>
|
||||||
|
<text>N0165</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degOUShort</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1333</was-attr-timestamp>
|
||||||
|
<was-attr-type>string</was-attr-type>
|
||||||
|
<text>IDM NEU 31052023_1</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>degStatus</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1334</was-attr-timestamp>
|
||||||
|
<was-attr-type>int</was-attr-type>
|
||||||
|
<text>1</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<modify-attr>
|
||||||
|
<was-attr-attr-name>GUID</was-attr-attr-name>
|
||||||
|
<remove-all-values/>
|
||||||
|
<add-value>
|
||||||
|
<value>
|
||||||
|
<was-attr-timestamp>1668775101#1358</was-attr-timestamp>
|
||||||
|
<was-attr-type>octet</was-attr-type>
|
||||||
|
<text>T945GyIUhU615E/eORsiFA==</text>
|
||||||
|
</value>
|
||||||
|
</add-value>
|
||||||
|
</modify-attr>
|
||||||
|
<operation-data>
|
||||||
|
<was-attr-GUID>T945GyIUhU615E/eORsiFA==</was-attr-GUID>
|
||||||
|
<was-attr-event-id>15b5fafba04143fb82a2fbfab51541a0</was-attr-event-id>
|
||||||
|
<was-attr-op>sync</was-attr-op>
|
||||||
|
<was-attr-src-dn>\IDMTEST\DE\SYSTEM\IDM\MasterData\OrgUnit\24054</was-attr-src-dn>
|
||||||
|
</operation-data>
|
||||||
|
</transport>
|
||||||
|
</data>
|
||||||
|
</Extension>
|
||||||
|
</ALFEventNoticeDoc>
|
||||||
|
</soapenv:Body>
|
||||||
|
</soapenv:Envelope>
|
||||||
|
]]></con:request><con:assertion type="SOAP Response" id="bad186b6-1791-4337-a91b-addd315f02ef" name="SOAP Response"/><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="EventNotice"/><con:wsrmConfig version="1.2"/></con:request></con:config></con:testStep><con:loadTest id="2ba2dd71-6199-481e-b63b-f1c1aa0b8a88" name="ALFEvend-LoadTest"><con:settings><con:setting id="HttpSettings@close-connections">false</con:setting><con:setting id="HttpSettings@include_request_in_time_taken">true</con:setting><con:setting id="HttpSettings@include_response_in_time_taken">true</con:setting></con:settings><con:threadCount>8</con:threadCount><con:startDelay>0</con:startDelay><con:sampleInterval>250</con:sampleInterval><con:calculateTPSOnTimePassed>true</con:calculateTPSOnTimePassed><con:resetStatisticsOnThreadCountChange>true</con:resetStatisticsOnThreadCountChange><con:historyLimit>-1</con:historyLimit><con:testLimit>300000</con:testLimit><con:limitType>COUNT</con:limitType><con:loadStrategy><con:type>Variance</con:type><con:config><interval>50000</interval><variance>0.5</variance></con:config></con:loadStrategy><con:assertion type="Step Status" name="Step Status"/><con:maxAssertionErrors>100</con:maxAssertionErrors><con:statisticsLogFolder/><con:statisticsLogInterval>0</con:statisticsLogInterval><con:logStatisticsOnThreadChange>false</con:logStatisticsOnThreadChange><con:cancelOnReachedLimit>false</con:cancelOnReachedLimit><con:cancelExcessiveThreads>true</con:cancelExcessiveThreads><con:strategyInterval>500</con:strategyInterval><con:updateStatisticsPerTestStep>false</con:updateStatisticsPerTestStep></con:loadTest><con:properties/></con:testCase><con:testCase id="009c4c6f-cb7f-4881-ada4-a07ef8273328" failOnError="true" failTestCaseOnErrors="true" keepSession="false" maxResults="0" name="Generate UUID" searchProperties="true"><con:settings/><con:testStep type="request" id="8f3b38a1-67c5-4fe9-a0f4-018e4dec186b" name="generateUUID - Request 1"><con:settings/><con:config xsi:type="con:RequestStep" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:interface>MiscServiceSoapBinding</con:interface><con:operation>generateUUID</con:operation><con:request name="generateUUID - Request 1" outgoingWss="" incomingWss="" timeout="" sslKeystore="" useWsAddressing="false" useWsReliableMessaging="false" wssPasswordType="" id="85939931-bd58-456e-861d-16ed0149b6c6"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost:8080/XServices/MiscService</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xservices.brutex.net">\r
|
||||||
<soapenv:Header/>\r
|
<soapenv:Header/>\r
|
||||||
<soapenv:Body>\r
|
<soapenv:Body>\r
|
||||||
<ws:generateUUID/>\r
|
<ws:generateUUID/>\r
|
||||||
|
|
Loading…
Reference in New Issue