From 6b37a400d928344aa9fed3260ca539cc4e892a34 Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Mon, 17 Nov 2014 12:26:59 +0200 Subject: [PATCH] Move Splunk to the individual repo --- spring-integration-splunk/.gitignore | 8 - spring-integration-splunk/README.md | 166 +---- spring-integration-splunk/build.gradle | 270 -------- spring-integration-splunk/gradle.properties | 8 - .../gradle/wrapper/gradle-wrapper.jar | Bin 51348 -> 0 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 - spring-integration-splunk/gradlew | 164 ----- spring-integration-splunk/gradlew.bat | 90 --- .../publish-maven.gradle | 60 -- .../src/api/overview.html | 22 - .../src/dist/changelog.txt | 8 - .../src/dist/license.txt | 201 ------ spring-integration-splunk/src/dist/notice.txt | 21 - spring-integration-splunk/src/dist/readme.txt | 13 - .../SplunkInboundChannelAdapterParser.java | 98 --- .../config/xml/SplunkNamespaceHandler.java | 37 -- .../SplunkOutboundChannelAdapterParser.java | 141 ----- .../splunk/config/xml/SplunkParserUtils.java | 60 -- .../splunk/config/xml/SplunkServerParser.java | 68 -- .../splunk/config/xml/package-info.java | 4 - .../integration/splunk/core/DataReader.java | 32 - .../integration/splunk/core/DataWriter.java | 31 - .../splunk/core/ServiceFactory.java | 23 - .../integration/splunk/core/package-info.java | 4 - .../splunk/event/AcManagementEvent.java | 67 -- .../integration/splunk/event/AuthEvent.java | 84 --- .../integration/splunk/event/DnsEvent.java | 95 --- .../integration/splunk/event/EmailEvent.java | 50 -- .../splunk/event/EndpointProtectionEvent.java | 117 ---- .../integration/splunk/event/FileEvent.java | 93 --- .../splunk/event/IntrusionDetectionEvent.java | 126 ---- .../event/MalwareEndpointProtectionEvent.java | 143 ----- .../event/MalwareNetworkProtectionEvent.java | 64 -- .../splunk/event/NetworkProtectionEvent.java | 57 -- .../splunk/event/NetworkTrafficEssEvent.java | 76 --- .../event/NetworkTrafficGenericEvent.java | 438 ------------- .../splunk/event/PacketFilterEvent.java | 75 --- .../integration/splunk/event/ProxyEvent.java | 133 ---- .../integration/splunk/event/SplunkEvent.java | 580 ------------------ .../splunk/event/SystemCenterEvent.java | 184 ------ .../splunk/event/TrafficEvent.java | 55 -- .../splunk/event/UserInfoUpdateEvent.java | 134 ---- .../splunk/event/VulnerabilityEvent.java | 70 --- .../splunk/event/WindowsAdminEvent.java | 49 -- .../inbound/SplunkPollingChannelAdapter.java | 78 --- .../splunk/inbound/package-info.java | 4 - .../SplunkOutboundChannelAdapter.java | 73 --- .../splunk/outbound/package-info.java | 4 - .../support/AbstractSplunkDataWriter.java | 161 ----- .../splunk/support/ArgsBuilder.java | 79 --- .../splunk/support/SearchMode.java | 33 - .../splunk/support/SplunkArgsFactoryBean.java | 75 --- .../splunk/support/SplunkDataReader.java | 453 -------------- .../splunk/support/SplunkExecutor.java | 88 --- .../splunk/support/SplunkIndexWriter.java | 79 --- .../splunk/support/SplunkServer.java | 218 ------- .../splunk/support/SplunkServiceFactory.java | 160 ----- .../splunk/support/SplunkSubmitWriter.java | 84 --- .../splunk/support/SplunkTcpWriter.java | 57 -- .../main/resources/META-INF/spring.handlers | 1 - .../main/resources/META-INF/spring.schemas | 2 - .../main/resources/META-INF/spring.tooling | 4 - .../xml/spring-integration-splunk-1.0.xsd | 392 ------------ .../xml/spring-integration-splunk-1.1.xsd | 404 ------------ .../config/xml/spring-integration-splunk.gif | Bin 572 -> 0 bytes .../src/reference/docbook/history.xml | 20 - .../src/reference/docbook/images/logo.png | Bin 17393 -> 0 bytes .../src/reference/docbook/index.xml | 64 -- .../src/reference/docbook/resources.xml | 27 - .../src/reference/docbook/splunk.xml | 218 ------- .../src/reference/docbook/whats-new.xml | 17 - ...dChannelAdapterParserSavedSearchTests.java | 69 --- ...plunkInboundChannelAdapterParserTests.java | 78 --- ...tboundChannelAdapterParserStreamTests.java | 56 -- ...lunkOutboundChannelAdapterParserTests.java | 67 -- .../config/xml/SplunkServerParserTests.java | 56 -- .../splunk/event/SplunkEventTests.java | 68 -- .../SplunkPollingChannelAdapterTests.java | 70 --- .../SplunkOutboundChannelAdapterTests.java | 64 -- .../splunk/support/SplunkDataReaderTests.java | 111 ---- .../splunk/support/SplunkDataWriterTests.java | 79 --- .../splunk/support/SplunkExecutorTests.java | 88 --- .../src/test/resources/log4j.properties | 7 - .../splunk/SplunkCommon-context.xml | 19 - ...oundChannelAdapterParserCommon-context.xml | 21 - ...lAdapterParserSavedSearchTests-context.xml | 25 - ...boundChannelAdapterParserTests-context.xml | 24 - ...hannelAdapterParserStreamTests-context.xml | 23 - ...boundChannelAdapterParserTests-context.xml | 23 - .../xml/SplunkServerParserTests-context.xml | 17 - .../src/test/resources/splunk-data.xml | 236 ------- 91 files changed, 1 insertion(+), 8220 deletions(-) delete mode 100644 spring-integration-splunk/.gitignore delete mode 100644 spring-integration-splunk/build.gradle delete mode 100644 spring-integration-splunk/gradle.properties delete mode 100644 spring-integration-splunk/gradle/wrapper/gradle-wrapper.jar delete mode 100644 spring-integration-splunk/gradle/wrapper/gradle-wrapper.properties delete mode 100755 spring-integration-splunk/gradlew delete mode 100644 spring-integration-splunk/gradlew.bat delete mode 100644 spring-integration-splunk/publish-maven.gradle delete mode 100644 spring-integration-splunk/src/api/overview.html delete mode 100644 spring-integration-splunk/src/dist/changelog.txt delete mode 100644 spring-integration-splunk/src/dist/license.txt delete mode 100644 spring-integration-splunk/src/dist/notice.txt delete mode 100644 spring-integration-splunk/src/dist/readme.txt delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParser.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkNamespaceHandler.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParser.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkParserUtils.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkServerParser.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/package-info.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataReader.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataWriter.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/ServiceFactory.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/package-info.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AcManagementEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AuthEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/DnsEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EmailEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EndpointProtectionEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/FileEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/IntrusionDetectionEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareEndpointProtectionEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareNetworkProtectionEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkProtectionEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficEssEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficGenericEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/PacketFilterEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/ProxyEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SplunkEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SystemCenterEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/TrafficEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/UserInfoUpdateEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/VulnerabilityEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/WindowsAdminEvent.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapter.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/package-info.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapter.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/package-info.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/AbstractSplunkDataWriter.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/ArgsBuilder.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SearchMode.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkArgsFactoryBean.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkDataReader.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkExecutor.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkIndexWriter.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServer.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServiceFactory.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkSubmitWriter.java delete mode 100644 spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkTcpWriter.java delete mode 100644 spring-integration-splunk/src/main/resources/META-INF/spring.handlers delete mode 100644 spring-integration-splunk/src/main/resources/META-INF/spring.schemas delete mode 100644 spring-integration-splunk/src/main/resources/META-INF/spring.tooling delete mode 100644 spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.0.xsd delete mode 100644 spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.1.xsd delete mode 100644 spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk.gif delete mode 100644 spring-integration-splunk/src/reference/docbook/history.xml delete mode 100644 spring-integration-splunk/src/reference/docbook/images/logo.png delete mode 100644 spring-integration-splunk/src/reference/docbook/index.xml delete mode 100644 spring-integration-splunk/src/reference/docbook/resources.xml delete mode 100644 spring-integration-splunk/src/reference/docbook/splunk.xml delete mode 100644 spring-integration-splunk/src/reference/docbook/whats-new.xml delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkServerParserTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/event/SplunkEventTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapterTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapterTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataReaderTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataWriterTests.java delete mode 100644 spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkExecutorTests.java delete mode 100644 spring-integration-splunk/src/test/resources/log4j.properties delete mode 100644 spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/SplunkCommon-context.xml delete mode 100644 spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserCommon-context.xml delete mode 100644 spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests-context.xml delete mode 100644 spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests-context.xml delete mode 100644 spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests-context.xml delete mode 100644 spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests-context.xml delete mode 100644 spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkServerParserTests-context.xml delete mode 100644 spring-integration-splunk/src/test/resources/splunk-data.xml diff --git a/spring-integration-splunk/.gitignore b/spring-integration-splunk/.gitignore deleted file mode 100644 index 0c7fdb9..0000000 --- a/spring-integration-splunk/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -.classpath -.project -.settings/ -.gradle -build -target/ -bin/ -derby.log diff --git a/spring-integration-splunk/README.md b/spring-integration-splunk/README.md index 6d2698d..956674b 100644 --- a/spring-integration-splunk/README.md +++ b/spring-integration-splunk/README.md @@ -1,168 +1,4 @@ Spring Integration Splunk Adapter ================================================= -The SI adapter includes Outbound Channel Adapter and Inbound Channel Adapter. - -Inbound channel adapter : ------------------------------------------------------------------------------ -The Inbound channel adapter is used to read data from Splunk and output a message containing the data to a Spring Integration channel. There are 5 ways to get data from Splunk: - -* Blocking -* Non blocking -* Saved search -* Realtime -* Export - - -### Blocking search: - -```xml - - - -``` - - -### Non blocking search: - -```xml - - - -``` - - -### Saved search: - -```xml - - - -``` - - -### Realtime search: - -```xml - - - -``` - -### Export: - -```xml - - - -``` - -Outbound channel adapter: ----------------------------------------------------------------------------------------------- - -The Outbound channel adapter is used to write data to Splunk from a Spring Integration message channel. There are 3 types of data writers provided: - -* submit - Use's Splunk's REST API. Appropriate for small or infrequent data loads. Posts data to a named index or the default if not specified. -* index - Streams data to a named index or the default if not specified. -* tcp - Streams data to a tcp port associated with a defined tcp input. - -The outbound channel adapter requires a child *-writer element which defines related attributes: - -### Submit: - -```xml - - - -``` - -### Index: - -```xml - - - -``` - -### TCP - -```xml - - - -``` - -*NOTE: The input must exist and be enabled on the server* - -### Configuring The Splunk Server connection - -```xml - -``` - -Alternatively, you can configure a Splunk Server failover mechanism - -```xml - - - - - - - - - - - - -``` - -Additional server properties include (see [splunk](http://docs.splunk.com/Documentation/Splunk/latest) documentation for details): - -* app -* scheme -* scope -* owner - -The default host is *localhost* and the default port is *8089*. The *timeout* attribute indicates how long to wait for a connection in miliseconds. - - -Development ------------------ -### Build: - - ./gradlew build - -### Import the project to Eclipse: - -To generate Eclipse metadata (e.g., .classpath and .project files), do the following: - - ./gradlew eclipse - +The project is hosted on https://github.com/spring-projects/spring-integration-splunk \ No newline at end of file diff --git a/spring-integration-splunk/build.gradle b/spring-integration-splunk/build.gradle deleted file mode 100644 index d930be6..0000000 --- a/spring-integration-splunk/build.gradle +++ /dev/null @@ -1,270 +0,0 @@ -description = 'Spring Integration Splunk Adapter' - -buildscript { - repositories { - maven { url 'http://repo.spring.io/plugins-release' } - } - dependencies { - classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.2.8' - classpath 'org.springframework.build.gradle:spring-io-plugin:0.0.3.RELEASE' - } -} - -apply plugin: 'java' -apply from: "${rootProject.projectDir}/publish-maven.gradle" -apply plugin: 'eclipse' -apply plugin: 'idea' - -if (project.hasProperty('platformVersion')) { - apply plugin: 'spring-io' - - repositories { - maven { url "https://repo.spring.io/libs-snapshot" } - } - - dependencies { - springIoVersions "io.spring.platform:platform-versions:${platformVersion}@properties" - } -} - -group = 'org.springframework.integration' - -repositories { - maven { url 'http://repo.spring.io/libs-milestone' } -} - -sourceCompatibility=1.6 -targetCompatibility=1.6 - -ext { - linkHomepage = 'https://github.com/spring-projects/spring-integration-extensions' - linkCi = 'https://build.spring.io/browse/INTEXT' - linkIssue = 'https://jira.spring.io/browse/INTEXT' - linkScmUrl = 'https://github.com/spring-projects/spring-integration-extensions' - linkScmConnection = 'https://github.com/spring-projects/spring-integration-extensions.git' - linkScmDevConnection = 'git@github.com:spring-projects/spring-integration-extensions.git' - - shortName = 'splunk' -} - -// See http://www.gradle.org/docs/current/userguide/dependency_management.html#sub:configurations -// and http://www.gradle.org/docs/current/dsl/org.gradle.api.artifacts.ConfigurationContainer.html -configurations { - jacoco //Configuration Group used by Sonar to provide Code Coverage using JaCoCo -} - -dependencies { - compile "com.splunk:splunk:$splunkVersion" - compile "org.springframework.integration:spring-integration-core:$springIntegrationVersion" - compile "joda-time:joda-time:$jodaTimeVersion" - compile "commons-pool:commons-pool:$commonsPoolVersion" - - testCompile "org.mockito:mockito-all:$mockitoVersion" - testCompile "org.springframework.integration:spring-integration-test:$springIntegrationVersion" - testCompile "junit:junit-dep:$junitVersion" - testCompile "log4j:log4j:$log4jVersion" - testCompile "org.springframework.integration:spring-integration-stream:$springIntegrationVersion" - jacoco group: "org.jacoco", name: "org.jacoco.agent", version: "0.5.6.201201232323", classifier: "runtime" -} - - -eclipse { - project { - natures += 'org.springframework.ide.eclipse.core.springnature' - } -} - -sourceSets { - test { - resources { - srcDirs = ['src/test/resources', 'src/test/java'] - } - } -} - - - -// enable all compiler warnings; individual projects may customize further -ext.xLintArg = '-Xlint:all,-options' -[compileJava, compileTestJava]*.options*.compilerArgs = [xLintArg] - -test { - // suppress all console output during testing unless running `gradle -i` - logging.captureStandardOutput(LogLevel.INFO) - jvmArgs "-javaagent:${configurations.jacoco.asPath}=destfile=${buildDir}/jacoco.exec,includes=*" -} - -task sourcesJar(type: Jar) { - classifier = 'sources' - from sourceSets.main.allJava -} - -task javadocJar(type: Jar) { - classifier = 'javadoc' - from javadoc -} - -artifacts { - archives sourcesJar - archives javadocJar -} - -apply plugin: 'docbook-reference' - -reference { - sourceDir = file('src/reference/docbook') -} - -apply plugin: 'sonar-runner' - -sonarRunner { - sonarProperties { - property "sonar.jacoco.reportPath", "${buildDir.name}/jacoco.exec" - property "sonar.links.homepage", linkHomepage - property "sonar.links.ci", linkCi - property "sonar.links.issue", linkIssue - property "sonar.links.scm", linkScmUrl - property "sonar.links.scm_dev", linkScmDevConnection - property "sonar.java.coveragePlugin", "jacoco" - } -} - -task api(type: Javadoc) { - group = 'Documentation' - description = 'Generates aggregated Javadoc API documentation.' - title = "${rootProject.description} ${version} API" - options.memberLevel = org.gradle.external.javadoc.JavadocMemberLevel.PROTECTED - options.author = true - options.header = rootProject.description - options.overview = 'src/api/overview.html' - source subprojects.collect { project -> - project.sourceSets.main.allJava - } - destinationDir = new File(buildDir, "api") - classpath = files(subprojects.collect { project -> - project.sourceSets.main.compileClasspath - }) -} - -task schemaZip(type: Zip) { - group = 'Distribution' - classifier = 'schema' - description = "Builds -${classifier} archive containing all " + - "XSDs for deployment at static.springframework.org/schema." - - def Properties schemas = new Properties(); - - project.sourceSets.main.resources.find { - it.path.endsWith('META-INF/spring.schemas') - }?.withInputStream { schemas.load(it) } - - for (def key : schemas.keySet()) { - File xsdFile = project.sourceSets.main.resources.find { - it.path.endsWith(schemas.get(key)) - } - assert xsdFile != null - into ("integration/${shortName}") { - from xsdFile.path - } - } -} - -task docsZip(type: Zip) { - group = 'Distribution' - classifier = 'docs' - description = "Builds -${classifier} archive containing api and reference " + - "for deployment at static.springframework.org/spring-integration/docs." - - from('src/dist') { - include 'changelog.txt' - } - - from (api) { - into 'api' - } - - from (reference) { - into 'reference' - } -} - -task distZip(type: Zip, dependsOn: [docsZip, schemaZip]) { - group = 'Distribution' - classifier = 'dist' - description = "Builds -${classifier} archive, containing all jars and docs, " + - "suitable for community download page." - - ext.baseDir = "${project.name}-${project.version}"; - - from('src/dist') { - include 'readme.txt' - include 'license.txt' - include 'notice.txt' - into "${baseDir}" - } - - from(zipTree(docsZip.archivePath)) { - into "${baseDir}/docs" - } - - from(zipTree(schemaZip.archivePath)) { - into "${baseDir}/schema" - } - - subprojects.each { subproject -> - into ("${baseDir}/libs") { - from subproject.jar - from subproject.sourcesJar - from subproject.javadocJar - } - } -} - -// Create an optional "with dependencies" distribution. -// Not published by default; only for use when building from source. -task depsZip(type: Zip, dependsOn: distZip) { zipTask -> - group = 'Distribution' - classifier = 'dist-with-deps' - description = "Builds -${classifier} archive, containing everything " + - "in the -${distZip.classifier} archive plus all dependencies." - - from zipTree(distZip.archivePath) - - gradle.taskGraph.whenReady { taskGraph -> - if (taskGraph.hasTask(":${zipTask.name}")) { - def projectNames = rootProject.subprojects*.name - def artifacts = new HashSet() - subprojects.each { subproject -> - subproject.configurations.runtime.resolvedConfiguration.resolvedArtifacts.each { artifact -> - def dependency = artifact.moduleVersion.id - if (!projectNames.contains(dependency.name)) { - artifacts << artifact.file - } - } - } - - zipTask.from(artifacts) { - into "${distZip.baseDir}/deps" - } - } - } -} - -artifacts { - archives distZip - archives docsZip - archives schemaZip -} - -task dist(dependsOn: assemble) { - group = 'Distribution' - description = 'Builds -dist, -docs and -schema distribution archives.' -} - -task wrapper(type: Wrapper) { - description = 'Generates gradlew[.bat] scripts' - gradleVersion = '1.12' - distributionUrl = "http://services.gradle.org/distributions/gradle-${gradleVersion}-all.zip" -} - -defaultTasks 'build' diff --git a/spring-integration-splunk/gradle.properties b/spring-integration-splunk/gradle.properties deleted file mode 100644 index ac021e5..0000000 --- a/spring-integration-splunk/gradle.properties +++ /dev/null @@ -1,8 +0,0 @@ -splunkVersion=1.3.0 -version=1.2.0.BUILD-SNAPSHOT -commonsPoolVersion=1.6 -springIntegrationVersion=4.0.2.RELEASE -mockitoVersion=1.9.5 -junitVersion=4.11 -log4jVersion=1.2.17 -jodaTimeVersion=2.3 diff --git a/spring-integration-splunk/gradle/wrapper/gradle-wrapper.jar b/spring-integration-splunk/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 0087cd3b18659b5577cf6ad3ef61f8eb9416ebba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51348 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

CflOl1i4(-2^1KXo)&I5QlgjRKFQgM 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 z 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 diff --git a/spring-integration-splunk/gradle/wrapper/gradle-wrapper.properties b/spring-integration-splunk/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index 3598337..0000000 --- a/spring-integration-splunk/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,6 +0,0 @@ -#Fri Jun 06 13:11:01 EEST 2014 -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip diff --git a/spring-integration-splunk/gradlew b/spring-integration-splunk/gradlew deleted file mode 100755 index 91a7e26..0000000 --- a/spring-integration-splunk/gradlew +++ /dev/null @@ -1,164 +0,0 @@ -#!/usr/bin/env bash - -############################################################################## -## -## Gradle start up script for UN*X -## -############################################################################## - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" - -APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" - -warn ( ) { - echo "$*" -} - -die ( ) { - echo - echo "$*" - echo - exit 1 -} - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; -esac - -# For Cygwin, ensure paths are in UNIX format before anything is touched. -if $cygwin ; then - [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` -fi - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >&- -APP_HOME="`pwd -P`" -cd "$SAVED" >&- - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD="java" - which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." -fi - -# Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=$((i+1)) - done - case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; - esac -fi - -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") -} -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" - -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/spring-integration-splunk/gradlew.bat b/spring-integration-splunk/gradlew.bat deleted file mode 100644 index aec9973..0000000 --- a/spring-integration-splunk/gradlew.bat +++ /dev/null @@ -1,90 +0,0 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windowz variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/spring-integration-splunk/publish-maven.gradle b/spring-integration-splunk/publish-maven.gradle deleted file mode 100644 index d61474b..0000000 --- a/spring-integration-splunk/publish-maven.gradle +++ /dev/null @@ -1,60 +0,0 @@ -apply plugin: 'maven' - -ext.optionalDeps = [] -ext.providedDeps = [] -ext.optional = { optionalDeps << it } -ext.provided = { providedDeps << it } - -install { - repositories.mavenInstaller { - customizePom(pom, project) - } -} - -def customizePom(pom, gradleProject) { - pom.whenConfigured { generatedPom -> - // respect 'optional' and 'provided' dependencies - gradleProject.optionalDeps.each { dep -> - generatedPom.dependencies.find { it.artifactId == dep.name }?.optional = true - } - gradleProject.providedDeps.each { dep -> - generatedPom.dependencies.find { it.artifactId == dep.name }?.scope = 'provided' - } - - // eliminate test-scoped dependencies (no need in maven central poms) - generatedPom.dependencies.removeAll { dep -> - dep.scope == 'test' - } - - // add all items necessary for maven central publication - generatedPom.project { - name = gradleProject.description - description = gradleProject.description - url = 'https://github.com/SpringSource/spring-integration-extensions' - organization { - name = 'SpringSource' - url = 'http://springsource.org' - } - licenses { - license { - name 'The Apache Software License, Version 2.0' - url 'http://www.apache.org/licenses/LICENSE-2.0.txt' - distribution 'repo' - } - } - scm { - url = 'https://github.com/SpringSource/spring-integration-extensions' - connection = 'scm:git:git://github.com/SpringSource/spring-integration-extensions' - developerConnection = 'scm:git:git://github.com/SpringSource/spring-integration-extensions' - } - - developers { - developer { - id = 'Jarred' - name = 'Jarred Li' - email = 'leejianwei@126.com' - } - } - } - } -} diff --git a/spring-integration-splunk/src/api/overview.html b/spring-integration-splunk/src/api/overview.html deleted file mode 100644 index fb0198b..0000000 --- a/spring-integration-splunk/src/api/overview.html +++ /dev/null @@ -1,22 +0,0 @@ - - -This document is the API specification for Spring Integration -


-
-

- For further API reference and developer documentation, see the - Spring - Integration reference documentation. - That documentation contains more detailed, developer-targeted - descriptions, with conceptual overviews, definitions of terms, - workarounds, and working code examples. -

- -

- If you are interested in commercial training, consultancy, and - support for Spring Integration, please visit - http://www.springsource.com -

-
- - diff --git a/spring-integration-splunk/src/dist/changelog.txt b/spring-integration-splunk/src/dist/changelog.txt deleted file mode 100644 index c78641e..0000000 --- a/spring-integration-splunk/src/dist/changelog.txt +++ /dev/null @@ -1,8 +0,0 @@ -Spring Integration Splunk Adapter CHANGELOG -========================================= - -Features in version 1.0.0 - -1. Inbound channel adapter with 5 different ways to search data: bloking, normal(non-blocking), realtime, export, saved search. - -2. Outbound channel adapter with 3 ways to push event data: Stream, tcp, REST diff --git a/spring-integration-splunk/src/dist/license.txt b/spring-integration-splunk/src/dist/license.txt deleted file mode 100644 index 261eeb9..0000000 --- a/spring-integration-splunk/src/dist/license.txt +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - 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. diff --git a/spring-integration-splunk/src/dist/notice.txt b/spring-integration-splunk/src/dist/notice.txt deleted file mode 100644 index f62045a..0000000 --- a/spring-integration-splunk/src/dist/notice.txt +++ /dev/null @@ -1,21 +0,0 @@ - ======================================================================== - == NOTICE file corresponding to section 4 d of the Apache License, == - == Version 2.0, in this case for the Spring Integration distribution. == - ======================================================================== - - This product includes software developed by - the Apache Software Foundation (http://www.apache.org). - - The end-user documentation included with a redistribution, if any, - must include the following acknowledgement: - - "This product includes software developed by the Spring Framework - Project (http://www.springframework.org)." - - Alternatively, this acknowledgement may appear in the software itself, - if and wherever such third-party acknowledgements normally appear. - - The names "Spring", "Spring Framework", and "Spring Integration" must - not be used to endorse or promote products derived from this software - without prior written permission. For written permission, please contact - enquiries@springsource.com. diff --git a/spring-integration-splunk/src/dist/readme.txt b/spring-integration-splunk/src/dist/readme.txt deleted file mode 100644 index 886e33e..0000000 --- a/spring-integration-splunk/src/dist/readme.txt +++ /dev/null @@ -1,13 +0,0 @@ -Spring Integration Splunk Adapter ------------------------------------ - -To find out what has changed since any earlier releases, see 'changelog.txt'. - -Please consult the documentation located within the 'docs/reference' directory -of this release and also visit the official Spring Integration home at -http://www.springsource.org/spring-integration - -There you will find links to the forum, issue tracker, and several other resources. - -See https://github.com/SpringSource/spring-integration#readme for additional -information including instructions on building from source. diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParser.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParser.java deleted file mode 100644 index b9ccad9..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParser.java +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright 2002-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import org.w3c.dom.Element; - -import org.springframework.beans.BeanMetadataElement; -import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.config.RuntimeBeanReference; -import org.springframework.beans.factory.parsing.BeanComponentDefinition; -import org.springframework.beans.factory.support.BeanDefinitionBuilder; -import org.springframework.beans.factory.support.ManagedList; -import org.springframework.beans.factory.xml.ParserContext; -import org.springframework.integration.config.xml.AbstractPollingInboundChannelAdapterParser; -import org.springframework.integration.config.xml.IntegrationNamespaceUtils; -import org.springframework.integration.splunk.inbound.SplunkPollingChannelAdapter; -import org.springframework.integration.splunk.support.SplunkDataReader; -import org.springframework.integration.splunk.support.SplunkServiceFactory; -import org.springframework.util.StringUtils; - -/** - * The Splunk Inbound Channel adapter parser - * - * @author Jarred Li - * @author Olivier Lamy - * @since 1.0 - * - */ -public class SplunkInboundChannelAdapterParser extends AbstractPollingInboundChannelAdapterParser { - - - protected BeanMetadataElement parseSource(Element element, ParserContext parserContext) { - - BeanDefinitionBuilder splunkPollingChannelAdapterBuilder = - BeanDefinitionBuilder.genericBeanDefinition(SplunkPollingChannelAdapter.class); - - BeanDefinitionBuilder splunkExecutorBuilder = SplunkParserUtils.getSplunkExecutorBuilder(element, parserContext); - - BeanDefinitionBuilder splunkDataReaderBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkDataReader.class); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "mode"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "count"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "field-list"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "search"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "saved-search"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "owner"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "app"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "init-earliest-time"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "earliest-time"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(splunkDataReaderBuilder, element, "latest-time"); - - // initialize splunk servers references - BeanDefinitionBuilder serviceFactoryBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkServiceFactory.class); - - String splunkServerBeanNames = element.getAttribute("splunk-server-ref"); - if (StringUtils.hasText(splunkServerBeanNames)) { - - ManagedList splunkServersList = new ManagedList(); - - for (String splunkServerBeanName : StringUtils.commaDelimitedListToStringArray(splunkServerBeanNames)) { - splunkServersList.add(new RuntimeBeanReference(splunkServerBeanName)); - } - serviceFactoryBuilder.addConstructorArgValue(splunkServersList); - splunkDataReaderBuilder.addConstructorArgValue(serviceFactoryBuilder.getBeanDefinition()); - } - - String channelAdapterId = this.resolveId(element, splunkPollingChannelAdapterBuilder.getRawBeanDefinition(), - parserContext); - String splunkExecutorBeanName = channelAdapterId + ".splunkExecutor"; - String splunkDataReaderBeanName = splunkExecutorBeanName + ".reader"; - - parserContext.registerBeanComponent(new BeanComponentDefinition(splunkDataReaderBuilder.getBeanDefinition(), - splunkDataReaderBeanName)); - splunkExecutorBuilder.addPropertyReference("reader", splunkDataReaderBeanName); - - BeanDefinition splunkExecutorBuilderBeanDefinition = splunkExecutorBuilder.getBeanDefinition(); - parserContext.registerBeanComponent(new BeanComponentDefinition(splunkExecutorBuilderBeanDefinition, - splunkExecutorBeanName)); - - splunkPollingChannelAdapterBuilder.addConstructorArgReference(splunkExecutorBeanName); - - return splunkPollingChannelAdapterBuilder.getBeanDefinition(); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkNamespaceHandler.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkNamespaceHandler.java deleted file mode 100644 index c9789e9..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkNamespaceHandler.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2002-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import org.springframework.integration.config.xml.AbstractIntegrationNamespaceHandler; - -/** - * The namespace handler for the Splunk namespace - * - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkNamespaceHandler extends AbstractIntegrationNamespaceHandler { - - /* (non-Javadoc) - * @see org.springframework.beans.factory.xml.NamespaceHandler#init() - */ - public void init() { - registerBeanDefinitionParser("server", new SplunkServerParser()); - this.registerBeanDefinitionParser("inbound-channel-adapter", new SplunkInboundChannelAdapterParser()); - this.registerBeanDefinitionParser("outbound-channel-adapter", new SplunkOutboundChannelAdapterParser()); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParser.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParser.java deleted file mode 100644 index 5194a73..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParser.java +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Copyright 2002-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import org.w3c.dom.Element; - -import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.config.RuntimeBeanReference; -import org.springframework.beans.factory.parsing.BeanComponentDefinition; -import org.springframework.beans.factory.support.AbstractBeanDefinition; -import org.springframework.beans.factory.support.BeanDefinitionBuilder; -import org.springframework.beans.factory.support.ManagedList; -import org.springframework.beans.factory.xml.ParserContext; -import org.springframework.integration.config.xml.AbstractOutboundChannelAdapterParser; -import org.springframework.integration.config.xml.IntegrationNamespaceUtils; -import org.springframework.integration.splunk.outbound.SplunkOutboundChannelAdapter; -import org.springframework.integration.splunk.support.SplunkArgsFactoryBean; -import org.springframework.integration.splunk.support.SplunkIndexWriter; -import org.springframework.integration.splunk.support.SplunkServiceFactory; -import org.springframework.integration.splunk.support.SplunkSubmitWriter; -import org.springframework.integration.splunk.support.SplunkTcpWriter; -import org.springframework.util.StringUtils; -import org.springframework.util.xml.DomUtils; - -/** - * The parser for the Splunk Outbound Channel Adapter. - * - * @author Jarred Li - * @author David Turanski - * @author Olivier Lamy - * @since 1.0 - * - */ -public class SplunkOutboundChannelAdapterParser extends AbstractOutboundChannelAdapterParser { - - @Override - protected boolean shouldGenerateId() { - return false; - } - - @Override - protected boolean shouldGenerateIdAsFallback() { - return true; - } - - @Override - protected AbstractBeanDefinition parseConsumer(Element element, ParserContext parserContext) { - - BeanDefinitionBuilder splunkOutboundChannelAdapterBuilder = - BeanDefinitionBuilder.genericBeanDefinition(SplunkOutboundChannelAdapter.class); - BeanDefinitionBuilder splunkExecutorBuilder = SplunkParserUtils.getSplunkExecutorBuilder(element, parserContext); - BeanDefinitionBuilder argsBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkArgsFactoryBean.class); - - IntegrationNamespaceUtils.setValueIfAttributeDefined(argsBuilder, element, "source-type"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(argsBuilder, element, "source"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(argsBuilder, element, "host"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(argsBuilder, element, "host-regex"); - - BeanDefinitionBuilder dataWriterBuilder = parseDataWriter(element); - - // initialize splunk servers references - - BeanDefinitionBuilder serviceFactoryBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkServiceFactory.class); - - String splunkServerBeanNames = element.getAttribute("splunk-server-ref"); - if (StringUtils.hasText(splunkServerBeanNames)) { - - ManagedList splunkServersList = new ManagedList(); - - for (String splunkServerBeanName : StringUtils.delimitedListToStringArray(splunkServerBeanNames, ";")) { - splunkServersList.add(new RuntimeBeanReference(splunkServerBeanName)); - } - serviceFactoryBuilder.addConstructorArgValue(splunkServersList); - } - - dataWriterBuilder.addConstructorArgValue(serviceFactoryBuilder.getBeanDefinition()); - - - dataWriterBuilder.addConstructorArgValue(argsBuilder.getBeanDefinition()); - - String channelAdapterId = this.resolveId(element, splunkOutboundChannelAdapterBuilder.getRawBeanDefinition(), - parserContext); - String splunkExecutorBeanName = channelAdapterId + ".splunkExecutor"; - String splunkDataWriterBeanName = splunkExecutorBeanName + ".writer"; - - parserContext.registerBeanComponent(new BeanComponentDefinition(dataWriterBuilder.getBeanDefinition(), - splunkDataWriterBeanName)); - splunkExecutorBuilder.addPropertyReference("writer", splunkDataWriterBeanName); - - BeanDefinition splunkExecutorBuilderBeanDefinition = splunkExecutorBuilder.getBeanDefinition(); - parserContext.registerBeanComponent(new BeanComponentDefinition(splunkExecutorBuilderBeanDefinition, - splunkExecutorBeanName)); - - splunkOutboundChannelAdapterBuilder.addConstructorArgReference(splunkExecutorBeanName); - splunkOutboundChannelAdapterBuilder.addPropertyValue("producesReply", Boolean.FALSE); - - return splunkOutboundChannelAdapterBuilder.getBeanDefinition(); - - } - - private BeanDefinitionBuilder parseDataWriter(Element element) { - BeanDefinitionBuilder dataWriterBuilder = null; - if (DomUtils.getChildElementByTagName(element, "index-writer") != null) { - Element dataWriter = DomUtils.getChildElementByTagName(element, "index-writer"); - dataWriterBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkIndexWriter.class); - IntegrationNamespaceUtils.setValueIfAttributeDefined(dataWriterBuilder, dataWriter, "index"); - - } - if (DomUtils.getChildElementByTagName(element, "submit-writer") != null) { - Element dataWriter = DomUtils.getChildElementByTagName(element, "submit-writer"); - dataWriterBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkSubmitWriter.class); - IntegrationNamespaceUtils.setValueIfAttributeDefined(dataWriterBuilder, dataWriter, "index"); - } - if (DomUtils.getChildElementByTagName(element, "tcp-writer") != null) { - Element dataWriter = DomUtils.getChildElementByTagName(element, "tcp-writer"); - dataWriterBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkTcpWriter.class); - IntegrationNamespaceUtils.setValueIfAttributeDefined(dataWriterBuilder, dataWriter, "port"); - - } - - IntegrationNamespaceUtils.setValueIfAttributeDefined(dataWriterBuilder, element, - IntegrationNamespaceUtils.AUTO_STARTUP); - - return dataWriterBuilder; - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkParserUtils.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkParserUtils.java deleted file mode 100644 index 53cdc7e..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkParserUtils.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright 2002-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.support.BeanDefinitionBuilder; -import org.springframework.beans.factory.xml.ParserContext; -import org.springframework.integration.splunk.support.SplunkExecutor; -import org.springframework.util.Assert; -import org.w3c.dom.Element; - -/** - * Contains various utility methods for parsing Splunk Adapter - * specific namesspace elements as well as for the generation of the - * respective {@link BeanDefinition}s. - * - * @author Jarred Li - * @since 1.0 - * - */ -public final class SplunkParserUtils { - - /** Prevent instantiation. */ - private SplunkParserUtils() { - throw new AssertionError(); - } - - /** - * Create a new {@link BeanDefinitionBuilder} for the class {@link SplunkExecutor}. - * Initialize the wrapped {@link SplunkExecutor} with common properties. - * - * @param element Must not be null - * @param parserContext Must not be null - * @return The BeanDefinitionBuilder for the SplunkExecutor - */ - public static BeanDefinitionBuilder getSplunkExecutorBuilder(final Element element, final ParserContext parserContext) { - - Assert.notNull(element, "The provided element must not be null."); - Assert.notNull(parserContext, "The provided parserContext must not be null."); - - final BeanDefinitionBuilder splunkExecutorBuilder = BeanDefinitionBuilder.genericBeanDefinition(SplunkExecutor.class); - - return splunkExecutorBuilder; - - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkServerParser.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkServerParser.java deleted file mode 100644 index e4d4baf..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/SplunkServerParser.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright 2011-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import org.w3c.dom.Element; - -import org.springframework.beans.factory.support.BeanDefinitionBuilder; -import org.springframework.beans.factory.xml.AbstractSimpleBeanDefinitionParser; -import org.springframework.beans.factory.xml.BeanDefinitionParserDelegate; -import org.springframework.beans.factory.xml.ParserContext; -import org.springframework.integration.config.xml.IntegrationNamespaceUtils; -import org.springframework.integration.splunk.support.SplunkServer; - -/** - * Splunk server element parser. - * - * The XML element is like this: - *
- * {@code
- * 
- * }
- * 
- * - * @author Jarred Li - * @author Olivier Lamy - * @since 1.0 - * - */ -public class SplunkServerParser extends AbstractSimpleBeanDefinitionParser { - - @Override - public Class getBeanClass(Element element) { - return SplunkServer.class; - } - - @Override - protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { - super.doParse(element, parserContext, builder); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, - BeanDefinitionParserDelegate.SCOPE_ATTRIBUTE); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "host"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "port"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "scheme"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "app"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "owner"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "username"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "password"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "timeout"); - IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "checkServiceOnBorrow"); - - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/package-info.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/package-info.java deleted file mode 100644 index 696859c..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/config/xml/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Provides parser classes to provide Xml namespace support for the Splunk components. - */ -package org.springframework.integration.splunk.config.xml; diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataReader.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataReader.java deleted file mode 100644 index 2bbdd2e..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataReader.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.core; - -import java.util.List; - -import org.springframework.integration.splunk.event.SplunkEvent; - -/** - * Data reader to read Splunk data from the service. - * - * @author Jarred Li - * @since 1.0 - */ -public interface DataReader { - - List read() throws Exception; - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataWriter.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataWriter.java deleted file mode 100644 index 607aa14..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/DataWriter.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.core; - -import org.springframework.integration.splunk.event.SplunkEvent; - -/** - * Data writer to write Splunk data into Splunk - * - * @author Jarred Li - * @since 1.0 - * - */ -public interface DataWriter { - - void write(SplunkEvent data) throws Exception; - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/ServiceFactory.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/ServiceFactory.java deleted file mode 100644 index e6f7c41..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/ServiceFactory.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.core; - -import com.splunk.Service; - -/** - * @author David Turanski - * - */ -public interface ServiceFactory { - public Service getService(); -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/package-info.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/package-info.java deleted file mode 100644 index 158ac78..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/core/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Provides core classes of the Splunk module. - */ -package org.springframework.integration.splunk.core; diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AcManagementEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AcManagementEvent.java deleted file mode 100644 index 4a88cd4..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AcManagementEvent.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - - -/** - * Splunk data entity - * - * @author Jarred Li - * @author Damien Dallimore damien@dtdsoftware.com - * @author David Turanski - * @since 1.0 - * - */ -@SuppressWarnings("serial") -public class AcManagementEvent extends SplunkEvent { - - - /** - * Splunk Common Information Model(CIM) Fields - */ - - // ------------------ - // Account management - // ------------------ - - /** - * The domain containing the user that is affected by the account management - * event. - */ - public static String AC_MANAGEMENT_DEST_NT_DOMAIN = "dest_nt_domain"; - /** - * Description of the account management change performed. - */ - public static String AC_MANAGEMENT_SIGNATURE = "signature"; - /** - * The NT source of the destination. In the case of an account management - * event, this is the domain that contains the user that generated the - * event. - */ - public static String AC_MANAGEMENT_SRC_NT_DOMAIN = "src_nt_domain"; - - public void setAcManagementDestNtDomain(String acManagementDestNtDomain) { - addPair(AC_MANAGEMENT_DEST_NT_DOMAIN, acManagementDestNtDomain); - } - - public void setAcManagementSignature(String acManagementSignature) { - addPair(AC_MANAGEMENT_SIGNATURE, acManagementSignature); - } - - public void setAcManagementSrcNtDomain(String acManagementSrcNtDomain) { - addPair(AC_MANAGEMENT_SRC_NT_DOMAIN, acManagementSrcNtDomain); - } -} \ No newline at end of file diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AuthEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AuthEvent.java deleted file mode 100644 index 790452f..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/AuthEvent.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class AuthEvent extends SplunkEvent { - // ---------------------------------- - // Authentication - Access protection - // ---------------------------------- - - /** - * The action performed on the resource. success, failure - */ - public static String AUTH_ACTION = "action"; - /** - * The application involved in the event (such as ssh, spunk, win:local). - */ - public static String AUTH_APP = "app"; - /** - * The target involved in the authentication. If your field is named - * dest_host, dest_ip, dest_ipv6, or dest_nt_host you can alias it as dest - * to make it CIM-compliant. - */ - public static String AUTH_DEST = "dest"; - /** - * The source involved in the authentication. In the case of endpoint - * protection authentication the src is the client. If your field is named - * src_host, src_ip, src_ipv6, or src_nt_host you can alias it as src to - * make it CIM-compliant.. It is required for all events dealing with - * endpoint protection (Authentication, change analysis, malware, system - * center, and update). Note: Do not confuse this with the event source or - * sourcetype fields. - */ - public static String AUTH_SRC = "src"; - /** - * In privilege escalation events, src_user represents the user who - * initiated the privilege escalation. - */ - public static String AUTH_SRC_USER = "src_user"; - /** - * The name of the user involved in the event, or who initiated the event. - * For authentication privilege escalation events this should represent the - * user targeted by the escalation. - */ - public static String AUTH_USER = "user"; - - public void setAuthApp(String authApp) { - addPair(AUTH_APP, authApp); - } - - public void setAuthDest(String authDest) { - addPair(AUTH_DEST, authDest); - } - - public void setAuthSrc(String authSrc) { - addPair(AUTH_SRC, authSrc); - } - - public void setAuthSrcUser(String authSrcUser) { - addPair(AUTH_SRC_USER, authSrcUser); - } - - public void setAuthUser(String authUser) { - addPair(AUTH_USER, authUser); - } - - public void setAuthAction(String authAction) { - addPair(AUTH_ACTION, authAction); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/DnsEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/DnsEvent.java deleted file mode 100644 index b066360..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/DnsEvent.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class DnsEvent extends SplunkEvent { - // ---------------------------------- - // DNS protocol - // ---------------------------------- - - /** - * The DNS domain that has been queried. - */ - public static String DNS_DEST_DOMAIN = "dest_domain"; - /** - * The remote DNS resource record being acted upon. - */ - public static String DNS_DEST_RECORD = "dest_record"; - /** - * The DNS zone that is being received by the slave as part of a zone - * transfer. - */ - public static String DNS_DEST_ZONE = "dest_zone"; - /** - * The DNS resource record class. - */ - public static String DNS_RECORD_CLASS = "record_class"; - /** - * The DNS resource record type. - * - * @see see - * this Wikipedia article on DNS record types - */ - public static String DNS_RECORD_TYPE = "record_type"; - /** - * The local DNS domain that is being queried. - */ - public static String DNS_SRC_DOMAIN = "src_domain"; - /** - * The local DNS resource record being acted upon. - */ - public static String DNS_SRC_RECORD = "src_record"; - /** - * The DNS zone that is being transferred by the master as part of a zone - * transfer. - */ - public static String DNS_SRC_ZONE = "src_zone"; - public void setDnsDestDomain(String dnsDestDomain) { - addPair(DNS_DEST_DOMAIN, dnsDestDomain); - } - - public void setDnsDestRecord(String dnsDestRecord) { - addPair(DNS_DEST_RECORD, dnsDestRecord); - } - - public void setDnsDestZone(String dnsDestZone) { - addPair(DNS_DEST_ZONE, dnsDestZone); - } - - public void setDnsRecordClass(String dnsRecordClass) { - addPair(DNS_RECORD_CLASS, dnsRecordClass); - } - - public void setDnsRecordType(String dnsRecordType) { - addPair(DNS_RECORD_TYPE, dnsRecordType); - } - - public void setDnsSrcDomain(String dnsSrcDomain) { - addPair(DNS_SRC_DOMAIN, dnsSrcDomain); - } - - public void setDnsSrcRecord(String dnsSrcRecord) { - addPair(DNS_SRC_RECORD, dnsSrcRecord); - } - - public void setDnsSrcZone(String dnsSrcZone) { - addPair(DNS_SRC_ZONE, dnsSrcZone); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EmailEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EmailEvent.java deleted file mode 100644 index 17127cb..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EmailEvent.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class EmailEvent extends SplunkEvent { - // ---------------------------------- - // Email tracking - // ---------------------------------- - - /** - * The person to whom an email is sent. - */ - public static String EMAIL_RECIPIENT = "recipient"; - /** - * The person responsible for sending an email. - */ - public static String EMAIL_SENDER = "sender"; - /** - * The email subject line. - */ - public static String EMAIL_SUBJECT = "subject"; - - public void setEmailRecipient(String emailRecipient) { - addPair(EMAIL_RECIPIENT, emailRecipient); - } - - public void setEmailSender(String emailSender) { - addPair(EMAIL_SENDER, emailSender); - } - - public void setEmailSubject(String emailSubject) { - addPair(EMAIL_SUBJECT, emailSubject); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EndpointProtectionEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EndpointProtectionEvent.java deleted file mode 100644 index 2049d31..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/EndpointProtectionEvent.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class EndpointProtectionEvent extends SplunkEvent { - - // ---------------------------------- - // Change analysis - Endpoint protection - // ---------------------------------- - - /** - * The action performed on the resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_ACTION = "action"; - /** - * The type of change discovered in the change analysis event. - */ - public static String CHANGE_ENDPOINT_PROTECTION_CHANGE_TYPE = "change_type"; - /** - * The host that was affected by the change. If your field is named - * dest_host,dest_ip,dest_ipv6, or dest_nt_host you can alias it as dest to - * make it CIM-compliant. - */ - public static String CHANGE_ENDPOINT_PROTECTION_DEST = "dest"; - /** - * The hash signature of the modified resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_HASH = "hash"; - /** - * The group ID of the modified resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_GID = "gid"; - /** - * Indicates whether or not the modified resource is a directory. - */ - public static String CHANGE_ENDPOINT_PROTECTION_ISDR = "isdr"; - /** - * The permissions mode of the modified resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_MODE = "mode"; - /** - * The modification time of the modified resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_MODTIME = "modtime"; - /** - * The file path of the modified resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_PATH = "path"; - /** - * The size of the modified resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_SIZE = "size"; - /** - * The user ID of the modified resource. - */ - public static String CHANGE_ENDPOINT_PROTECTION_UID = "uid"; - public void setChangeEndpointProtectionAction(String changeEndpointProtectionAction) { - addPair(CHANGE_ENDPOINT_PROTECTION_ACTION, changeEndpointProtectionAction); - } - - public void setChangeEndpointProtectionChangeType(String changeEndpointProtectionChangeType) { - addPair(CHANGE_ENDPOINT_PROTECTION_CHANGE_TYPE, changeEndpointProtectionChangeType); - } - - public void setChangeEndpointProtectionDest(String changeEndpointProtectionDest) { - addPair(CHANGE_ENDPOINT_PROTECTION_DEST, changeEndpointProtectionDest); - } - - public void setChangeEndpointProtectionHash(String changeEndpointProtectionHash) { - addPair(CHANGE_ENDPOINT_PROTECTION_HASH, changeEndpointProtectionHash); - } - - public void setChangeEndpointProtectionGid(long changeEndpointProtectionGid) { - addPair(CHANGE_ENDPOINT_PROTECTION_GID, changeEndpointProtectionGid); - } - - public void setChangeEndpointProtectionIsdr(boolean changeEndpointProtectionIsdr) { - addPair(CHANGE_ENDPOINT_PROTECTION_ISDR, changeEndpointProtectionIsdr); - } - - public void setChangeEndpointProtectionMode(long changeEndpointProtectionMode) { - addPair(CHANGE_ENDPOINT_PROTECTION_MODE, changeEndpointProtectionMode); - } - - public void setChangeEndpointProtectionModtime(String changeEndpointProtectionModtime) { - addPair(CHANGE_ENDPOINT_PROTECTION_MODTIME, changeEndpointProtectionModtime); - } - - public void setChangeEndpointProtectionPath(String changeEndpointProtectionPath) { - addPair(CHANGE_ENDPOINT_PROTECTION_PATH, changeEndpointProtectionPath); - } - - public void setChangeEndpointProtectionSize(long changeEndpointProtectionSize) { - addPair(CHANGE_ENDPOINT_PROTECTION_SIZE, changeEndpointProtectionSize); - } - - public void setChangeEndpointProtectionUid(long changeEndpointProtectionUid) { - addPair(CHANGE_ENDPOINT_PROTECTION_UID, changeEndpointProtectionUid); - } - - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/FileEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/FileEvent.java deleted file mode 100644 index 6d93864..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/FileEvent.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class FileEvent extends SplunkEvent { - // ---------------------------------- - // File management - // ---------------------------------- - - /** - * The time the file (the object of the event) was accessed. - */ - public static String FILE_ACCESS_TIME = "file_access_time"; - /** - * The time the file (the object of the event) was created. - */ - public static String FILE_CREATE_TIME = "file_create_time"; - /** - * A cryptographic identifier assigned to the file object affected by the - * event. - */ - public static String FILE_HASH = "file_hash"; - /** - * The time the file (the object of the event) was altered. - */ - public static String FILE_MODIFY_TIME = "file_modify_time"; - /** - * The name of the file that is the object of the event (without location - * information related to local file or directory structure). - */ - public static String FILE_NAME = "file_name"; - /** - * The location of the file that is the object of the event, in terms of - * local file and directory structure. - */ - public static String FILE_PATH = "file_path"; - /** - * Access controls associated with the file affected by the event. - */ - public static String FILE_PERMISSION = "file_permission"; - /** - * The size of the file that is the object of the event. Indicate whether - * Bytes, KB, MB, GB. - */ - public static String FILE_SIZE = "file_size"; - - public void setFileAccessTime(long fileAccessTime) { - addPair(FILE_ACCESS_TIME, fileAccessTime); - } - - public void setFileCreateTime(long fileCreateTime) { - addPair(FILE_CREATE_TIME, fileCreateTime); - } - - public void setFileHash(String fileHash) { - addPair(FILE_HASH, fileHash); - } - - public void setFileModifyTime(long fileModifyTime) { - addPair(FILE_MODIFY_TIME, fileModifyTime); - } - - public void setFileName(String fileName) { - addPair(FILE_NAME, fileName); - } - - public void setFilePath(String filePath) { - addPair(FILE_PATH, filePath); - } - - public void setFilePermission(String filePermission) { - addPair(FILE_PERMISSION, filePermission); - } - - public void setFileSize(long fileSize) { - addPair(FILE_SIZE, fileSize); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/IntrusionDetectionEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/IntrusionDetectionEvent.java deleted file mode 100644 index 167d274..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/IntrusionDetectionEvent.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class IntrusionDetectionEvent extends SplunkEvent { - - - // ---------------------------------- - // Intrusion detection - // ---------------------------------- - - /** - * The category of the triggered signature. - */ - public static String INTRUSION_DETECTION_CATEGORY = "category"; - /** - * The destination of the attack detected by the intrusion detection system - * (IDS). If your field is named dest_host, dest_ip, dest_ipv6, or - * dest_nt_host you can alias it as dest to make it CIM-compliant. - */ - public static String INTRUSION_DETECTION_DEST = "dest"; - /** - * The device that detected the intrusion event. - */ - public static String INTRUSION_DETECTION_DVC = "dvc"; - /** - * The type of IDS that generated the event. - */ - public static String INTRUSION_DETECTION_IDS_TYPE = "ids_type"; - /** - * The product name of the vendor technology generating network protection - * data, such as IDP, Providentia, and ASA. - * - * Note: Required for all events dealing with network protection (Change - * analysis, proxy, malware, intrusion detection, packet filtering, and - * vulnerability). - */ - public static String INTRUSION_DETECTION_PRODUCT = "product"; - /** - * The severity of the network protection event (such as critical, high, - * medium, low, or informational). - * - * Note: This field is a string. Please use a severity_id field for severity - * ID fields that are integer data types. - */ - public static String INTRUSION_DETECTION_SEVERITY = "severity"; - /** - * The name of the intrusion detected on the client (the src), such as - * PlugAndPlay_BO and JavaScript_Obfuscation_Fre. - */ - public static String INTRUSION_DETECTION_SIGNATURE = "signature"; - /** - * The source involved in the attack detected by the IDS. If your field is - * named src_host, src_ip, src_ipv6, or src_nt_host you can alias it as src - * to make it CIM-compliant. - */ - public static String INTRUSION_DETECTION_SRC = "src"; - /** - * The user involved with the intrusion detection event. - */ - public static String INTRUSION_DETECTION_USER = "user"; - /** - * The vendor technology used to generate network protection data, such as - * IDP, Providentia, and ASA. - * - * Note: Required for all events dealing with network protection (Change - * analysis, proxy, malware, intrusion detection, packet filtering, and - * vulnerability). - */ - public static String INTRUSION_DETECTION_VENDOR = "vendor"; - public void setIntrusionDetectionCategory(String intrusionDetectionCategory) { - addPair(INTRUSION_DETECTION_CATEGORY, intrusionDetectionCategory); - } - - public void setIntrusionDetectionDest(String intrusionDetectionDest) { - addPair(INTRUSION_DETECTION_DEST, intrusionDetectionDest); - } - - public void setIntrusionDetectionDvc(String intrusionDetectionDvc) { - addPair(INTRUSION_DETECTION_DVC, intrusionDetectionDvc); - } - - public void setIntrusionDetectionIdsType(String intrusionDetectionIdsType) { - addPair(INTRUSION_DETECTION_IDS_TYPE, intrusionDetectionIdsType); - } - - public void setIntrusionDetectionProduct(String intrusionDetectionProduct) { - addPair(INTRUSION_DETECTION_PRODUCT, intrusionDetectionProduct); - } - - public void setIntrusionDetectionSeverity(String intrusionDetectionSeverity) { - addPair(INTRUSION_DETECTION_SEVERITY, intrusionDetectionSeverity); - } - - public void setIntrusionDetectionSignature(String intrusionDetectionSignature) { - addPair(INTRUSION_DETECTION_SIGNATURE, intrusionDetectionSignature); - } - - public void setIntrusionDetectionSrc(String intrusionDetectionSrc) { - addPair(INTRUSION_DETECTION_SRC, intrusionDetectionSrc); - } - - public void setIntrusionDetectionUser(String intrusionDetectionUser) { - addPair(INTRUSION_DETECTION_USER, intrusionDetectionUser); - } - - public void setIntrusionDetectionVendor(String intrusionDetectionVendor) { - addPair(INTRUSION_DETECTION_VENDOR, intrusionDetectionVendor); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareEndpointProtectionEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareEndpointProtectionEvent.java deleted file mode 100644 index 789c18c..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareEndpointProtectionEvent.java +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class MalwareEndpointProtectionEvent extends SplunkEvent { - // ---------------------------------- - // Malware - Endpoint protection - // ---------------------------------- - - /** - * The outcome of the infection - */ - public static String MALWARE_ENDPOINT_PROTECTION_ACTION = "action"; - /** - * The NT domain of the destination (the dest_bestmatch). - */ - public static String MALWARE_ENDPOINT_PROTECTION_DEST_NT_DOMAIN = "dest_nt_domain"; - /** - * The cryptographic hash of the file associated with the malware event - * (such as the malicious or infected file). - */ - public static String MALWARE_ENDPOINT_PROTECTION_FILE_HASH = "file_hash"; - /** - * The name of the file involved in the malware event (such as the infected - * or malicious file). - */ - public static String MALWARE_ENDPOINT_PROTECTION_FILE_NAME = "file_name"; - /** - * The path of the file involved in the malware event (such as the infected - * or malicious file). - */ - public static String MALWARE_ENDPOINT_PROTECTION_FILE_PATH = "file_path"; - /** - * The product name of the vendor technology (the vendor field) that is - * generating malware data (such as Antivirus or EPO). - */ - public static String MALWARE_ENDPOINT_PROTECTION_PRODUCT = "product"; - /** - * The product version number of the vendor technology installed on the - * client (such as 10.4.3 or 11.0.2). - */ - public static String MALWARE_ENDPOINT_PROTECTION_PRODUCT_VERSION = "product_version"; - /** - * The name of the malware infection detected on the client (the src), such - * as Trojan.Vundo,Spyware.Gaobot,W32.Nimbda). - * - * Note: This field is a string. Please use a signature_id field for - * signature ID fields that are integer data types. - */ - public static String MALWARE_ENDPOINT_PROTECTION_SIGNATURE = "signature"; - /** - * The current signature definition set running on the client, such as - * 11hsvx) - */ - public static String MALWARE_ENDPOINT_PROTECTION_SIGNATURE_VERSION = "signature_version"; - /** - * The target affected or infected by the malware. If your field is named - * dest_host, dest_ip, dest_ipv6, or dest_nt_host you can alias it as dest - * to make it CIM-compliant. - */ - public static String MALWARE_ENDPOINT_PROTECTION_DEST = "dest"; - /** - * The NT domain of the source (the src). - */ - public static String MALWARE_ENDPOINT_PROTECTION_SRC_NT_DOMAIN = "src_nt_domain"; - /** - * The name of the user involved in the malware event. - */ - public static String MALWARE_ENDPOINT_PROTECTION_USER = "user"; - /** - * The name of the vendor technology generating malware data, such as - * Symantec or McAfee. - */ - public static String MALWARE_ENDPOINT_PROTECTION_VENDOR = "vendor"; - - public void setMalwareEndpointProtectionAction(String malwareEndpointProtectionAction) { - addPair(MALWARE_ENDPOINT_PROTECTION_ACTION, malwareEndpointProtectionAction); - } - - public void setMalwareEndpointProtectionDestNtDomain(String malwareEndpointProtectionDestNtDomain) { - addPair(MALWARE_ENDPOINT_PROTECTION_DEST_NT_DOMAIN, malwareEndpointProtectionDestNtDomain); - } - - public void setMalwareEndpointProtectionFileHash(String malwareEndpointProtectionFileHash) { - addPair(MALWARE_ENDPOINT_PROTECTION_FILE_HASH, malwareEndpointProtectionFileHash); - } - - public void setMalwareEndpointProtectionFileName(String malwareEndpointProtectionFileName) { - addPair(MALWARE_ENDPOINT_PROTECTION_FILE_NAME, malwareEndpointProtectionFileName); - } - - public void setMalwareEndpointProtectionFilePath(String malwareEndpointProtectionFilePath) { - addPair(MALWARE_ENDPOINT_PROTECTION_FILE_PATH, malwareEndpointProtectionFilePath); - } - - public void setMalwareEndpointProtectionProduct(String malwareEndpointProtectionProduct) { - addPair(MALWARE_ENDPOINT_PROTECTION_PRODUCT, malwareEndpointProtectionProduct); - } - - public void setMalwareEndpointProtectionProductVersion(String malwareEndpointProtectionProductVersion) { - addPair(MALWARE_ENDPOINT_PROTECTION_PRODUCT_VERSION, malwareEndpointProtectionProductVersion); - } - - public void setMalwareEndpointProtectionSignature(String malwareEndpointProtectionSignature) { - addPair(MALWARE_ENDPOINT_PROTECTION_SIGNATURE, malwareEndpointProtectionSignature); - } - - public void setMalwareEndpointProtectionSignatureVersion(String malwareEndpointProtectionSignatureVersion) { - addPair(MALWARE_ENDPOINT_PROTECTION_SIGNATURE_VERSION, malwareEndpointProtectionSignatureVersion); - } - - public void setMalwareEndpointProtectionDest(String malwareEndpointProtectionDest) { - addPair(MALWARE_ENDPOINT_PROTECTION_DEST, malwareEndpointProtectionDest); - } - - public void setMalwareEndpointProtectionSrcNtDomain(String malwareEndpointProtectionSrcNtDomain) { - addPair(MALWARE_ENDPOINT_PROTECTION_SRC_NT_DOMAIN, malwareEndpointProtectionSrcNtDomain); - } - - public void setMalwareEndpointProtectionUser(String malwareEndpointProtectionUser) { - addPair(MALWARE_ENDPOINT_PROTECTION_USER, malwareEndpointProtectionUser); - } - - public void setMalwareEndpointProtectionVendor(String malwareEndpointProtectionVendor) { - addPair(MALWARE_ENDPOINT_PROTECTION_VENDOR, malwareEndpointProtectionVendor); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareNetworkProtectionEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareNetworkProtectionEvent.java deleted file mode 100644 index 8dd4302..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/MalwareNetworkProtectionEvent.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class MalwareNetworkProtectionEvent extends SplunkEvent { - - // ---------------------------------- - // Malware - Network protection - // ---------------------------------- - - /** - * The product name of the vendor technology generating network protection - * data, such as IDP, Proventia, and ASA. - * - * Note: Required for all events dealing with network protection (Change - * analysis, proxy, malware, intrusion detection, packet filtering, and - * vulnerability). - */ - public static String MALWARE_NETWORK_PROTECTION_PRODUCT = "product"; - /** - * The severity of the network protection event (such as critical, high, - * medium, low, or informational). - * - * Note: This field is a string. Please use a severity_id field for severity - * ID fields that are integer data types. - */ - public static String MALWARE_NETWORK_PROTECTION_SEVERITY = "severity"; - /** - * The vendor technology used to generate network protection data, such as - * IDP, Proventia, and ASA. - * - * Note: Required for all events dealing with network protection (Change - * analysis, proxy, malware, intrusion detection, packet filtering, and - * vulnerability). - */ - public static String MALWARE_NETWORK_PROTECTION_VENDOR = "vendor"; - - public void setMalwareNetworkProtectionProduct(String malwareNetworkProtectionProduct) { - addPair(MALWARE_NETWORK_PROTECTION_PRODUCT, malwareNetworkProtectionProduct); - } - - public void setMalwareNetworkProtectionSeverity(String malwareNetworkProtectionSeverity) { - addPair(MALWARE_NETWORK_PROTECTION_SEVERITY, malwareNetworkProtectionSeverity); - } - - public void setMalwareNetworkProtectionVendor(String malwareNetworkProtectionVendor) { - addPair(MALWARE_NETWORK_PROTECTION_VENDOR, malwareNetworkProtectionVendor); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkProtectionEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkProtectionEvent.java deleted file mode 100644 index 88556ec..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkProtectionEvent.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class NetworkProtectionEvent extends SplunkEvent { - // ---------------------------------- - // Change analysis - Network protection - // ---------------------------------- - - /** - * The type of change observed. - */ - public static String CHANGE_NETWORK_PROTECTION_ACTION = "action"; - /** - * The command that initiated the change. - */ - public static String CHANGE_NETWORK_PROTECTION_COMMAND = "command"; - /** - * The device that is directly affected by the change. - */ - public static String CHANGE_NETWORK_PROTECTION_DVC = "dvc"; - /** - * The user that initiated the change. - */ - public static String CHANGE_NETWORK_PROTECTION_USER = "user"; - - public void setChangeNetworkProtectionAction(String changeNetworkProtectionAction) { - addPair(CHANGE_NETWORK_PROTECTION_ACTION, changeNetworkProtectionAction); - } - - public void setChangeNetworkProtectionCommand(String changeNetworkProtectionCommand) { - addPair(CHANGE_NETWORK_PROTECTION_COMMAND, changeNetworkProtectionCommand); - } - - public void setChangeNetworkProtectionDvc(String changeNetworkProtectionDvc) { - addPair(CHANGE_NETWORK_PROTECTION_DVC, changeNetworkProtectionDvc); - } - - public void setChangeNetworkProtectionUser(String changeNetworkProtectionUser) { - addPair(CHANGE_NETWORK_PROTECTION_USER, changeNetworkProtectionUser); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficEssEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficEssEvent.java deleted file mode 100644 index 97048b6..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficEssEvent.java +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class NetworkTrafficEssEvent extends SplunkEvent { - // ---------------------------------- - // Network traffic - ESS - // ---------------------------------- - - /** - * The action of the network traffic. - */ - public static String NETWORK_TRAFFIC_ESS_ACTION = "action"; - /** - * The destination port of the network traffic. - */ - public static String NETWORK_TRAFFIC_ESS_DEST_PORT = "dest_port"; - /** - * The product name of the vendor technology generating NetworkProtection - * data, such as IDP, Proventia, and ASA. - * - * Note: Required for all events dealing with network protection (Change - * analysis, proxy, malware, intrusion detection, packet filtering, and - * vulnerability). - */ - public static String NETWORK_TRAFFIC_ESS_PRODUCT = "product"; - /** - * The source port of the network traffic. - */ - public static String NETWORK_TRAFFIC_ESS_SRC_PORT = "src_port"; - /** - * The vendor technology used to generate NetworkProtection data, such as - * IDP, Proventia, and ASA. - * - * Note: Required for all events dealing with network protection (Change - * analysis, proxy, malware, intrusion detection, packet filtering, and - * vulnerability). - */ - public static String NETWORK_TRAFFIC_ESS_VENDOR = "vendor"; - - public void setNetworkTrafficEssAction(String networkTrafficEssAction) { - addPair(NETWORK_TRAFFIC_ESS_ACTION, networkTrafficEssAction); - } - - public void setNetworkTrafficEssDestPort(int networkTrafficEssDestPort) { - addPair(NETWORK_TRAFFIC_ESS_DEST_PORT, networkTrafficEssDestPort); - } - - public void setNetworkTrafficEssProduct(String networkTrafficEssProduct) { - addPair(NETWORK_TRAFFIC_ESS_PRODUCT, networkTrafficEssProduct); - } - - public void setNetworkTrafficEssSrcPort(int networkTrafficEssSrcPort) { - addPair(NETWORK_TRAFFIC_ESS_SRC_PORT, networkTrafficEssSrcPort); - } - - public void setNetworkTrafficEssVendor(String networkTrafficEssVendor) { - addPair(NETWORK_TRAFFIC_ESS_VENDOR, networkTrafficEssVendor); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficGenericEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficGenericEvent.java deleted file mode 100644 index bc4b5ff..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/NetworkTrafficGenericEvent.java +++ /dev/null @@ -1,438 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class NetworkTrafficGenericEvent extends SplunkEvent { - // ---------------------------------- - // Network traffic - Generic - // ---------------------------------- - - /** - * The ISO layer 7 (application layer) protocol, such as HTTP, HTTPS, SSH, - * and IMAP. - */ - public static String NETWORK_TRAFFIC_GENERIC_APP_LAYER = "app_layer"; - /** - * How many bytes this device/interface received. - */ - public static String NETWORK_TRAFFIC_GENERIC_BYTES_IN = "bytes_in"; - /** - * How many bytes this device/interface transmitted. - */ - public static String NETWORK_TRAFFIC_GENERIC_BYTES_OUT = "bytes_out"; - /** - * 802.11 channel number used by a wireless network. - */ - public static String NETWORK_TRAFFIC_GENERIC_CHANNEL = "channel"; - /** - * The Common Vulnerabilities and Exposures (CVE) reference value. - */ - public static String NETWORK_TRAFFIC_GENERIC_CVE = "cve"; - /** - * The destination application being targeted. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_APP = "dest_app"; - /** - * The destination command and control service channel. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_CNC_CHANNEL = "dest_cnc_channel"; - /** - * The destination command and control service name. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_CNC_NAME = "dest_cnc_name"; - /** - * The destination command and control service port. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_CNC_PORT = "dest_cnc_port"; - /** - * The country associated with a packet's recipient. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_COUNTRY = "dest_country"; - /** - * The fully qualified host name of a packet's recipient. For HTTP sessions, - * this is the host header. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_HOST = "dest_host"; - /** - * The interface that is listening remotely or receiving packets locally. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_INT = "dest_int"; - /** - * The IPv4 address of a packet's recipient. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_IP = "dest_ip"; - /** - * The IPv6 address of a packet's recipient. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_IPV6 = "dest_ipv6"; - /** - * The (physical) latitude of a packet's destination. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_LAT = "dest_lat"; - /** - * The (physical) longitude of a packet's destination. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_LONG = "dest_long"; - /** - * The destination TCP/IP layer 2 Media Access Control (MAC) address of a - * packet's destination. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_MAC = "dest_mac"; - /** - * The Windows NT domain containing a packet's destination. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_NT_DOMAIN = "dest_nt_domain"; - /** - * The Windows NT host name of a packet's destination. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_NT_HOST = "dest_nt_host"; - /** - * TCP/IP port to which a packet is being sent. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_PORT = "dest_port"; - /** - * The NATed IPv4 address to which a packet has been sent. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_TRANSLATED_IP = "dest_translated_ip"; - /** - * The NATed port to which a packet has been sent. - */ - public static String NETWORK_TRAFFIC_GENERIC_DEST_TRANSLATED_PORT = "dest_translated_port"; - /** - * The numbered Internet Protocol version. - */ - public static String NETWORK_TRAFFIC_GENERIC_IP_VERSION = "ip_version"; - /** - * The network interface through which a packet was transmitted. - */ - public static String NETWORK_TRAFFIC_GENERIC_OUTBOUND_INTERFACE = "outbound_interface"; - /** - * How many packets this device/interface received. - */ - public static String NETWORK_TRAFFIC_GENERIC_PACKETS_IN = "packets_in"; - /** - * How many packets this device/interface transmitted. - */ - public static String NETWORK_TRAFFIC_GENERIC_PACKETS_OUT = "packets_out"; - /** - * The OSI layer 3 (Network Layer) protocol, such as IPv4/IPv6, ICMP, IPsec, - * IGMP or RIP. - */ - public static String NETWORK_TRAFFIC_GENERIC_PROTO = "proto"; - /** - * The session identifier. Multiple transactions build a session. - */ - public static String NETWORK_TRAFFIC_GENERIC_SESSION_ID = "session_id"; - /** - * The 802.11 service set identifier (ssid) assigned to a wireless session. - */ - public static String NETWORK_TRAFFIC_GENERIC_SSID = "ssid"; - /** - * The country from which the packet was sent. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_COUNTRY = "src_country"; - /** - * The fully qualified host name of the system that transmitted the packet. - * For Web logs, this is the HTTP client. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_HOST = "src_host"; - /** - * The interface that is listening locally or sending packets remotely. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_INT = "src_int"; - /** - * The IPv4 address of the packet's source. For Web logs, this is the http - * client. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_IP = "src_ip"; - /** - * The IPv6 address of the packet's source. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_IPV6 = "src_ipv6"; - /** - * The (physical) latitude of the packet's source. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_LAT = "src_lat"; - /** - * The (physical) longitude of the packet's source. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_LONG = "src_long"; - /** - * The Media Access Control (MAC) address from which a packet was - * transmitted. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_MAC = "src_mac"; - /** - * The Windows NT domain containing the machines that generated the event. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_NT_DOMAIN = "src_nt_domain"; - /** - * The Windows NT hostname of the system that generated the event. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_NT_HOST = "src_nt_host"; - /** - * The network port from which a packet originated. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_PORT = "src_port"; - /** - * The NATed IPv4 address from which a packet has been sent. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_TRANSLATED_IP = "src_translated_ip"; - /** - * The NATed network port from which a packet has been sent. - */ - public static String NETWORK_TRAFFIC_GENERIC_SRC_TRANSLATED_PORT = "src_translated_port"; - /** - * The application, process, or OS subsystem that generated the event. - */ - public static String NETWORK_TRAFFIC_GENERIC_SYSLOG_ID = "syslog_id"; - /** - * The criticality of an event, as recorded by UNIX syslog. - */ - public static String NETWORK_TRAFFIC_GENERIC_SYSLOG_PRIORITY = "syslog_priority"; - /** - * The TCP flag(s) specified in the event. - */ - public static String NETWORK_TRAFFIC_GENERIC_TCP_FLAG = "tcp_flag"; - /** - * The hex bit that specifies TCP 'type of service' - * - * @see Type of - * Service - */ - public static String NETWORK_TRAFFIC_GENERIC_TOS = "tos"; - /** - * The transport protocol. - */ - public static String NETWORK_TRAFFIC_GENERIC_TRANSPORT = "transport"; - /** - * The "time to live" of a packet or datagram. - */ - public static String NETWORK_TRAFFIC_GENERIC_TTL = "ttl"; - /** - * The numeric identifier assigned to the virtual local area network (VLAN) - * specified in the record. - */ - public static String NETWORK_TRAFFIC_GENERIC_VLAN_ID = "vlan_id"; - /** - * The name assigned to the virtual local area network (VLAN) specified in - * the record. - */ - public static String NETWORK_TRAFFIC_GENERIC_VLAN_NAME = "vlan_name"; - - public void setNetworkTrafficGenericAppLayer(String networkTrafficGenericAppLayer) { - addPair(NETWORK_TRAFFIC_GENERIC_APP_LAYER, networkTrafficGenericAppLayer); - } - - public void setNetworkTrafficGenericBytesIn(long networkTrafficGenericBytesIn) { - addPair(NETWORK_TRAFFIC_GENERIC_BYTES_IN, networkTrafficGenericBytesIn); - } - - public void setNetworkTrafficGenericBytesOut(long networkTrafficGenericBytesOut) { - addPair(NETWORK_TRAFFIC_GENERIC_BYTES_OUT, networkTrafficGenericBytesOut); - } - - public void setNetworkTrafficGenericChannel(String networkTrafficGenericChannel) { - addPair(NETWORK_TRAFFIC_GENERIC_CHANNEL, networkTrafficGenericChannel); - } - - public void setNetworkTrafficGenericCve(String networkTrafficGenericCve) { - addPair(NETWORK_TRAFFIC_GENERIC_CVE, networkTrafficGenericCve); - } - - public void setNetworkTrafficGenericDestApp(String networkTrafficGenericDestApp) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_APP, networkTrafficGenericDestApp); - } - - public void setNetworkTrafficGenericDestCncChannel(String networkTrafficGenericDestCncChannel) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_CNC_CHANNEL, networkTrafficGenericDestCncChannel); - } - - public void setNetworkTrafficGenericDestCncName(String networkTrafficGenericDestCncName) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_CNC_NAME, networkTrafficGenericDestCncName); - } - - public void setNetworkTrafficGenericDestCncPort(String networkTrafficGenericDestCncPort) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_CNC_PORT, networkTrafficGenericDestCncPort); - } - - public void setNetworkTrafficGenericDestCountry(String networkTrafficGenericDestCountry) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_COUNTRY, networkTrafficGenericDestCountry); - } - - public void setNetworkTrafficGenericDestHost(String networkTrafficGenericDestHost) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_HOST, networkTrafficGenericDestHost); - } - - public void setNetworkTrafficGenericDestInt(String networkTrafficGenericDestInt) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_INT, networkTrafficGenericDestInt); - } - - public void setNetworkTrafficGenericDestIp(String networkTrafficGenericDestIp) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_IP, networkTrafficGenericDestIp); - } - - public void setNetworkTrafficGenericDestIpv6(String networkTrafficGenericDestIpv6) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_IPV6, networkTrafficGenericDestIpv6); - } - - public void setNetworkTrafficGenericDestLat(int networkTrafficGenericDestLat) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_LAT, networkTrafficGenericDestLat); - } - - public void setNetworkTrafficGenericDestLong(int networkTrafficGenericDestLong) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_LONG, networkTrafficGenericDestLong); - } - - public void setNetworkTrafficGenericDestMac(String networkTrafficGenericDestMac) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_MAC, networkTrafficGenericDestMac); - } - - public void setNetworkTrafficGenericDestNtDomain(String networkTrafficGenericDestNtDomain) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_NT_DOMAIN, networkTrafficGenericDestNtDomain); - } - - public void setNetworkTrafficGenericDestNtHost(String networkTrafficGenericDestNtHost) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_NT_HOST, networkTrafficGenericDestNtHost); - } - - public void setNetworkTrafficGenericDestPort(int networkTrafficGenericDestPort) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_PORT, networkTrafficGenericDestPort); - } - - public void setNetworkTrafficGenericDestTranslatedIp(String networkTrafficGenericDestTranslatedIp) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_TRANSLATED_IP, networkTrafficGenericDestTranslatedIp); - } - - public void setNetworkTrafficGenericDestTranslatedPort(int networkTrafficGenericDestTranslatedPort) { - addPair(NETWORK_TRAFFIC_GENERIC_DEST_TRANSLATED_PORT, networkTrafficGenericDestTranslatedPort); - } - - public void setNetworkTrafficGenericIpVersion(int networkTrafficGenericIpVersion) { - addPair(NETWORK_TRAFFIC_GENERIC_IP_VERSION, networkTrafficGenericIpVersion); - } - - public void setNetworkTrafficGenericOutboundInterface(String networkTrafficGenericOutboundInterface) { - addPair(NETWORK_TRAFFIC_GENERIC_OUTBOUND_INTERFACE, networkTrafficGenericOutboundInterface); - } - - public void setNetworkTrafficGenericPacketsIn(long networkTrafficGenericPacketsIn) { - addPair(NETWORK_TRAFFIC_GENERIC_PACKETS_IN, networkTrafficGenericPacketsIn); - } - - public void setNetworkTrafficGenericPacketsOut(long networkTrafficGenericPacketsOut) { - addPair(NETWORK_TRAFFIC_GENERIC_PACKETS_OUT, networkTrafficGenericPacketsOut); - } - - public void setNetworkTrafficGenericProto(String networkTrafficGenericProto) { - addPair(NETWORK_TRAFFIC_GENERIC_PROTO, networkTrafficGenericProto); - } - - public void setNetworkTrafficGenericSessionId(String networkTrafficGenericSessionId) { - addPair(NETWORK_TRAFFIC_GENERIC_SESSION_ID, networkTrafficGenericSessionId); - } - - public void setNetworkTrafficGenericSsid(String networkTrafficGenericSsid) { - addPair(NETWORK_TRAFFIC_GENERIC_SSID, networkTrafficGenericSsid); - } - - public void setNetworkTrafficGenericSrcCountry(String networkTrafficGenericSrcCountry) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_COUNTRY, networkTrafficGenericSrcCountry); - } - - public void setNetworkTrafficGenericSrcHost(String networkTrafficGenericSrcHost) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_HOST, networkTrafficGenericSrcHost); - } - - public void setNetworkTrafficGenericSrcInt(String networkTrafficGenericSrcInt) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_INT, networkTrafficGenericSrcInt); - } - - public void setNetworkTrafficGenericSrcIp(String networkTrafficGenericSrcIp) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_IP, networkTrafficGenericSrcIp); - } - - public void setNetworkTrafficGenericSrcIpv6(String networkTrafficGenericSrcIpv6) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_IPV6, networkTrafficGenericSrcIpv6); - } - - public void setNetworkTrafficGenericSrcLat(int networkTrafficGenericSrcLat) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_LAT, networkTrafficGenericSrcLat); - } - - public void setNetworkTrafficGenericSrcLong(int networkTrafficGenericSrcLong) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_LONG, networkTrafficGenericSrcLong); - } - - public void setNetworkTrafficGenericSrcMac(String networkTrafficGenericSrcMac) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_MAC, networkTrafficGenericSrcMac); - } - - public void setNetworkTrafficGenericSrcNtDomain(String networkTrafficGenericSrcNtDomain) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_NT_DOMAIN, networkTrafficGenericSrcNtDomain); - } - - public void setNetworkTrafficGenericSrcNtHost(String networkTrafficGenericSrcNtHost) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_NT_HOST, networkTrafficGenericSrcNtHost); - } - - public void setNetworkTrafficGenericSrcPort(int networkTrafficGenericSrcPort) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_PORT, networkTrafficGenericSrcPort); - } - - public void setNetworkTrafficGenericSrcTranslatedIp(String networkTrafficGenericSrcTranslatedIp) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_TRANSLATED_IP, networkTrafficGenericSrcTranslatedIp); - } - - public void setNetworkTrafficGenericSrcTranslatedPort(int networkTrafficGenericSrcTranslatedPort) { - addPair(NETWORK_TRAFFIC_GENERIC_SRC_TRANSLATED_PORT, networkTrafficGenericSrcTranslatedPort); - } - - public void setNetworkTrafficGenericSyslogId(String networkTrafficGenericSyslogId) { - addPair(NETWORK_TRAFFIC_GENERIC_SYSLOG_ID, networkTrafficGenericSyslogId); - } - - public void setNetworkTrafficGenericSyslogPriority(String networkTrafficGenericSyslogPriority) { - addPair(NETWORK_TRAFFIC_GENERIC_SYSLOG_PRIORITY, networkTrafficGenericSyslogPriority); - } - - public void setNetworkTrafficGenericTcpFlag(String networkTrafficGenericTcpFlag) { - addPair(NETWORK_TRAFFIC_GENERIC_TCP_FLAG, networkTrafficGenericTcpFlag); - } - - public void setNetworkTrafficGenericTos(String networkTrafficGenericTos) { - addPair(NETWORK_TRAFFIC_GENERIC_TOS, networkTrafficGenericTos); - } - - public void setNetworkTrafficGenericTransport(String networkTrafficGenericTransport) { - addPair(NETWORK_TRAFFIC_GENERIC_TRANSPORT, networkTrafficGenericTransport); - } - - public void setNetworkTrafficGenericTtl(int networkTrafficGenericTtl) { - addPair(NETWORK_TRAFFIC_GENERIC_TTL, networkTrafficGenericTtl); - } - - public void setNetworkTrafficGenericVlanId(long networkTrafficGenericVlanId) { - addPair(NETWORK_TRAFFIC_GENERIC_VLAN_ID, networkTrafficGenericVlanId); - } - - public void setNetworkTrafficGenericVlanName(String networkTrafficGenericVlanName) { - addPair(NETWORK_TRAFFIC_GENERIC_VLAN_NAME, networkTrafficGenericVlanName); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/PacketFilterEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/PacketFilterEvent.java deleted file mode 100644 index 56d2fcb..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/PacketFilterEvent.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class PacketFilterEvent extends SplunkEvent { - - // ---------------------------------- - // Packet filtering - // ---------------------------------- - - /** - * The action the filtering device (the dvc_bestmatch field) performed on - * the communication. - */ - public static String PACKET_FILTERING_ACTION = "action"; - /** - * The IP port of the packet's destination, such as 22. - */ - public static String PACKET_FILTERING_DEST_PORT = "dest_port"; - /** - * The direction the packet is traveling. - */ - public static String PACKET_FILTERING_DIRECTION = "direction"; - /** - * The name of the packet filtering device. If your field is named dvc_host, - * dvc_ip, or dvc_nt_host you can alias it as dvc to make it CIM-compliant. - */ - public static String PACKET_FILTERING_DVC = "dvc"; - /** - * The rule which took action on the packet, such as 143. - */ - public static String PACKET_FILTERING_RULE = "rule"; - /** - * The IP port of the packet's source, such as 34541. - */ - public static String PACKET_FILTERING_SVC_PORT = "svc_port"; - public void setPacketFilteringAction(String packetFilteringAction) { - addPair(PACKET_FILTERING_ACTION, packetFilteringAction); - } - - public void setPacketFilteringDestPort(int packetFilteringDestPort) { - addPair(PACKET_FILTERING_DEST_PORT, packetFilteringDestPort); - } - - public void setPacketFilteringDirection(String packetFilteringDirection) { - addPair(PACKET_FILTERING_DIRECTION, packetFilteringDirection); - } - - public void setPacketFilteringDvc(String packetFilteringDvc) { - addPair(PACKET_FILTERING_DVC, packetFilteringDvc); - } - - public void setPacketFilteringRule(String packetFilteringRule) { - addPair(PACKET_FILTERING_RULE, packetFilteringRule); - } - - public void setPacketFilteringSvcPort(int packetFilteringSvcPort) { - addPair(PACKET_FILTERING_SVC_PORT, packetFilteringSvcPort); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/ProxyEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/ProxyEvent.java deleted file mode 100644 index 24e06e3..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/ProxyEvent.java +++ /dev/null @@ -1,133 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class ProxyEvent extends SplunkEvent { - // ---------------------------------- - // Proxy - // ---------------------------------- - - /** - * The action taken by the proxy. - */ - public static String PROXY_ACTION = "action"; - /** - * The destination of the network traffic (the remote host). - */ - public static String PROXY_DEST = "dest"; - /** - * The content-type of the requested HTTP resource. - */ - public static String PROXY_HTTP_CONTENT_TYPE = "http_content_type"; - /** - * The HTTP method used to request the resource. - */ - public static String PROXY_HTTP_METHOD = "http_method"; - /** - * The HTTP referrer used to request the HTTP resource. - */ - public static String PROXY_HTTP_REFER = "http_refer"; - /** - * The HTTP response code. - */ - public static String PROXY_HTTP_RESPONSE = "http_response"; - /** - * The user agent used to request the HTTP resource. - */ - public static String PROXY_HTTP_USER_AGENT = "http_user_agent"; - /** - * The product name of the vendor technology generating Network Protection - * data, such as IDP, Providentia, and ASA. - */ - public static String PROXY_PRODUCT = "product"; - /** - * The source of the network traffic (the client requesting the connection). - */ - public static String PROXY_SRC = "src"; - /** - * The HTTP response code indicating the status of the proxy request. - */ - public static String PROXY_STATUS = "status"; - /** - * The user that requested the HTTP resource. - */ - public static String PROXY_USER = "user"; - /** - * The URL of the requested HTTP resource. - */ - public static String PROXY_URL = "url"; - /** - * The vendor technology generating Network Protection data, such as IDP, - * Providentia, and ASA. - */ - public static String PROXY_VENDOR = "vendor"; - - - public void setProxyAction(String proxyAction) { - addPair(PROXY_ACTION, proxyAction); - } - - public void setProxyDest(String proxyDest) { - addPair(PROXY_DEST, proxyDest); - } - - public void setProxyHttpContentType(String proxyHttpContentType) { - addPair(PROXY_HTTP_CONTENT_TYPE, proxyHttpContentType); - } - - public void setProxyHttpMethod(String proxyHttpMethod) { - addPair(PROXY_HTTP_METHOD, proxyHttpMethod); - } - - public void setProxyHttpRefer(String proxyHttpRefer) { - addPair(PROXY_HTTP_REFER, proxyHttpRefer); - } - - public void setProxyHttpResponse(int proxyHttpResponse) { - addPair(PROXY_HTTP_RESPONSE, proxyHttpResponse); - } - - public void setProxyHttpUserAgent(String proxyHttpUserAgent) { - addPair(PROXY_HTTP_USER_AGENT, proxyHttpUserAgent); - } - - public void setProxyProduct(String proxyProduct) { - addPair(PROXY_PRODUCT, proxyProduct); - } - - public void setProxySrc(String proxySrc) { - addPair(PROXY_SRC, proxySrc); - } - - public void setProxyStatus(int proxyStatus) { - addPair(PROXY_STATUS, proxyStatus); - } - - public void setProxyUser(String proxyUser) { - addPair(PROXY_USER, proxyUser); - } - - public void setProxyUrl(String proxyUrl) { - addPair(PROXY_URL, proxyUrl); - } - - public void setProxyVendor(String proxyVendor) { - addPair(PROXY_VENDOR, proxyVendor); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SplunkEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SplunkEvent.java deleted file mode 100644 index e3725f6..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SplunkEvent.java +++ /dev/null @@ -1,580 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -import java.io.Serializable; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -import org.joda.time.format.DateTimeFormat; -import org.joda.time.format.DateTimeFormatter; -import org.springframework.util.Assert; - -/** - * Splunk data entity - * - * @author Jarred Li - * @author Damien Dallimore damien@dtdsoftware.com - * @author David Turanski - * @since 1.0 - * - */ - -@SuppressWarnings("serial") -public class SplunkEvent implements Serializable { - - /** - * Contents of the event message - */ - private StringBuffer eventMessage; - - /** - * Whether or not to put quotes around values - */ - protected boolean quoteValues = true; - - /** - * Whether or not to add a date to the event string - */ - protected boolean useInternalDate = true; - - /** - * default key value delimiter - */ - protected static final String KVDELIM = "="; - /** - * default pair delimiter - */ - protected static final String PAIRDELIM = " "; - /** - * default quote char - */ - protected static final char QUOTE = '"'; - /** - * default date format is using internal generated date - */ - protected static final String DATEFORMATPATTERN = "yyyy-MM-dd\tHH:mm:ss:SSSZ"; - /** - * Date Formatter - */ - protected static final DateTimeFormatter DATE_FORMATTER = DateTimeFormat.forPattern(DATEFORMATPATTERN); - - /** - * Event prefix fields - */ - protected static final String PREFIX_NAME = "name"; - protected static final String PREFIX_EVENT_ID = "event_id"; - - /** - * Java Throwable type fields - */ - protected static final String THROWABLE_CLASS = "throwable_class"; - protected static final String THROWABLE_MESSAGE = "throwable_message"; - protected static final String THROWABLE_STACKTRACE_ELEMENTS = "stacktrace_elements"; - - protected static final String LINEBREAK = "\n"; - - // ---------------------------------- - // Common event fields - // ---------------------------------- - - /** - * A device-specific classification provided as part of the event. - */ - public static String COMMON_CATEGORY = "category"; - /** - * A device-specific classification provided as part of the event. - */ - public static String COMMON_COUNT = "count"; - /** - * The free-form description of a particular event. - */ - public static String COMMON_DESC = "desc"; - /** - * The name of a given DHCP pool on a DHCP server. - */ - public static String COMMON_DHCP_POOL = "dhcp_pool"; - /** - * The amount of time the event lasted. - */ - public static String COMMON_DURATION = "duration"; - /** - * The fully qualified domain name of the device transmitting or recording - * the log record. - */ - public static String COMMON_DVC_HOST = "dvc_host"; - /** - * The IPv4 address of the device reporting the event. - */ - public static String COMMON_DVC_IP = "dvc_ip"; - /** - * The IPv6 address of the device reporting the event. - */ - public static String COMMON_DVC_IP6 = "dvc_ip6"; - /** - * The free-form description of the device's physical location. - */ - public static String COMMON_DVC_LOCATION = "dvc_location"; - /** - * The MAC (layer 2) address of the device reporting the event. - */ - public static String COMMON_DVC_MAC = "dvc_mac"; - /** - * The Windows NT domain of the device recording or transmitting the event. - */ - public static String COMMON_DVC_NT_DOMAIN = "dvc_nt_domain"; - /** - * The Windows NT host name of the device recording or transmitting the - * event. - */ - public static String COMMON_DVC_NT_HOST = "dvc_nt_host"; - /** - * Time at which the device recorded the event. - */ - public static String COMMON_DVC_TIME = "dvc_time"; - /** - * The event's specified end time. - */ - public static String COMMON_END_TIME = "end_time"; - /** - * A unique identifier that identifies the event. This is unique to the - * reporting device. - */ - public static String COMMON_EVENT_ID = "event_id"; - /** - * The length of the datagram, event, message, or packet. - */ - public static String COMMON_LENGTH = "length"; - /** - * The log-level that was set on the device and recorded in the event. - */ - public static String COMMON_LOG_LEVEL = "log_level"; - /** - * The name of the event as reported by the device. The name should not - * contain information that's already being parsed into other fields from - * the event, such as IP addresses. - */ - public static String COMMON_NAME = "name"; - /** - * An integer assigned by the device operating system to the process - * creating the record. - */ - public static String COMMON_PID = "pid"; - /** - * An environment-specific assessment of the event's importance, based on - * elements such as event severity, business function of the affected - * system, or other locally defined variables. - */ - public static String COMMON_PRIORITY = "priority"; - /** - * The product that generated the event. - */ - public static String COMMON_PRODUCT = "product"; - /** - * The version of the product that generated the event. - */ - public static String COMMON_PRODUCT_VERSION = "product_version"; - /** - * The result root cause, such as connection refused, timeout, crash, and so - * on. - */ - public static String COMMON_REASON = "reason"; - /** - * The action result. Often is a binary choice: succeeded and failed, - * allowed and denied, and so on. - */ - public static String COMMON_RESULT = "result"; - /** - * The severity (or priority) of an event as reported by the originating - * device. - */ - public static String COMMON_SEVERITY = "severity"; - /** - * The event's specified start time. - */ - public static String COMMON_START_TIME = "start_time"; - /** - * The transaction identifier. - */ - public static String COMMON_TRANSACTION_ID = "transaction_id"; - /** - * A uniform record locator (a web address, in other words) included in a - * record. - */ - public static String COMMON_URL = "url"; - /** - * The vendor who made the product that generated the event. - */ - public static String COMMON_VENDOR = "vendor"; - // ---------------------------------- - // Update - // ---------------------------------- - - /** - * The name of the installed update. - */ - public static String UPDATE_PACKAGE = "package"; - - /** - * A Constructor to load data from a Map - * @param data the map - */ - public SplunkEvent(Map data) { - this.eventMessage = new StringBuffer(); - for (String key : data.keySet()) { - this.addPair(key, data.get(key)); - } - } - - /** - * A Copy constructor - * @param splunkEvent - */ - public SplunkEvent(SplunkEvent splunkEvent) { - this.eventMessage = splunkEvent.eventMessage; - this.quoteValues = splunkEvent.quoteValues; - this.useInternalDate = splunkEvent.useInternalDate; - } - - /** - * Constructor to create a generic event - * @param eventName the event name - * @param eventID the event id - * @param useInternalDate whether or not to add a date to the event string - * @param quoteValues whether or not to put quotes around values - */ - public SplunkEvent(String eventName, String eventID, boolean useInternalDate, boolean quoteValues) { - - this.eventMessage = new StringBuffer(); - this.quoteValues = quoteValues; - this.useInternalDate = useInternalDate; - - addPair(PREFIX_NAME, eventName); - addPair(PREFIX_EVENT_ID, eventID); - } - - /** - * Constructor to create a generic event with the default format - * - * @param eventName the event name - * @param eventID the event ID - */ - public SplunkEvent(String eventName, String eventID) { - - this(eventName, eventID, true, true); - } - - /** - * Default constructor - */ - public SplunkEvent() { - this.eventMessage = new StringBuffer(); - } - - public Map getEventData() { - Map eventData = new HashMap(); - String eventEntries = eventMessage.toString(); - - String[] entries = eventEntries.split(PAIRDELIM); - - String quote = new String(new char[] { QUOTE }); - - for (String entry : entries) { - String[] pair = entry.split(KVDELIM); - - Assert.isTrue(pair.length == 2, String.format("invalid event data [%s]", entry)); - - String key = pair[0].replaceAll(quote, ""); - String value = pair[1].replaceAll(quote, ""); - if ("null".equals(value)) { - value = null; - } - - eventData.put(key, value); - } - return eventData; - } - - /** - * Add a key value pair - * - * @param key - * @param value - */ - public void addPair(String key, char value) { - addPair(key, String.valueOf(value)); - } - - /** - * Add a key value pair - * - * @param key - * @param value - */ - public void addPair(String key, boolean value) { - addPair(key, String.valueOf(value)); - } - - /** - * Add a key value pair - * - * @param key - * @param value - */ - public void addPair(String key, double value) { - addPair(key, String.valueOf(value)); - } - - /** - * Add a key value pair - * - * @param key - * @param value - */ - public void addPair(String key, long value) { - addPair(key, String.valueOf(value)); - } - - /** - * Add a key value pair - * - * @param key - * @param value - */ - public void addPair(String key, int value) { - addPair(key, String.valueOf(value)); - } - - /** - * Add a key value pair - * - * @param key - * @param value - */ - public void addPair(String key, Object value) { - addPair(key, value.toString()); - } - - /** - * Utility method for formatting Throwable,Error,Exception objects in a more - * linear and Splunk friendly manner than printStackTrace - * - * @param throwable - * the Throwable object to add to the event - */ - public void addThrowable(Throwable throwable) { - - addThrowableObject(throwable, -1); - } - - /** - * Utility method for formatting Throwable,Error,Exception objects in a more - * linear and Splunk friendly manner than printStackTrace - * - * @param throwable - * the Throwable object to add to the event - * @param stackTraceDepth - * maximum number of stacktrace elements to log - */ - public void addThrowable(Throwable throwable, int stackTraceDepth) { - - addThrowableObject(throwable, stackTraceDepth); - } - - /** - * Internal private method for formatting Throwable,Error,Exception objects - * in a more linear and Splunk friendly manner than printStackTrace - * - * @param throwable - * the Throwable object to add to the event - * @param stackTraceDepth - * maximum number of stacktrace elements to log, -1 for all - */ - - private void addThrowableObject(Throwable throwable, int stackTraceDepth) { - - addPair(THROWABLE_CLASS, throwable.getClass().getCanonicalName()); - addPair(THROWABLE_MESSAGE, throwable.getMessage()); - StackTraceElement[] elements = throwable.getStackTrace(); - StringBuffer sb = new StringBuffer(); - int depth = 0; - for (StackTraceElement element : elements) { - depth++; - if (stackTraceDepth == -1 || stackTraceDepth >= depth) - sb.append(element.toString()).append(","); - else - break; - - } - addPair(THROWABLE_STACKTRACE_ELEMENTS, sb.toString()); - } - - /** - * Add a key value pair - * - * @param key - * @param value - */ - public void addPair(String key, String value) { - Assert.notNull(key, "key cannot be null"); - if (quoteValues) - this.eventMessage.append(key).append(KVDELIM).append(QUOTE).append(value).append(QUOTE).append(PAIRDELIM); - else - this.eventMessage.append(key).append(KVDELIM).append(value).append(PAIRDELIM); - - } - - @Override - /** - * return the completed event message - */ - public String toString() { - - String event = ""; - - if (useInternalDate) { - StringBuffer clonedMessage = new StringBuffer(); - clonedMessage.append(DATE_FORMATTER.print(new Date().getTime())).append(PAIRDELIM) - .append(this.eventMessage); - event = clonedMessage.toString(); - } else - event = eventMessage.toString(); - // trim off trailing pair delim char(s) - String result = event.substring(0, event.length() - PAIRDELIM.length()) + LINEBREAK; - return result; - } - - public void setCommonCategory(String commonCategory) { - addPair(COMMON_CATEGORY, commonCategory); - } - - public void setCommonCount(String commonCount) { - addPair(COMMON_COUNT, commonCount); - } - - public void setCommonDesc(String commonDesc) { - addPair(COMMON_DESC, commonDesc); - } - - public void setCommonDhcpPool(String commonDhcpPool) { - addPair(COMMON_DHCP_POOL, commonDhcpPool); - } - - public void setCommonDuration(long commonDuration) { - addPair(COMMON_DURATION, commonDuration); - } - - public void setCommonDvcHost(String commonDvcHost) { - addPair(COMMON_DVC_HOST, commonDvcHost); - } - - public void setCommonDvcIp(String commonDvcIp) { - addPair(COMMON_DVC_IP, commonDvcIp); - } - - public void setCommonDvcIp6(String commonDvcIp6) { - addPair(COMMON_DVC_IP6, commonDvcIp6); - } - - public void setCommonDvcLocation(String commonDvcLocation) { - addPair(COMMON_DVC_LOCATION, commonDvcLocation); - } - - public void setCommonDvcMac(String commonDvcMac) { - addPair(COMMON_DVC_MAC, commonDvcMac); - } - - public void setCommonDvcNtDomain(String commonDvcNtDomain) { - addPair(COMMON_DVC_NT_DOMAIN, commonDvcNtDomain); - } - - public void setCommonDvcNtHost(String commonDvcNtHost) { - addPair(COMMON_DVC_NT_HOST, commonDvcNtHost); - } - - public void setCommonDvcTime(long commonDvcTime) { - addPair(COMMON_DVC_TIME, commonDvcTime); - } - - public void setCommonEndTime(long commonEndTime) { - addPair(COMMON_END_TIME, commonEndTime); - } - - public void setCommonEventId(long commonEventId) { - addPair(COMMON_EVENT_ID, commonEventId); - } - - public void setCommonLength(long commonLength) { - addPair(COMMON_LENGTH, commonLength); - } - - public void setCommonLogLevel(String commonLogLevel) { - addPair(COMMON_LOG_LEVEL, commonLogLevel); - } - - public void setCommonName(String commonName) { - addPair(COMMON_NAME, commonName); - } - - public void setCommonPid(long commonPid) { - addPair(COMMON_PID, commonPid); - } - - public void setCommonPriority(long commonPriority) { - addPair(COMMON_PRIORITY, commonPriority); - } - - public void setCommonProduct(String commonProduct) { - addPair(COMMON_PRODUCT, commonProduct); - } - - public void setCommonProductVersion(long commonProductVersion) { - addPair(COMMON_PRODUCT_VERSION, commonProductVersion); - } - - public void setCommonReason(String commonReason) { - addPair(COMMON_REASON, commonReason); - } - - public void setCommonResult(String commonResult) { - addPair(COMMON_RESULT, commonResult); - } - - public void setCommonSeverity(String commonSeverity) { - addPair(COMMON_SEVERITY, commonSeverity); - } - - public void setCommonStartTime(long commonStartTime) { - addPair(COMMON_START_TIME, commonStartTime); - } - - public void setCommonTransactionId(String commonTransactionId) { - addPair(COMMON_TRANSACTION_ID, commonTransactionId); - } - - public void setCommonUrl(String commonUrl) { - addPair(COMMON_URL, commonUrl); - } - - public void setCommonVendor(String commonVendor) { - addPair(COMMON_VENDOR, commonVendor); - } - - public void setUpdatePackage(String updatePackage) { - addPair(UPDATE_PACKAGE, updatePackage); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SystemCenterEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SystemCenterEvent.java deleted file mode 100644 index 7ead93c..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/SystemCenterEvent.java +++ /dev/null @@ -1,184 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class SystemCenterEvent extends SplunkEvent { - // ---------------------------------- - // System center - // ---------------------------------- - - /** - * The running application or service on the system (the src field), such as - * explorer.exe or sshd. - */ - public static String SYSTEM_CENTER_APP = "app"; - /** - * The amount of disk space available per drive or mount (the mount field) - * on the system (the src field). - */ - public static String SYSTEM_CENTER_FREEMBYTES = "FreeMBytes"; - /** - * The version of operating system installed on the host (the src field), - * such as 6.0.1.4 or 2.6.27.30-170.2.82.fc10.x86_64. - */ - public static String SYSTEM_CENTER_KERNEL_RELEASE = "kernel_release"; - /** - * Human-readable version of the SystemUptime value. - */ - public static String SYSTEM_CENTER_LABEL = "label"; - /** - * The drive or mount reporting available disk space (the FreeMBytes field) - * on the system (the src field). - */ - public static String SYSTEM_CENTER_MOUNT = "mount"; - /** - * The name of the operating system installed on the host (the src), such as - * Microsoft Windows Server 2003 or GNU/Linux). - */ - public static String SYSTEM_CENTER_OS = "os"; - /** - * The percentage of processor utilization. - */ - public static String SYSTEM_CENTER_PERCENTPROCESSORTIME = "PercentProcessorTime"; - /** - * The setlocaldefs setting from the SE Linux configuration. - */ - public static String SYSTEM_CENTER_SETLOCALDEFS = "setlocaldefs"; - /** - * Values from the SE Linux configuration file. - */ - public static String SYSTEM_CENTER_SELINUX = "selinux"; - /** - * The SE Linux type (such as targeted). - */ - public static String SYSTEM_CENTER_SELINUXTYPE = "selinuxtype"; - /** - * The shell provided to the User Account (the user field) upon logging into - * the system (the src field). - */ - public static String SYSTEM_CENTER_SHELL = "shell"; - /** - * The TCP/UDP source port on the system (the src field). - */ - public static String SYSTEM_CENTER_SRC_PORT = "src_port"; - /** - * The sshd protocol version. - */ - public static String SYSTEM_CENTER_SSHD_PROTOCOL = "sshd_protocol"; - /** - * The start mode of the given service. - */ - public static String SYSTEM_CENTER_STARTMODE = "Startmode"; - /** - * The number of seconds since the system (the src) has been "up." - */ - public static String SYSTEM_CENTER_SYSTEMUPTIME = "SystemUptime"; - /** - * The total amount of available memory on the system (the src). - */ - public static String SYSTEM_CENTER_TOTALMBYTES = "TotalMBytes"; - /** - * The amount of used memory on the system (the src). - */ - public static String SYSTEM_CENTER_USEDMBYTES = "UsedMBytes"; - /** - * The User Account present on the system (the src). - */ - public static String SYSTEM_CENTER_USER = "user"; - /** - * The number of updates the system (the src) is missing. - */ - public static String SYSTEM_CENTER_UPDATES = "updates"; - - public void setSystemCenterApp(String systemCenterApp) { - addPair(SYSTEM_CENTER_APP, systemCenterApp); - } - - public void setSystemCenterFreembytes(long systemCenterFreembytes) { - addPair(SYSTEM_CENTER_FREEMBYTES, systemCenterFreembytes); - } - - public void setSystemCenterKernelRelease(String systemCenterKernelRelease) { - addPair(SYSTEM_CENTER_KERNEL_RELEASE, systemCenterKernelRelease); - } - - public void setSystemCenterLabel(String systemCenterLabel) { - addPair(SYSTEM_CENTER_LABEL, systemCenterLabel); - } - - public void setSystemCenterMount(String systemCenterMount) { - addPair(SYSTEM_CENTER_MOUNT, systemCenterMount); - } - - public void setSystemCenterOs(String systemCenterOs) { - addPair(SYSTEM_CENTER_OS, systemCenterOs); - } - - public void setSystemCenterPercentprocessortime(int systemCenterPercentprocessortime) { - addPair(SYSTEM_CENTER_PERCENTPROCESSORTIME, systemCenterPercentprocessortime); - } - - public void setSystemCenterSetlocaldefs(int systemCenterSetlocaldefs) { - addPair(SYSTEM_CENTER_SETLOCALDEFS, systemCenterSetlocaldefs); - } - - public void setSystemCenterSelinux(String systemCenterSelinux) { - addPair(SYSTEM_CENTER_SELINUX, systemCenterSelinux); - } - - public void setSystemCenterSelinuxtype(String systemCenterSelinuxtype) { - addPair(SYSTEM_CENTER_SELINUXTYPE, systemCenterSelinuxtype); - } - - public void setSystemCenterShell(String systemCenterShell) { - addPair(SYSTEM_CENTER_SHELL, systemCenterShell); - } - - public void setSystemCenterSrcPort(int systemCenterSrcPort) { - addPair(SYSTEM_CENTER_SRC_PORT, systemCenterSrcPort); - } - - public void setSystemCenterSshdProtocol(String systemCenterSshdProtocol) { - addPair(SYSTEM_CENTER_SSHD_PROTOCOL, systemCenterSshdProtocol); - } - - public void setSystemCenterStartmode(String systemCenterStartmode) { - addPair(SYSTEM_CENTER_STARTMODE, systemCenterStartmode); - } - - public void setSystemCenterSystemuptime(long systemCenterSystemuptime) { - addPair(SYSTEM_CENTER_SYSTEMUPTIME, systemCenterSystemuptime); - } - - public void setSystemCenterTotalmbytes(long systemCenterTotalmbytes) { - addPair(SYSTEM_CENTER_TOTALMBYTES, systemCenterTotalmbytes); - } - - public void setSystemCenterUsedmbytes(long systemCenterUsedmbytes) { - addPair(SYSTEM_CENTER_USEDMBYTES, systemCenterUsedmbytes); - } - - public void setSystemCenterUser(String systemCenterUser) { - addPair(SYSTEM_CENTER_USER, systemCenterUser); - } - - public void setSystemCenterUpdates(long systemCenterUpdates) { - addPair(SYSTEM_CENTER_UPDATES, systemCenterUpdates); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/TrafficEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/TrafficEvent.java deleted file mode 100644 index 14c9207..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/TrafficEvent.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class TrafficEvent extends SplunkEvent { - - // ---------------------------------- - // Traffic - // ---------------------------------- - - /** - * The destination of the network traffic. If your field is named dest_host, - * dest_ip, dest_ipv6, or dest_nt_host you can alias it as dest to make it - * CIM-compliant. - */ - public static String TRAFFIC_DEST = "dest"; - /** - * The name of the packet filtering device. If your field is named dvc_host, - * dvc_ip, or dvc_nt_host you can alias it as dvc to make it CIM-compliant. - */ - public static String TRAFFIC_DVC = "dvc"; - /** - * The source of the network traffic. If your field is named src_host, - * src_ip, src_ipv6, or src_nt_host you can alias it as src to make it - * CIM-compliant. - */ - public static String TRAFFIC_SRC = "src"; - - public void setTrafficDest(String trafficDest) { - addPair(TRAFFIC_DEST, trafficDest); - } - - public void setTrafficDvc(String trafficDvc) { - addPair(TRAFFIC_DVC, trafficDvc); - } - - public void setTrafficSrc(String trafficSrc) { - addPair(TRAFFIC_SRC, trafficSrc); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/UserInfoUpdateEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/UserInfoUpdateEvent.java deleted file mode 100644 index 45325cc..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/UserInfoUpdateEvent.java +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class UserInfoUpdateEvent extends SplunkEvent { - // ---------------------------------- - // User information updates - // ---------------------------------- - - /** - * A user that has been affected by a change. For example, user fflanda - * changed the name of user rhallen, so affected_user=rhallen. - */ - public static String USER_INFO_UPDATES_AFFECTED_USER = "affected_user"; - /** - * The user group affected by a change. - */ - public static String USER_INFO_UPDATES_AFFECTED_USER_GROUP = "affected_user_group"; - /** - * The identifier of the user group affected by a change. - */ - public static String USER_INFO_UPDATES_AFFECTED_USER_GROUP_ID = "affected_user_group_id"; - /** - * The identifier of the user affected by a change. - */ - public static String USER_INFO_UPDATES_AFFECTED_USER_ID = "affected_user_id"; - /** - * The security context associated with the user affected by a change. - */ - public static String USER_INFO_UPDATES_AFFECTED_USER_PRIVILEGE = "affected_user_privilege"; - /** - * The name of the user affected by the recorded event. - */ - public static String USER_INFO_UPDATES_USER = "user"; - /** - * A user group that is the object of an event, expressed in human-readable - * terms. - */ - public static String USER_INFO_UPDATES_USER_GROUP = "user_group"; - /** - * The numeric identifier assigned to the user group event object. - */ - public static String USER_INFO_UPDATES_USER_GROUP_ID = "user_group_id"; - /** - * The system-assigned identifier for the user affected by an event. - */ - public static String USER_INFO_UPDATES_USER_ID = "user_id"; - /** - * The security context associated with the object of an event (the affected - * user). - */ - public static String USER_INFO_UPDATES_USER_PRIVILEGE = "user_privilege"; - /** - * The name of the user that is the subject of an event--the user executing - * the action, in other words. - */ - public static String USER_INFO_UPDATES_USER_SUBJECT = "user_subject"; - /** - * The ID number of the user that is the subject of an event. - */ - public static String USER_INFO_UPDATES_USER_SUBJECT_ID = "user_subject_id"; - /** - * The security context associated with the subject of an event (the user - * causing a change). - */ - public static String USER_INFO_UPDATES_USER_SUBJECT_PRIVILEGE = "user_subject_privilege"; - public void setUserInfoUpdatesAffectedUser(String userInfoUpdatesAffectedUser) { - addPair(USER_INFO_UPDATES_AFFECTED_USER, userInfoUpdatesAffectedUser); - } - - public void setUserInfoUpdatesAffectedUserGroup(String userInfoUpdatesAffectedUserGroup) { - addPair(USER_INFO_UPDATES_AFFECTED_USER_GROUP, userInfoUpdatesAffectedUserGroup); - } - - public void setUserInfoUpdatesAffectedUserGroupId(int userInfoUpdatesAffectedUserGroupId) { - addPair(USER_INFO_UPDATES_AFFECTED_USER_GROUP_ID, userInfoUpdatesAffectedUserGroupId); - } - - public void setUserInfoUpdatesAffectedUserId(int userInfoUpdatesAffectedUserId) { - addPair(USER_INFO_UPDATES_AFFECTED_USER_ID, userInfoUpdatesAffectedUserId); - } - - public void setUserInfoUpdatesAffectedUserPrivilege(String userInfoUpdatesAffectedUserPrivilege) { - addPair(USER_INFO_UPDATES_AFFECTED_USER_PRIVILEGE, userInfoUpdatesAffectedUserPrivilege); - } - - public void setUserInfoUpdatesUser(String userInfoUpdatesUser) { - addPair(USER_INFO_UPDATES_USER, userInfoUpdatesUser); - } - - public void setUserInfoUpdatesUserGroup(String userInfoUpdatesUserGroup) { - addPair(USER_INFO_UPDATES_USER_GROUP, userInfoUpdatesUserGroup); - } - - public void setUserInfoUpdatesUserGroupId(int userInfoUpdatesUserGroupId) { - addPair(USER_INFO_UPDATES_USER_GROUP_ID, userInfoUpdatesUserGroupId); - } - - public void setUserInfoUpdatesUserId(int userInfoUpdatesUserId) { - addPair(USER_INFO_UPDATES_USER_ID, userInfoUpdatesUserId); - } - - public void setUserInfoUpdatesUserPrivilege(String userInfoUpdatesUserPrivilege) { - addPair(USER_INFO_UPDATES_USER_PRIVILEGE, userInfoUpdatesUserPrivilege); - } - - public void setUserInfoUpdatesUserSubject(String userInfoUpdatesUserSubject) { - addPair(USER_INFO_UPDATES_USER_SUBJECT, userInfoUpdatesUserSubject); - } - - public void setUserInfoUpdatesUserSubjectId(int userInfoUpdatesUserSubjectId) { - addPair(USER_INFO_UPDATES_USER_SUBJECT_ID, userInfoUpdatesUserSubjectId); - } - - public void setUserInfoUpdatesUserSubjectPrivilege(String userInfoUpdatesUserSubjectPrivilege) { - addPair(USER_INFO_UPDATES_USER_SUBJECT_PRIVILEGE, userInfoUpdatesUserSubjectPrivilege); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/VulnerabilityEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/VulnerabilityEvent.java deleted file mode 100644 index 18d32fc..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/VulnerabilityEvent.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class VulnerabilityEvent extends SplunkEvent { - // ---------------------------------- - // Vulnerability - // ---------------------------------- - - /** - * The category of the discovered vulnerability. - */ - public static String VULNERABILITY_CATEGORY = "category"; - /** - * The host with the discovered vulnerability. If your field is named - * dest_host, dest_ip, dest_ipv6, or dest_nt_host you can alias it as dest - * to make it CIM-compliant. - */ - public static String VULNERABILITY_DEST = "dest"; - /** - * The operating system of the host containing the vulnerability detected on - * the client (the src field), such as SuSE Security Update, or cups - * security update. - */ - public static String VULNERABILITY_OS = "os"; - /** - * The severity of the discovered vulnerability. - */ - public static String VULNERABILITY_SEVERITY = "severity"; - /** - * The name of the vulnerability detected on the client (the src field), - * such as SuSE Security Update, or cups security update. - */ - public static String VULNERABILITY_SIGNATURE = "signature"; - - public void setVulnerabilityCategory(String vulnerabilityCategory) { - addPair(VULNERABILITY_CATEGORY, vulnerabilityCategory); - } - - public void setVulnerabilityDest(String vulnerabilityDest) { - addPair(VULNERABILITY_DEST, vulnerabilityDest); - } - - public void setVulnerabilityOs(String vulnerabilityOs) { - addPair(VULNERABILITY_OS, vulnerabilityOs); - } - - public void setVulnerabilitySeverity(String vulnerabilitySeverity) { - addPair(VULNERABILITY_SEVERITY, vulnerabilitySeverity); - } - - public void setVulnerabilitySignature(String vulnerabilitySignature) { - addPair(VULNERABILITY_SIGNATURE, vulnerabilitySignature); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/WindowsAdminEvent.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/WindowsAdminEvent.java deleted file mode 100644 index 5f5ecd3..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/event/WindowsAdminEvent.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -/** - * @author David Turanski - * - */ -@SuppressWarnings("serial") -public class WindowsAdminEvent extends SplunkEvent { - // ---------------------------------- - // Windows administration - // ---------------------------------- - - /** - * The object name (associated only with Windows). - */ - public static String WINDOWS_ADMIN_OBJECT_NAME = "object_name"; - /** - * The object type (associated only with Windows). - */ - public static String WINDOWS_ADMIN_OBJECT_TYPE = "object_type"; - /** - * The object handle (associated only with Windows). - */ - public static String WINDOWS_ADMIN_OBJECT_HANDLE = "object_handle"; - - public void setWindowsAdminObjectName(String windowsAdminObjectName) { - addPair(WINDOWS_ADMIN_OBJECT_NAME, windowsAdminObjectName); - } - - public void setWindowsAdminObjectType(String windowsAdminObjectType) { - addPair(WINDOWS_ADMIN_OBJECT_TYPE, windowsAdminObjectType); - } - - public void setWindowsAdminObjectHandle(String windowsAdminObjectHandle) { - addPair(WINDOWS_ADMIN_OBJECT_HANDLE, windowsAdminObjectHandle); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapter.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapter.java deleted file mode 100644 index 01f4cfd..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapter.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright 2002-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.inbound; - -import java.util.List; - -import org.springframework.integration.context.IntegrationObjectSupport; -import org.springframework.integration.core.MessageSource; -import org.springframework.integration.splunk.event.SplunkEvent; -import org.springframework.integration.splunk.support.SplunkExecutor; -import org.springframework.integration.support.MessageBuilder; -import org.springframework.messaging.Message; -import org.springframework.util.Assert; - -/** - * Polling data from Splunk to generate Message - * - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkPollingChannelAdapter extends IntegrationObjectSupport implements MessageSource> { - - private final SplunkExecutor splunkExecutor; - - /** - * Constructor taking a {@link SplunkExecutor} that provide all required Splunk - * functionality. - * - * @param splunkExecutor Must not be null. - */ - public SplunkPollingChannelAdapter(SplunkExecutor splunkExecutor) { - super(); - Assert.notNull(splunkExecutor, "splunkExecutor must not be null."); - this.splunkExecutor = splunkExecutor; - } - - /** - * Check for mandatory attributes - */ - @Override - protected void onInit() throws Exception { - super.onInit(); - } - - /** - * Uses {@link SplunkExecutor#poll()} to executes the Splunk operation. - * - * If {@link SplunkExecutor#poll()} returns null, this method will return - * null. Otherwise, a new {@link Message} is constructed and returned. - */ - public Message> receive() { - List payload = splunkExecutor.poll(); - if (payload == null) { - return null; - } - return MessageBuilder.withPayload(payload).build(); - } - - @Override - public String getComponentType() { - return "splunk:inbound-channel-adapter"; - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/package-info.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/package-info.java deleted file mode 100644 index f72820a..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/inbound/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Provides inbound Spring Integration Splunk components. - */ -package org.springframework.integration.splunk.inbound; diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapter.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapter.java deleted file mode 100644 index ca5925c..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapter.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright 2002-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.outbound; - -import org.springframework.integration.handler.AbstractReplyProducingMessageHandler; -import org.springframework.integration.splunk.support.SplunkExecutor; -import org.springframework.integration.support.MessageBuilder; -import org.springframework.messaging.Message; -import org.springframework.util.Assert; - - -/** - * Handle message and write data into Splunk - * - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkOutboundChannelAdapter extends AbstractReplyProducingMessageHandler { - - private final SplunkExecutor splunkExecutor; - private boolean producesReply = true; //false for outbound-channel-adapter, true for outbound-gateway - - /** - * Constructor taking an {@link SplunkExecutor} that wraps common - * Splunk Operations. - * - * @param splunkExecutor Must not be null - * - */ - public SplunkOutboundChannelAdapter(SplunkExecutor splunkExecutor) { - Assert.notNull(splunkExecutor, "splunkExecutor must not be null."); - this.splunkExecutor = splunkExecutor; - } - - - @Override - protected Object handleRequestMessage(Message requestMessage) { - final Object result; - result = this.splunkExecutor.write(requestMessage); - if (result == null || !producesReply) { - return null; - } - return MessageBuilder.withPayload(result).copyHeaders(requestMessage.getHeaders()).build(); - - } - - /** - * If set to 'false', this component will act as an Outbound Channel Adapter. - * If not explicitly set this property will default to 'true'. - * - * @param producesReply Defaults to 'true'. - * - */ - public void setProducesReply(boolean producesReply) { - this.producesReply = producesReply; - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/package-info.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/package-info.java deleted file mode 100644 index 0ce1585..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/outbound/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Provides Spring Integration components for doing outbound operations. - */ -package org.springframework.integration.splunk.outbound; diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/AbstractSplunkDataWriter.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/AbstractSplunkDataWriter.java deleted file mode 100644 index 1d480b9..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/AbstractSplunkDataWriter.java +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import java.io.IOException; -import java.io.OutputStream; -import java.io.OutputStreamWriter; -import java.io.Writer; -import java.net.Socket; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.context.SmartLifecycle; -import org.springframework.integration.splunk.core.DataWriter; -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.integration.splunk.event.SplunkEvent; -import org.springframework.util.Assert; - -import com.splunk.Args; -import com.splunk.Service; - -/** - * Base class for {@link DataWriter}s to write data into Splunk. - * - * @author Jarred Li - * @author David Turanski - * @since 1.0 - * - */ -public abstract class AbstractSplunkDataWriter implements DataWriter, SmartLifecycle { - - protected final Log logger = LogFactory.getLog(getClass()); - - protected Socket socket; - - protected Service service; - - protected Args args; - - private boolean running; - - private int phase; - - private boolean autoStartup = true; - - private final ServiceFactory serviceFactory; - - - - protected AbstractSplunkDataWriter(ServiceFactory serviceFactory, Args args) { - Assert.notNull(serviceFactory,"service factory cannot be null"); - this.serviceFactory = serviceFactory; - - Assert.notNull(args, "args cannot be null"); - this.args = args; - } - - public void write(SplunkEvent event) throws Exception { - if (logger.isDebugEnabled()) { - logger.debug("writing event to splunk:" + event); - } - - doWrite(event, socket, service, args); - } - - protected void doWrite(SplunkEvent event, Socket socket, Service service, Args args) throws IOException { - OutputStream ostream = socket.getOutputStream(); - Writer writer = new OutputStreamWriter(ostream, "UTF8"); - writer.write(event.toString()); - writer.flush(); - } - - protected abstract Socket createSocket(Service service) throws IOException; - - - public Args getArgs() { - return args; - } - - /* (non-Javadoc) - * @see org.springframework.context.Lifecycle#start() - */ - public synchronized void start() { - try { - service = serviceFactory.getService(); - socket = createSocket(service); - - } catch (Exception e) { - throw new RuntimeException(e); - } - this.running = true; - } - - /* (non-Javadoc) - * @see org.springframework.context.Lifecycle#stop() - */ - public synchronized void stop() { - if (!running) { - return; - } - try { - if (socket != null) { - socket.close(); - } - } catch (Exception e) { - throw new RuntimeException(e); - } - - this.running = false; - } - - /* (non-Javadoc) - * @see org.springframework.context.Lifecycle#isRunning() - */ - public boolean isRunning() { - return this.running; - } - - /* (non-Javadoc) - * @see org.springframework.context.Phased#getPhase() - */ - public int getPhase() { - return this.phase; - } - - public void setPhase(int phase) { - this.phase = phase; - } - - /* (non-Javadoc) - * @see org.springframework.context.SmartLifecycle#isAutoStartup() - */ - public boolean isAutoStartup() { - return this.autoStartup; - } - - public void setAutoStartup(boolean autoStartup) { - this.autoStartup = autoStartup; - } - - /* (non-Javadoc) - * @see org.springframework.context.SmartLifecycle#stop(java.lang.Runnable) - */ - public synchronized void stop(Runnable callback) { - this.stop(); - callback.run(); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/ArgsBuilder.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/ArgsBuilder.java deleted file mode 100644 index 84d445a..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/ArgsBuilder.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import com.splunk.Args; - -/** - * Build {@link Args} instance. Supports method chaining - * @author David Turanski - * - */ -public class ArgsBuilder { - - private String sourceType; - private String source; - private String host; - private String hostRegex; - - public Args build() { - Args args = new Args(); - if (sourceType != null) { - args.put("sourcetype", sourceType); - } - if (source != null) { - args.put("source", source); - } - - if (host != null) { - args.put("host", host); - } - - if (hostRegex != null) { - args.put("host_regex", hostRegex); - } - return args; - } - - /** - * @param sourceType the sourceType to set - */ - public ArgsBuilder setSourceType(String sourceType) { - this.sourceType = sourceType; - return this; - } - - /** - * @param source the source to set - */ - public ArgsBuilder setSource(String source) { - this.source = source; - return this; - } - - /** - * @param host the host to set - */ - public ArgsBuilder setHost(String host) { - this.host = host; - return this; - } - - /** - * @param hostRegex the hostRegex to set - */ - public ArgsBuilder setHostRegex(String hostRegex) { - this.hostRegex = hostRegex; - return this; - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SearchMode.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SearchMode.java deleted file mode 100644 index 641c77d..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SearchMode.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -/** - * Search mode supported by Splunk. - * - * Blocking: Run synchronous search API - * Normal: Run asynchronous search API - * Realtime: Run the searches which are over a defined real time window - * Export: Run synchronously in your code , best way for bulk exports of events from Splunk - * Saved: Run predefined searches/parameters that are saved in Splunk in a namespace and you can execute them by name - * - * @author Jarred Li - * @since 1.0 - * - */ -public enum SearchMode { - BLOCKING, NORMAL, REALTIME, EXPORT, SAVEDSEARCH; -} \ No newline at end of file diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkArgsFactoryBean.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkArgsFactoryBean.java deleted file mode 100644 index 2e786d6..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkArgsFactoryBean.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import org.springframework.beans.factory.FactoryBean; - -import com.splunk.Args; - -/** - * {@link FactoryBean} that wraps {@link ArgsBuilder} - * @author David Turanski - * - */ -public class SplunkArgsFactoryBean implements FactoryBean { - private ArgsBuilder argsBuilder = new ArgsBuilder(); - - /* (non-Javadoc) - * @see org.springframework.beans.factory.FactoryBean#getObject() - */ - public Args getObject() throws Exception { - return argsBuilder.build(); - } - - /* (non-Javadoc) - * @see org.springframework.beans.factory.FactoryBean#getObjectType() - */ - public Class getObjectType() { - return Args.class; - } - - /* (non-Javadoc) - * @see org.springframework.beans.factory.FactoryBean#isSingleton() - */ - public boolean isSingleton() { - return true; - } - - /** - * @param host the host to set - */ - public void setHost(String host) { - this.argsBuilder.setHost(host); - } - - /** - * @param hostRegex the hostRegex to set - */ - public void setHostRegex(String hostRegex) { - this.argsBuilder.setHostRegex(hostRegex); - } - - /** - * @param sourceType the sourceType to set - */ - public void setSourceType(String sourceType) { - this.argsBuilder.setSourceType(sourceType); - } - - /** - * @param source the source to set - */ - public void setSource(String source) { - this.argsBuilder.setSource(source); - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkDataReader.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkDataReader.java deleted file mode 100644 index 0eb626f..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkDataReader.java +++ /dev/null @@ -1,453 +0,0 @@ -/* - * Copyright 2011-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import java.io.InputStream; -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import com.splunk.Args; -import com.splunk.Job; -import com.splunk.ResultsReader; -import com.splunk.ResultsReaderXml; -import com.splunk.SavedSearch; -import com.splunk.SavedSearchCollection; -import com.splunk.Service; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import org.springframework.beans.factory.InitializingBean; -import org.springframework.integration.splunk.core.DataReader; -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.integration.splunk.event.SplunkEvent; -import org.springframework.util.Assert; -import org.springframework.util.StringUtils; - -/** - * Data reader to search data from Splunk. - * - * There are 5 ways to search data provided by Splunk SDK: saved search, blocking search, - * non blocking search, realtime search, export search. - * - * Splunk search also supports time range search with earliestTime and latestTime. - * For the first time start, initEarliestTime is used as earliestTime. - * If user does not specify earliestTime and latestTime, latestTime is "now" - * earliestTime is the time that last polling is run. - * - * @author Jarred Li - * @author Olivier Lamy - * @since 1.0 - * - */ -public class SplunkDataReader implements DataReader, InitializingBean { - - private static final String DATE_FORMAT = "MM/dd/yy HH:mm:ss:SSS"; - - private static final String SPLUNK_TIME_FORMAT = "%m/%d/%y %H:%M:%S:%3N"; - - private static final Log logger = LogFactory.getLog(SplunkDataReader.class); - - private SearchMode mode; - - private int count = 0; - - private String fieldList; - - private String search; - - private String earliestTime; - - private String latestTime; - - private String savedSearch; - - private String owner; - - private String app; - - private String initEarliestTime; - - private transient Calendar lastSuccessfulReadTime; - - private final ServiceFactory serviceFactory; - - public SplunkDataReader(ServiceFactory serviceFactory) { - this.serviceFactory = serviceFactory; - } - - public void setSearch(String searchStr) { - Assert.hasText(searchStr, "search must be neither null nor empty"); - this.search = searchStr; - } - - public void setEarliestTime(String earliestTime) { - this.earliestTime = earliestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public void setSavedSearch(String savedSearch) { - this.savedSearch = savedSearch; - } - - public void setMode(SearchMode mode) { - Assert.notNull(mode, "mode must be set"); - this.mode = mode; - } - - public void setCount(int count) { - this.count = count; - } - - public void setFieldList(String fieldList) { - this.fieldList = fieldList; - } - - public void setOwner(String owner) { - this.owner = owner; - } - - public void setApp(String app) { - this.app = app; - } - - public void setInitEarliestTime(String initEarliestTime) { - Assert.notNull(initEarliestTime, "initial earliest time can not be null"); - this.initEarliestTime = initEarliestTime; - } - - public SearchMode getMode() { - return this.mode; - } - - public int getCount() { - return this.count; - } - - public String getFieldList() { - return this.fieldList; - } - - public String getSearch() { - return this.search; - } - - public String getEarliestTime() { - return this.earliestTime; - } - - public String getLatestTime() { - return this.latestTime; - } - - public String getSavedSearch() { - return this.savedSearch; - } - - public String getOwner() { - return this.owner; - } - - public String getInitEarliestTime() { - return this.initEarliestTime; - } - - public String getApp() { - return this.app; - } - - public List read() throws Exception { - logger.debug("mode:" + this.mode); - switch (this.mode) { - case SAVEDSEARCH: { - return savedSearch(); - } - case BLOCKING: { - return blockingSearch(); - } - case NORMAL: { - return nonBlockingSearch(); - } - case EXPORT: { - return exportSearch(); - } - case REALTIME: { - throw new UnsupportedOperationException("The 'real-time' search isn't supported " + - "because of the infinite Splunk Job nature."); -// return realtimeSearch(); - } - } - return null; - } - - /** - * Get the earliestTime of range search. - * - * @param startTime the time where search start - * @param realtime if this is realtime search - * - * @return The time of last successful read if not realtime; - * Time difference between last successful read and start time; - */ - private String calculateEarliestTime(Calendar startTime, boolean realtime) { - String result = null; - if (realtime) { - result = calculateEarliestTimeForRealTime(startTime); - } - DateFormat df = new SimpleDateFormat(DATE_FORMAT); - result = df.format(this.lastSuccessfulReadTime.getTime()); - return result; - } - - /** - * get earliest time for realtime search - * - * @param startTime - * @return - */ - private String calculateEarliestTimeForRealTime(Calendar startTime) { - String result = null; - long diff = startTime.getTimeInMillis() - this.lastSuccessfulReadTime.getTimeInMillis(); - result = "-" + diff / 1000 + "s"; - return result; - } - - private void populateArgs(Args queryArgs, Calendar startTime, boolean realtime) { - String earliestTime = getEarliestTime(startTime, realtime); - if (StringUtils.hasText(earliestTime)) { - queryArgs.put("earliest_time", earliestTime); - } - - String latestTime = getLatestTime(startTime, realtime); - if (StringUtils.hasText(latestTime)) { - queryArgs.put("latest_time", latestTime); - } - - queryArgs.put("time_format", SPLUNK_TIME_FORMAT); - - if (StringUtils.hasText(this.fieldList)) { - queryArgs.put("field_list", this.fieldList); - } - } - - private String getLatestTime(Calendar startTime, boolean realtime) { - String lTime = null; - if (StringUtils.hasText(this.latestTime)) { - lTime = this.latestTime; - } else { - if (realtime) { - lTime = "rt"; - } else { - DateFormat df = new SimpleDateFormat(DATE_FORMAT); - lTime = df.format(startTime.getTime()); - } - } - return lTime; - } - - private String getEarliestTime(Calendar startTime, boolean realtime) { - String eTime = null; - - if (this.lastSuccessfulReadTime == null) { - eTime = this.initEarliestTime; - } else { - if (StringUtils.hasText(earliestTime)) { - eTime = this.earliestTime; - } else { - String calculatedEarliestTime = calculateEarliestTime(startTime, realtime); - if (calculatedEarliestTime != null) { - if (realtime) { - eTime = "rt" + calculatedEarliestTime; - } else { - eTime = calculatedEarliestTime; - } - } - } - } - return eTime; - } - - private List runQuery(Args queryArgs) throws Exception { - Service service = this.serviceFactory.getService(); - Job job = service.getJobs().create(this.search, queryArgs); - while (!job.isDone()) { - Thread.sleep(2000); - } - return extractData(job); - - } - - private List blockingSearch() throws Exception { - logger.debug("block search start"); - - Args queryArgs = new Args(); - queryArgs.put("exec_mode", "blocking"); - Calendar startTime = Calendar.getInstance(); - populateArgs(queryArgs, startTime, false); - List data = runQuery(queryArgs); - this.lastSuccessfulReadTime = startTime; - return data; - } - - private List nonBlockingSearch() throws Exception { - logger.debug("non block search start"); - - Args queryArgs = new Args(); - queryArgs.put("exec_mode", "normal"); - Calendar startTime = Calendar.getInstance(); - populateArgs(queryArgs, startTime, false); - - List data = runQuery(queryArgs); - this.lastSuccessfulReadTime = startTime; - return data; - } - - /** - * @return - * @throws Exception - */ - private List realtimeSearch() throws Exception { - logger.debug("realtime search start"); - - Args queryArgs = new Args(); - queryArgs.put("search_mode", "realtime"); - Calendar startTime = Calendar.getInstance(); - populateArgs(queryArgs, startTime, true); - - List data = runQuery(queryArgs); - this.lastSuccessfulReadTime = startTime; - return data; - } - - /** - * @throws Exception - * - */ - private List exportSearch() throws Exception { - logger.debug("export start"); - List result = new ArrayList(); - HashMap data; - SplunkEvent splunkData; - - Args queryArgs = new Args(); - Calendar startTime = Calendar.getInstance(); - populateArgs(queryArgs, startTime, false); - queryArgs.put("output_mode", "xml"); - - Service service = this.serviceFactory.getService(); - InputStream os = service.export(this.search, queryArgs); - ResultsReaderXml resultsReader = new ResultsReaderXml(os); - while ((data = resultsReader.getNextEvent()) != null) { - splunkData = new SplunkEvent(data); - result.add(splunkData); - } - return result; - } - - private List savedSearch() throws Exception { - logger.debug("saved search start"); - - Args queryArgs = new Args(); - queryArgs.put("app", "search"); - if (this.owner != null && this.owner.length() > 0) { - queryArgs.put("owner", this.owner); - } - if (this.app != null && this.app.length() > 0) { - queryArgs.put("app", this.app); - } - - Calendar startTime = Calendar.getInstance(); - - SavedSearch search = null; - Job job = null; - String latestTime = getLatestTime(startTime, false); - String earliestTime = getEarliestTime(startTime, false); - - Service service = this.serviceFactory.getService(); - SavedSearchCollection savedSearches = service.getSavedSearches(queryArgs); - for (SavedSearch s : savedSearches.values()) { - if (s.getName().equals(this.savedSearch)) { - search = s; - } - } - if (search != null) { - Map args = new HashMap(); - args.put("force_dispatch", "true"); - args.put("dispatch.earliest_time", earliestTime); - args.put("dispatch.latest_time", latestTime); - job = search.dispatch(args); - } - while (!job.isDone()) { - Thread.sleep(2000); - } - List data = extractData(job); - this.lastSuccessfulReadTime = startTime; - return data; - - } - - private List extractData(Job job) throws Exception { - List result = new ArrayList(); - HashMap data; - SplunkEvent splunkData; - ResultsReader resultsReader; - int total = job.getResultCount(); - - if (this.count == 0 || total < this.count) { - InputStream stream = null; - Args outputArgs = new Args(); - outputArgs.put("count", this.count); - outputArgs.put("output_mode", "xml"); - stream = job.getResults(outputArgs); - - resultsReader = new ResultsReaderXml(stream); - while ((data = resultsReader.getNextEvent()) != null) { - splunkData = new SplunkEvent(data); - result.add(splunkData); - } - } else { - int offset = 0; - while (offset < total) { - InputStream stream = null; - Args outputArgs = new Args(); - outputArgs.put("output_mode", "xml"); - outputArgs.put("count", this.count); - outputArgs.put("offset", offset); - stream = job.getResults(outputArgs); - resultsReader = new ResultsReaderXml(stream); - while ((data = resultsReader.getNextEvent()) != null) { - splunkData = new SplunkEvent(data); - result.add(splunkData); - } - offset += this.count; - } - } - return result; - } - - public void afterPropertiesSet() throws Exception { - Assert.notNull(this.initEarliestTime, "initial earliest time can not be null"); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkExecutor.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkExecutor.java deleted file mode 100644 index c638dee..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkExecutor.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright 2002-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import java.util.List; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.messaging.MessageHandlingException; -import org.springframework.integration.splunk.core.DataReader; -import org.springframework.integration.splunk.core.DataWriter; -import org.springframework.integration.splunk.event.SplunkEvent; -import org.springframework.messaging.Message; -import org.springframework.messaging.MessagingException; - -/** - * Bundles common core logic for the Splunk components. - * - * @author Jarred Li - * @author David Turanski - * @since 1.0 - * - */ -public class SplunkExecutor { - - private static final Log logger = LogFactory.getLog(SplunkExecutor.class); - - private DataReader reader; - private DataWriter writer; - - /** - * Executes the outbound Splunk Operation. - */ - public Object write(final Message message) { - try { - SplunkEvent payload = (SplunkEvent) message.getPayload(); - writer.write(payload); - } catch (Exception e) { - String errorMsg = "error in writing data into Splunk"; - logger.warn(errorMsg, e); - throw new MessageHandlingException(message, errorMsg, e); - } - return null; - } - - public void handleMessage(final Message message) { - write(message); - } - - /** - * Execute the Splunk operation. - */ - public List poll() { - logger.debug("poll start:"); - List queryData = null; - try { - queryData = reader.read(); - } catch (Exception e) { - String errorMsg = "search Splunk data failed"; - logger.warn(errorMsg, e); - throw new MessagingException(errorMsg, e); - } - return queryData; - } - - public void setReader(DataReader reader) { - this.reader = reader; - } - - public void setWriter(DataWriter writer) { - this.writer = writer; - } - - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkIndexWriter.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkIndexWriter.java deleted file mode 100644 index d0328d3..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkIndexWriter.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright 2002-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import java.io.IOException; -import java.net.Socket; - -import com.splunk.Args; -import com.splunk.Index; -import com.splunk.Receiver; -import com.splunk.Service; - -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.util.Assert; - -/** - * - * DataWriter to stream data into Splunk using an optional index. If no index specified, - * the main default index is used. - * - * @author Jarred Li - * @author David Turanski - * @author Olivier Lamy - * @since 1.0 - */ -public class SplunkIndexWriter extends AbstractSplunkDataWriter { - - private String index; - - public SplunkIndexWriter(ServiceFactory serviceFactory, Args args) { - super(serviceFactory, args); - } - - @Override - protected Socket createSocket(Service service) throws IOException { - Index indexObject = null; - Receiver receiver = null; - Socket socket = null; - - if (index != null) { - indexObject = service.getIndexes().get(index); - Assert.notNull(indexObject, String.format("cannot find index [%s]", index)); - socket = indexObject.attach(args); - - } - else { - receiver = service.getReceiver(); - socket = receiver.attach(args); - } - if (logger.isDebugEnabled()) { - logger.debug(String.format("created a socket on %s", socket.getRemoteSocketAddress())); - } - return socket; - } - - - public String getIndex() { - return index; - } - - public void setIndex(String index) { - this.index = index; - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServer.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServer.java deleted file mode 100644 index af77494..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServer.java +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Copyright 2011-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import com.splunk.Service; - -/** - * Splunk server entity - * - * @author Jarred Li - * @author Olivier Lamy - * @since 1.0 - * - */ -public class SplunkServer { - - private String host = Service.DEFAULT_HOST; - - private int port = Service.DEFAULT_PORT; - - private String scheme = Service.DEFAULT_SCHEME; - - private String app; - - private String owner; - - private String username; - - private String password; - - private int timeout; - - /** - * if true the framework will test the connectivity before give back the connection. - */ - private boolean checkServiceOnBorrow = false; - - /** - * @return the host - */ - public String getHost() { - return host; - } - - /** - * @param host the host to set - */ - public void setHost(String host) { - this.host = host; - } - - /** - * @return the port - */ - public int getPort() { - return port; - } - - /** - * @param port the port to set - */ - public void setPort(int port) { - this.port = port; - } - - /** - * - * @return the used scheme - */ - public String getScheme() { - return scheme; - } - - /** - * - * @param scheme - */ - public void setScheme(String scheme) { - this.scheme = scheme; - } - - /** - * - * @return the application - */ - public String getApp() { - return app; - } - - /** - * - * @param app - */ - public void setApp(String app) { - this.app = app; - } - - /** - * - * @return the owner - */ - public String getOwner() { - return owner; - } - - /** - * - * @param owner - */ - public void setOwner(String owner) { - this.owner = owner; - } - - /** - * @return the userName - */ - public String getUsername() { - return username; - } - - /** - * @param username the username to set - */ - public void setUsername(String username) { - this.username = username; - } - - /** - * @return the password - */ - public String getPassword() { - return password; - } - - /** - * @param password the password to set - */ - public void setPassword(String password) { - this.password = password; - } - - /** - * @return the timeout in ms. - */ - public int getTimeout() { - return timeout; - } - - /** - * set the timeout in ms. - * @param timeout - */ - public void setTimeout(int timeout) { - this.timeout = timeout; - } - - /** - * @return {@code true/false} if there is need to check the underlying Splunk Service - * @since 1.1 - */ - public boolean isCheckServiceOnBorrow() { - return checkServiceOnBorrow; - } - - /** - * @param checkServiceOnBorrow the {@code checkServiceOnBorrow} flag - * @since 1.1 - */ - public void setCheckServiceOnBorrow(boolean checkServiceOnBorrow) { - this.checkServiceOnBorrow = checkServiceOnBorrow; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - - SplunkServer that = SplunkServer.class.cast(o); - - return port == that.port && host.equals(that.host); - - } - - @Override - public int hashCode() { - int result = host.hashCode(); - result = 31 * result + port; - return result; - } - - @Override - public String toString() { - return "SplunkServer{" + - "host='" + host + '\'' + - ", port=" + port + - ", scheme='" + scheme + '\'' + - ", app='" + app + '\'' + - '}'; - } -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServiceFactory.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServiceFactory.java deleted file mode 100644 index 936cac9..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkServiceFactory.java +++ /dev/null @@ -1,160 +0,0 @@ -/* - * Copyright 2002-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.Callable; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.Future; -import java.util.concurrent.TimeUnit; - -import javax.xml.bind.DatatypeConverter; - -import com.splunk.Service; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import org.springframework.beans.factory.FactoryBean; -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.util.Assert; - -/** - * A {@link FactoryBean} for creating a {@link Service} - * - * @author David Turanski - * @author Olivier Lamy - */ -public class SplunkServiceFactory implements ServiceFactory { - - private static final Log LOGGER = LogFactory.getLog(SplunkServiceFactory.class); - - private final List splunkServers; - - private final Map servicePerServer = new ConcurrentHashMap(); - - - public SplunkServiceFactory(SplunkServer splunkServer) { - Assert.notNull(splunkServer); - this.splunkServers = Arrays.asList(splunkServer); - } - - /** - * @param splunkServers the {@code List} to build this {@code SplunkServiceFactory} - * @since 1.1 - */ - public SplunkServiceFactory(List splunkServers) { - Assert.notEmpty(splunkServers); - this.splunkServers = new ArrayList(splunkServers); - } - - @Override - public synchronized Service getService() { - return getServiceInternal(); - } - - private Service getServiceInternal() { - - for (SplunkServer splunkServer : splunkServers) { - Service service = servicePerServer.get(splunkServer); - // service already exist and no test on borrow it so simply use it - - if (service != null) { - if (!splunkServer.isCheckServiceOnBorrow() || pingService(service)) { - return service; - } - else { - // fail so try next server - continue; - } - } - - ExecutorService executor = Executors.newSingleThreadExecutor(); - - Callable callable = buildServiceCallable(splunkServer); - - Future future = executor.submit(callable); - - try { - if (splunkServer.getTimeout() > 0) { - service = future.get(splunkServer.getTimeout(), TimeUnit.MILLISECONDS); - } - else { - service = future.get(); - } - - servicePerServer.put(splunkServer, service); - return service; - } - catch (Exception e) { - if (LOGGER.isInfoEnabled()) { - LOGGER.info(String.format("could not connect to Splunk Server @ %s:%d - %s, try next one", - splunkServer.getHost(), splunkServer.getPort(), e.getMessage())); - } - } - } - String message = String.format("could not connect to any of Splunk Servers %s", this.splunkServers); - LOGGER.error(message); - throw new RuntimeException(message); - } - - private Callable buildServiceCallable(SplunkServer splunkServer) { - final Map args = new HashMap(); - if (splunkServer.getHost() != null) { - args.put("host", splunkServer.getHost()); - } - if (splunkServer.getPort() != 0) { - args.put("port", splunkServer.getPort()); - } - if (splunkServer.getScheme() != null) { - args.put("scheme", splunkServer.getScheme()); - } - if (splunkServer.getApp() != null) { - args.put("app", splunkServer.getApp()); - } - if (splunkServer.getOwner() != null) { - args.put("owner", splunkServer.getOwner()); - } - - args.put("username", splunkServer.getUsername()); - args.put("password", splunkServer.getPassword()); - - String auth = splunkServer.getUsername() + ":" + splunkServer.getPassword(); - String authToken = "Basic " + DatatypeConverter.printBase64Binary(auth.getBytes()); - args.put("token", authToken); - - return new Callable() { - public Service call() - throws Exception { - return Service.connect(args); - } - }; - } - - private boolean pingService(Service service) { - try { - service.getInfo(); - return true; - } - catch (Exception e) { - return false; - } - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkSubmitWriter.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkSubmitWriter.java deleted file mode 100644 index c5e7369..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkSubmitWriter.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - /* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import java.io.IOException; -import java.net.Socket; - -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.integration.splunk.event.SplunkEvent; - -import com.splunk.Args; -import com.splunk.Index; -import com.splunk.Receiver; -import com.splunk.Service; - -/** - * @author David Turanski - * - */ -public class SplunkSubmitWriter extends AbstractSplunkDataWriter { - - private String index; - - /** - * @param serviceFactory - * @param args - */ - public SplunkSubmitWriter(ServiceFactory serviceFactory, Args args) { - super(serviceFactory, args); - } - - /* - * (non-Javadoc) - * - * @see - * org.springframework.integration.splunk.support.SplunkDataWriter#doWrite - * (org.springframework.integration.splunk.event.SplunkEvent, - * java.net.Socket, com.splunk.Service, com.splunk.Args) - */ - @Override - protected void doWrite(SplunkEvent event, Socket socket, Service service, - Args args) throws IOException { - - Index index = getIndex(); - if (index != null) { - index.submit(args, event.toString()); - } else { - Receiver receiver = service.getReceiver(); - receiver.submit(args, event.toString()); - } - } - - /* - * (non-Javadoc) - * - * @see - * org.springframework.integration.splunk.support.SplunkDataWriter#createSocket - * (com.splunk.Service) - */ - @Override - protected Socket createSocket(Service service) throws IOException { - return null; - } - - public void setIndex(String index) { - this.index = index; - } - - private Index getIndex() { - return (index == null) ? null : service.getIndexes().get(index); - } - -} diff --git a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkTcpWriter.java b/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkTcpWriter.java deleted file mode 100644 index 0e10542..0000000 --- a/spring-integration-splunk/src/main/java/org/springframework/integration/splunk/support/SplunkTcpWriter.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright 2002-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import java.io.IOException; -import java.net.Socket; - -import com.splunk.Args; -import com.splunk.Input; -import com.splunk.Service; - -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.util.Assert; - -/** - * - * A {@code org.springframework.integration.splunk.core.DataWriter} - * that creates a socket on a given port - * - * @author David Turanski - * - */ -public class SplunkTcpWriter extends AbstractSplunkDataWriter { - private int port; - - public SplunkTcpWriter(ServiceFactory serviceFactory, Args args) { - super(serviceFactory, args); - } - - @Override - protected Socket createSocket(Service service) throws IOException { - - Input input = service.getInputs().get(String.valueOf(port)); - Assert.notNull(input, "no input defined for port " + port); - Assert.isTrue(!input.isDisabled(),String.format("input on port %d is disabled",port)); - return service.open(port); - } - - /** - * @param port the port to set - */ - public void setPort(int port) { - this.port = port; - } - - -} diff --git a/spring-integration-splunk/src/main/resources/META-INF/spring.handlers b/spring-integration-splunk/src/main/resources/META-INF/spring.handlers deleted file mode 100644 index 4d4111e..0000000 --- a/spring-integration-splunk/src/main/resources/META-INF/spring.handlers +++ /dev/null @@ -1 +0,0 @@ -http\://www.springframework.org/schema/integration/splunk=org.springframework.integration.splunk.config.xml.SplunkNamespaceHandler diff --git a/spring-integration-splunk/src/main/resources/META-INF/spring.schemas b/spring-integration-splunk/src/main/resources/META-INF/spring.schemas deleted file mode 100644 index cc8649e..0000000 --- a/spring-integration-splunk/src/main/resources/META-INF/spring.schemas +++ /dev/null @@ -1,2 +0,0 @@ -http\://www.springframework.org/schema/integration/splunk/spring-integration-splunk-1.0.xsd=org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.0.xsd -http\://www.springframework.org/schema/integration/splunk/spring-integration-splunk.xsd=org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.0.xsd diff --git a/spring-integration-splunk/src/main/resources/META-INF/spring.tooling b/spring-integration-splunk/src/main/resources/META-INF/spring.tooling deleted file mode 100644 index cf031eb..0000000 --- a/spring-integration-splunk/src/main/resources/META-INF/spring.tooling +++ /dev/null @@ -1,4 +0,0 @@ -# Tooling related information for the integration Splunk namespace -http\://www.springframework.org/schema/integration/splunk@name=integration Splunk Namespace -http\://www.springframework.org/schema/integration/splunk@prefix=int-splunk -http\://www.springframework.org/schema/integration/splunk@icon=org/springframework/integration/splunk/config/xml/spring-integration-splunk.gif diff --git a/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.0.xsd b/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.0.xsd deleted file mode 100644 index 2de6ff4..0000000 --- a/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.0.xsd +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The definition for the Spring Integration Splunk - Inbound Channel Adapter. - - - - - - - - - - - - - - - - - - - - - - - - - - Search mode: normal, blocking, realtime, export, saved - - - - - - - The maximum number of event record to be return - - - - - - - A comma-separated list of the fields to return - - - - - - - Search String following Splunk syntax. - - - - - - - Time modifier for the start of the time window. - - - - - - - Time modifier for the end of the time window. - - - - - - - Time modifier for the start of the time window for the first search. - - - - - - - Saved search. - - - - - - - Owner of the saved search. - - - - - - - App of the saved search. - - - - - - - - - - - Index to write to. - - - - - - - - - - The port corresponding to a tcp Input - - - - - - - - - Defines an outbound Channel Adapter. - - - - - - - - - - Defines a Data Writer for streaming data to an index, or the default index if not specified. - - - - - - - Defines a Data Writer for streaming data to a tcp input port. - - - - - - - Defines a Data Writer to submit data, using the REST interface, to an index, or the default index if not specified. - - - - - - - - - - - Channel from which messages will be output. - When a message is sent to this channel it will - cause the query - to - be executed. - - - - - - - - - - - Specifies the order for invocation when this - endpoint is connected as a - subscriber to a SubscribableChannel. - - - - - - - Splunk event source - - - - - - - Splunk event source type - - - - - - - - Host where the event occurred - - - - - - - - Host regex can be provided so Splunk can dynamically extract the host value from the log event - - - - - - - - - - - Identifies the underlying Spring bean definition, - which is an - instance of either 'EventDrivenConsumer' or - 'PollingConsumer', - depending on whether the component's input - channel is a - 'SubscribableChannel' or 'PollableChannel'. - - - - - - - Flag to indicate that the component should start - automatically - on startup (default true). - - - - - - - - - - Splunk Server Bean Name - - - - - - diff --git a/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.1.xsd b/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.1.xsd deleted file mode 100644 index 4950b83..0000000 --- a/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk-1.1.xsd +++ /dev/null @@ -1,404 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The definition for the Spring Integration Splunk - Inbound Channel Adapter. - - - - - - - - - - - - - - - - - - - - - - - - - - Search mode: normal, blocking, export, saved - - - - - - - The maximum number of event record to be return - - - - - - - A comma-separated list of the fields to return - - - - - - - Search String following Splunk syntax. - - - - - - - Time modifier for the start of the time window. - - - - - - - Time modifier for the end of the time window. - - - - - - - Time modifier for the start of the time window for the first search. - - - - - - - Saved search. - - - - - - - Owner of the saved search. - - - - - - - App of the saved search. - - - - - - - - - - - Index to write to. - - - - - - - - - - The port corresponding to a tcp Input - - - - - - - - - Defines an outbound Channel Adapter. - - - - - - - - - - Defines a Data Writer for streaming data to an index, or the default index if not specified. - - - - - - - Defines a Data Writer for streaming data to a tcp input port. - - - - - - - Defines a Data Writer to submit data, using the REST interface, to an index, or the default index if not specified. - - - - - - - - - - - Channel from which messages will be output. - When a message is sent to this channel it will - cause the query - to - be executed. - - - - - - - - - - - Specifies the order for invocation when this - endpoint is connected as a - subscriber to a SubscribableChannel. - - - - - - - Splunk event source - - - - - - - Splunk event source type - - - - - - - - Host where the event occurred - - - - - - - - Host regex can be provided so Splunk can dynamically extract the host value from the log event - - - - - - - - - - - Identifies the underlying Spring bean definition, - which is an - instance of either 'EventDrivenConsumer' or - 'PollingConsumer', - depending on whether the component's input - channel is a - 'SubscribableChannel' or 'PollableChannel'. - - - - - - - Flag to indicate that the component should start - automatically - on startup (default true). - - - - - - - - - - Splunk Server Bean Name - - - - - - diff --git a/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk.gif b/spring-integration-splunk/src/main/resources/org/springframework/integration/splunk/config/xml/spring-integration-splunk.gif deleted file mode 100644 index 41b369fece0e576ecd920400b221fd33abbaf5c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 572 zcmZ?wbhEHb6krfwc*Xz%|NsBj^POrMHnn5wI!WKA$M#t>l?H4BPzO?b&{cRWSFFSB< z^|`x}P0QyVy|U`SiF40CoO%A?(2mZdyE;$q?mn}(`^J&Ji~DRU^KH0`_S=*f zu`(xWd1~172%niTfzv{QrUeE70}32q)Fc#tvM@3*q%i1!3doJ z$QZroAYKk;o)!}g_c$BZP}??kHkSD;%JZ2d6u9}BT8+&ujM`ePV%-d#6T`zi);F^_ zIR!9@O3I6^oV(z-tdN`(pX{#l&0dZgror~-%^VCYeSN$`0@iCL`334n#7Fs`w{uBO x(B)aWd{Qfm5=#n`xT2uIN}aG328D}QI)&6(d>(9QbkfS;6w=UeP!nLV1^^EL*)#wE diff --git a/spring-integration-splunk/src/reference/docbook/history.xml b/spring-integration-splunk/src/reference/docbook/history.xml deleted file mode 100644 index d8fde4b..0000000 --- a/spring-integration-splunk/src/reference/docbook/history.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - Change History - - - - - - - - - - - - - -
ReleaseDateChanges
0.5.02012.9.28Initial release
-
diff --git a/spring-integration-splunk/src/reference/docbook/images/logo.png b/spring-integration-splunk/src/reference/docbook/images/logo.png deleted file mode 100644 index 8c71c13a0e5606e9d87f75e37fe2874cb44beb51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17393 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 - - - Spring Integration Splunk Adapter - Splunk Adapter ${version} - Spring Integration - ${version} - - - - - - - - - - - - - - Jarred Li - Mark Pollack - Damien Dallimore - - - © SpringSource Inc., 2012 - - - - - - - What's new? - - - If you are interested in the changes and features, that were introduced in - earlier versions, please take a look at chapter: - - - - - - - - - - Integration Adapters - - - Spring Integration adapter for Splunk includes inbound channel adapter to - read data from Splunk and outbound channel adapter to write data into - Splunk. - - - - - - Appendices - - - - diff --git a/spring-integration-splunk/src/reference/docbook/resources.xml b/spring-integration-splunk/src/reference/docbook/resources.xml deleted file mode 100644 index c3ffb46..0000000 --- a/spring-integration-splunk/src/reference/docbook/resources.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - Additional Resources - -
- Spring Integration Home - - The definitive source of information about Spring Integration is the - Spring Integration Home at - http://www.springsource.org. That site serves as a hub of - information and is the best place to find up-to-date announcements about the project as well as links to - articles, blogs, and new sample applications. - -
- -
- Splunk Home - - You can get more information on Splunk from Splunk Home. - - - Splunk SDK API is in Splunk Dev. - -
- -
diff --git a/spring-integration-splunk/src/reference/docbook/splunk.xml b/spring-integration-splunk/src/reference/docbook/splunk.xml deleted file mode 100644 index 10da20e..0000000 --- a/spring-integration-splunk/src/reference/docbook/splunk.xml +++ /dev/null @@ -1,218 +0,0 @@ - - - Splunk Adapter - - The Spring Integration Splunk Adapter provides outbound and inbound channel adapters: - - - - - - Outbound Channel adapter - - - - - - - Inbound Channel Adapter - - - - - - - To use Spring Integration adapter for Splunk, you have to import the XML namespace. For example, you can - have following XML: - - - - -]]> - - - Meanwhile, you have to define your Splunk server information. For example - you can define server as following: - - - - ... - - ... -]]> - -
- Outbound Channel Adapter - - Outbound channel adapter is used to put data into Splunk from - channels in Spring Integration. - There are 3 kinds of method to put data: - - - - Submit (HTTP REST) - Stream - Tcp - - - - The main difference between using the REST inputs vs plain TCP/UDP inputs is really - in the Splunk event handling pipeline. - - - - With REST , you have to declare your event meta data (index, source, source type…) - in the HTTP request at the source. You can't really transform the log event anymore - after you have created and sent it to Splunk.Typically though, for people using REST, - this is fine because they are well formatting their log events before sending them - anyway ie: no further processing/transforming and manipulation is required. - You can however still do dynamic search time transforms/filtering on the - data when later searching over it in Splunk. - - - To use outbound channel adapter with submit, you can define the adapter as following: - - -]]> - - - With TCP inputs , you can manipulate and transform the event data in Splunk before - it gets indexed (using entrys in props.conf/transforms.conf). The event meta data - (index, source, source type…) gets declared on the Splunk side when you establish - the TCP/UDP input and can also be dynamically created, so essentially you have - a lot more control over the indexing of the event data.This is generally more - important when you don't control the format of the data at the source and it needs - manipulating/filtering ie: network devices syslogging etc… - - - - To use outbound channel adapter with tcp, you can define the adapter as following: - - -]]> - - - To use outbound channel adapter with stream, you can define the adapter as following: - - - -]]> - -
- -
- Inbound Channel Adapter - - Inbound channel adapter is used to get data out of Splunk and put - into Spring Integration's channel. - There are 5 ways to get data out of Splunk: - - - - Blocking - Non blocking - Saved search - Realtime - Export - - - - For more information on the difference, please refer - Splunk SDK - - - - To use bloking inbound channel adapter, you can define the adapter as following: - - - -]]> - - - To use non blocking inbound channel adapter, you can define the adapter as following: - - - -]]> - - - To use saved search inbound channel adapter, you can define the adapter as following: - - - -]]> - - - To use realtime search inbound channel adapter, you can define the adapter as following: - - - -]]> - - To use export inbound channel adapter, you can define the adapter as following: - - - -]]> - - - As Splunk support range search, you can specify the search rage by using - "latestTime", "earliestTime", "initEarliestTime". - - - "initEarliestTime" is the value for "earliestTime" when the application first start. - If you specify "earliestTime" and "latestTime", the poller will only search data - in that range. Otherwise, the range will move forward as time goes. That means, the - "latestTime" is equal to the time where the polling trigger, the "earliestTime" is - equal to the time where the last polling is run. - - - You can get more information on the rage search from - - Splunk. - -
-
diff --git a/spring-integration-splunk/src/reference/docbook/whats-new.xml b/spring-integration-splunk/src/reference/docbook/whats-new.xml deleted file mode 100644 index cd9d2cd..0000000 --- a/spring-integration-splunk/src/reference/docbook/whats-new.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - What's new? - - The Spring Integration adapter for Splunk includes two adapters: - - - - Inbound Channel Adapter to search data from Splunk. - - - Outbound Channel Adapter to push event data into Splunk. - - - diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests.java deleted file mode 100644 index c3f7844..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.integration.endpoint.SourcePollingChannelAdapter; -import org.springframework.integration.splunk.support.SearchMode; -import org.springframework.integration.splunk.support.SplunkDataReader; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -/** - * @author Jarred Li - * @since 1.0 - * - */ - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class SplunkInboundChannelAdapterParserSavedSearchTests { - - @Autowired - private ApplicationContext appContext; - - /** - * Test method for {@link org.springframework.integration.splunk.config.xml.SplunkInboundChannelAdapterParser#parseSource(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)}. - */ - @Test - public void testParseSourceElementParserContext() { - SourcePollingChannelAdapter adapter = appContext.getBean("splunkInboundChannelAdapter", - SourcePollingChannelAdapter.class); - assertNotNull(adapter); - SplunkDataReader reader = appContext.getBean("splunkInboundChannelAdapter.splunkExecutor.reader", - SplunkDataReader.class); - assertNotNull(reader); - - SearchMode mode = SearchMode.SAVEDSEARCH; - assertEquals(mode, reader.getMode()); - - String savedSearch = "savedSearch"; - assertEquals(savedSearch, reader.getSavedSearch()); - - String owner = "admin"; - assertEquals(owner, reader.getOwner()); - - String app = "search"; - assertEquals(app, reader.getApp()); - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests.java deleted file mode 100644 index f10daf3..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import org.junit.Assert; -import org.junit.Test; -import org.junit.runner.RunWith; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.integration.endpoint.SourcePollingChannelAdapter; -import org.springframework.integration.splunk.support.SearchMode; -import org.springframework.integration.splunk.support.SplunkDataReader; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -/** - * @author Jarred Li - * @since 1.0 - * - */ - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class SplunkInboundChannelAdapterParserTests { - - @Autowired - private ApplicationContext appContext; - - /** - * Test method for {@link org.springframework.integration.splunk.config.xml.SplunkInboundChannelAdapterParser#parseSource(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)}. - */ - @Test - //@Ignore - public void testParseSourceElementParserContext() { - SourcePollingChannelAdapter adapter = appContext.getBean("splunkInboundChannelAdapter", - SourcePollingChannelAdapter.class); - Assert.assertNotNull(adapter); - Assert.assertFalse(adapter.isAutoStartup()); - - SplunkDataReader reader = appContext.getBean("splunkInboundChannelAdapter.splunkExecutor.reader", - SplunkDataReader.class); - Assert.assertNotNull(reader); - - String searchString = "search spring:example"; - Assert.assertEquals(searchString, reader.getSearch()); - - SearchMode mode = SearchMode.BLOCKING; - Assert.assertEquals(mode, reader.getMode()); - - String earliestTime = "-1d"; - Assert.assertEquals(earliestTime, reader.getEarliestTime()); - - String latestTime = "now"; - Assert.assertEquals(latestTime, reader.getLatestTime()); - - String initEarliestTime = "-1d"; - Assert.assertEquals(initEarliestTime, reader.getInitEarliestTime()); - - String fieldList = "field1, field2"; - Assert.assertEquals(fieldList, reader.getFieldList()); - - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests.java deleted file mode 100644 index 9e10243..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright 2011-2014 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import static org.junit.Assert.*; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.integration.splunk.support.AbstractSplunkDataWriter; -import org.springframework.integration.splunk.support.SplunkIndexWriter; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -/** - * @author Jarred Li - * @author Artem Bilan - * @since 1.0 - * - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class SplunkOutboundChannelAdapterParserStreamTests { - - @Autowired - private ApplicationContext appContext; - - @Test - public void testParseConsumerElementParserContext() { - Object adapter = appContext.getBean("splunkOutboundChannelAdapter"); - assertNotNull(adapter); - - AbstractSplunkDataWriter writer = appContext.getBean("splunkOutboundChannelAdapter.splunkExecutor.writer", - AbstractSplunkDataWriter.class); - assertNotNull(writer); - assertTrue(writer instanceof SplunkIndexWriter); - assertEquals("foo", ((SplunkIndexWriter) writer).getIndex()); - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests.java deleted file mode 100644 index b31fba0..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import static org.junit.Assert.*; - -import org.junit.Assert; -import org.junit.Test; -import org.junit.runner.RunWith; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.integration.splunk.support.AbstractSplunkDataWriter; -import org.springframework.integration.splunk.support.SplunkSubmitWriter; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -/** - * @author Jarred Li - * @since 1.0 - * - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class SplunkOutboundChannelAdapterParserTests { - - @Autowired - private ApplicationContext appContext; - - /** - * Test method for {@link org.springframework.integration.splunk.config.xml.SplunkOutboundChannelAdapterParser#parseConsumer(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)}. - */ - @Test - public void testParseConsumerElementParserContext() { - Object adapter = appContext.getBean("splunkOutboundChannelAdapter"); - Assert.assertNotNull(adapter); - - AbstractSplunkDataWriter writer = appContext.getBean("splunkOutboundChannelAdapter.splunkExecutor.writer", - AbstractSplunkDataWriter.class); - assertNotNull(writer); - - assertTrue(writer instanceof SplunkSubmitWriter); - assertEquals(false,writer.isAutoStartup()); - assertEquals(false,writer.isRunning()); - - String sourceType = "spring-integration"; - assertEquals(sourceType, writer.getArgs().get("sourcetype")); - - String source = "example5"; - assertEquals(source, writer.getArgs().get("source")); - - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkServerParserTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkServerParserTests.java deleted file mode 100644 index 79b0a5a..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/config/xml/SplunkServerParserTests.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.config.xml; - -import org.junit.Assert; -import org.junit.Test; -import org.junit.runner.RunWith; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.integration.splunk.support.SplunkServer; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -/** - * @author Jarred Li - * @since 1.0 - * - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class SplunkServerParserTests { - - @Autowired - private ApplicationContext appContext; - - /** - * Test method for {@link org.springframework.integration.splunk.config.xml.SplunkServerParser#doParse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext, org.springframework.beans.factory.support.BeanDefinitionBuilder)}. - */ - @Test - public void testDoParseElementParserContextBeanDefinitionBuilder() { - SplunkServer server = appContext.getBean("splunkServer", SplunkServer.class); - - Assert.assertEquals("test.splunk.server", server.getHost()); - Assert.assertEquals(8089, server.getPort()); - Assert.assertEquals("admin", server.getUsername()); - Assert.assertEquals("password", server.getPassword()); - Assert.assertEquals("https", server.getScheme()); - Assert.assertEquals("admin", server.getOwner()); - Assert.assertEquals("search", server.getApp()); - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/event/SplunkEventTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/event/SplunkEventTests.java deleted file mode 100644 index bb45fec..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/event/SplunkEventTests.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright 2002-2013 the original author or authors. - * - * 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 org.springframework.integration.splunk.event; - -import static org.junit.Assert.assertEquals; - -import java.util.HashMap; -import java.util.Map; - -import org.junit.Test; - -/** - * @author David Turanski - * - */ -public class SplunkEventTests { - @Test - public void testGetEventData() { - Map data = new HashMap(); - data.put("foo", "foo"); - data.put("bar", null); - SplunkEvent event = new SplunkEvent(data); - Map eventData = event.getEventData(); - assertEquals(data.size(),eventData.size()); - for (String key: eventData.keySet()) { - assertEquals(data.get(key),eventData.get(key)); - } - } - public void testGetEventDataEmpty() { - SplunkEvent event = new SplunkEvent( ); - Map eventData = event.getEventData(); - assertEquals(0,eventData.size()); - } - - @Test(expected=RuntimeException.class) - public void testKeyCannotBeNull() { - SplunkEvent event = new SplunkEvent(); - event.addPair(null, "foo"); - } - - @Test - public void testCopyConstructor() { - Map data = new HashMap(); - data.put("foo", "foo"); - data.put("bar", "bar"); - SplunkEvent event = new SplunkEvent(data); - SplunkEvent event2 = new SplunkEvent(event); - assertEquals(event.quoteValues, event2.quoteValues); - assertEquals(event.useInternalDate,event2.useInternalDate); - Map eventData = event.getEventData(); - Map event2Data = event2.getEventData(); - - assertEquals(eventData.size(),event2Data.size()); - for (String key: eventData.keySet()) { - assertEquals(eventData.get(key),event2Data.get(key)); - } - } -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapterTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapterTests.java deleted file mode 100644 index 9b6ecfa..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/inbound/SplunkPollingChannelAdapterTests.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.inbound; - -import static org.mockito.Mockito.*; - -import java.util.ArrayList; -import java.util.List; - -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; - -import org.springframework.integration.splunk.event.SplunkEvent; -import org.springframework.integration.splunk.support.SplunkExecutor; - -/** - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkPollingChannelAdapterTests { - - private SplunkPollingChannelAdapter inboundAdapter; - - private SplunkExecutor executor; - - @Before - public void init() { - executor = mock(SplunkExecutor.class); - inboundAdapter = new SplunkPollingChannelAdapter(executor); - } - - /** - * Test method for {@link org.springframework.integration.splunk.inbound.SplunkPollingChannelAdapter#receive()}. - */ - @Test - public void testReceive() { - List data = new ArrayList(); - SplunkEvent sd = new SplunkEvent("spring", "spring:example"); - sd.setCommonDesc("description"); - data.add(sd); - when(executor.poll()).thenReturn(data); - - List received = inboundAdapter.receive().getPayload(); - Assert.assertEquals(1, received.size()); - } - - /** - * Test method for {@link org.springframework.integration.splunk.inbound.SplunkPollingChannelAdapter#getComponentType()}. - */ - @Test - public void testGetComponentType() { - Assert.assertEquals("splunk:inbound-channel-adapter", inboundAdapter.getComponentType()); - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapterTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapterTests.java deleted file mode 100644 index cf4fb5b..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/outbound/SplunkOutboundChannelAdapterTests.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.outbound; - -import static org.mockito.Mockito.*; - -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; - -import org.springframework.integration.splunk.support.SplunkExecutor; -import org.springframework.messaging.Message; - -/** - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkOutboundChannelAdapterTests { - - private SplunkOutboundChannelAdapter outboundAdapter; - - private SplunkExecutor executor; - - @Before - public void init() { - executor = mock(SplunkExecutor.class); - outboundAdapter = new SplunkOutboundChannelAdapter(executor); - } - - /** - * Test method for {@link org.springframework.integration.splunk.outbound.SplunkOutboundChannelAdapter#handleRequestMessage(org.springframework.integration.Message)}. - */ - @Test - public void testHandleRequestMessage() { - Message message = null; - when(executor.write(message)).thenReturn(null); - - Object ret = outboundAdapter.handleRequestMessage(message); - Assert.assertNull(ret); - } - - /** - * Test method for {@link org.springframework.integration.splunk.outbound.SplunkOutboundChannelAdapter#setProducesReply(boolean)}. - */ - @Test - public void testSetProducesReply() { - outboundAdapter.setProducesReply(false); - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataReaderTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataReaderTests.java deleted file mode 100644 index 666f9e3..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataReaderTests.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import static org.mockito.Mockito.*; - -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.util.List; -import java.util.Map; - -import com.splunk.Job; -import com.splunk.JobCollection; -import com.splunk.Service; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Ignore; -import org.junit.Test; - -import org.springframework.core.io.ClassPathResource; -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.integration.splunk.event.SplunkEvent; - -/** - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkDataReaderTests { - - private SplunkDataReader reader; - - @Before - public void before() { - ServiceFactory serviceFactory =serviceFactory(); - reader = new SplunkDataReader(serviceFactory); - } - - /** - * Test method for {@link org.springframework.integration.splunk.support.SplunkDataReader#search()}. - * @throws Exception - */ - @Test - public void testBlockingSearch() throws Exception { - reader.setMode(SearchMode.BLOCKING); - reader.setSearch("search spring:example"); - List data = reader.read(); - Assert.assertNotNull(data); - Assert.assertEquals(5, data.size()); - } - - @Test - public void testNonBlockingSearch() throws Exception { - reader.setMode(SearchMode.NORMAL); - reader.setSearch("search spring:example"); - List data = reader.read(); - Assert.assertNotNull(data); - Assert.assertEquals(5, data.size()); - } - - - @Ignore - @Test - public void testRealtimeSearch() throws Exception { - reader.setMode(SearchMode.REALTIME); - reader.setSearch("search spring:example"); - List data = reader.read(); - Assert.assertNotNull(data); - Assert.assertEquals(5, data.size()); - } - - private ServiceFactory serviceFactory() { - InputStream is = null; - - try { - is = new ClassPathResource("splunk-data.xml").getInputStream(); - } catch (FileNotFoundException e) { - Assert.fail("can not read splunk data file"); - } catch (IOException e) { - Assert.fail("can not read splunk data file"); - } - - Service service = mock(Service.class); - service.setToken("token"); - JobCollection jobCollection = mock(JobCollection.class); - Job blockingJob = mock(Job.class); - when(blockingJob.isDone()).thenReturn(true); - when(blockingJob.getResultCount()).thenReturn(5); - when(blockingJob.getResults(any(Map.class))).thenReturn(is); - when(jobCollection.create(any(String.class), any(Map.class))).thenReturn(blockingJob); - when(service.getJobs()).thenReturn(jobCollection); - - ServiceFactory serviceFactory = mock(ServiceFactory.class); - when(serviceFactory.getService()).thenReturn(service); - return serviceFactory; - } -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataWriterTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataWriterTests.java deleted file mode 100644 index 0e6e63f..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkDataWriterTests.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import static org.mockito.Matchers.eq; -import static org.mockito.Matchers.matches; -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; - -import org.junit.Before; -import org.junit.Test; -import org.springframework.integration.splunk.core.ServiceFactory; -import org.springframework.integration.splunk.event.SplunkEvent; - -import com.splunk.Args; -import com.splunk.Receiver; -import com.splunk.Service; - -/** - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkDataWriterTests { - - private AbstractSplunkDataWriter writer; - - private static Receiver receiver = mock(Receiver.class); - - private Args args; - - @Before - public void before() throws Exception { - args = new Args(); - writer = new SplunkSubmitWriter(serviceFactory(), args); - writer.start(); - } - - /** - * Test method for {@link org.springframework.integration.splunk.support.AbstractSplunkDataWriter#write(org.springframework.integration.splunk.event.SplunkEvent)}. - * @throws Exception - */ - @Test - public void testWrite() throws Exception { - - SplunkEvent sd = new SplunkEvent("spring", "spring:example"); - sd.setCommonDesc("description"); - writer.write(sd); - - verify(receiver).submit(eq(args), matches(".*spring:example.*\n")); - - writer.stop(); - } - - private ServiceFactory serviceFactory() throws Exception { - ServiceFactory serviceFactory = mock(ServiceFactory.class); - - Service service = mock(Service.class); - service.setToken("token"); - when(service.getReceiver()).thenReturn(receiver); - when(serviceFactory.getService()).thenReturn(service); - return serviceFactory; - } - -} diff --git a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkExecutorTests.java b/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkExecutorTests.java deleted file mode 100644 index 3434b2f..0000000 --- a/spring-integration-splunk/src/test/java/org/springframework/integration/splunk/support/SplunkExecutorTests.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * 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 org.springframework.integration.splunk.support; - -import static org.mockito.Mockito.*; - -import java.util.ArrayList; -import java.util.List; - -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; - -import org.springframework.integration.splunk.core.DataReader; -import org.springframework.integration.splunk.core.DataWriter; -import org.springframework.integration.splunk.event.SplunkEvent; -import org.springframework.integration.support.MessageBuilder; -import org.springframework.messaging.Message; - -/** - * @author Jarred Li - * @since 1.0 - * - */ -public class SplunkExecutorTests { - - private SplunkExecutor executor; - - private DataReader reader = mock(DataReader.class); - - private DataWriter writer = mock(DataWriter.class); - - @Before - public void before() { - executor = new SplunkExecutor(); - executor.setReader(reader); - executor.setWriter(writer); - } - - - /** - * Test method for {@link org.springframework.integration.splunk.support.SplunkExecutor#handleMessage(org.springframework.integration.Message)}. - * @throws Exception - */ - @Test - public void testHandleMessage() throws Exception { - SplunkEvent sd = new SplunkEvent("spring", "spring:example"); - sd.setCommonDesc("description"); - Message message = MessageBuilder.withPayload(sd).build(); - executor.handleMessage(message); - verify(writer).write(sd); - } - - /** - * Test method for {@link org.springframework.integration.splunk.support.SplunkExecutor#poll()}. - * @throws Exception - */ - @Test - public void testPoll() throws Exception { - List data = new ArrayList(); - SplunkEvent sd = new SplunkEvent("spring", "spring:example"); - sd.setCommonDesc("description"); - data.add(sd); - - sd = new SplunkEvent("spring", "spring:example"); - sd.setCommonDesc("description"); - data.add(sd); - when(reader.read()).thenReturn(data); - - List result = executor.poll(); - Assert.assertEquals(2, result.size()); - - } - -} diff --git a/spring-integration-splunk/src/test/resources/log4j.properties b/spring-integration-splunk/src/test/resources/log4j.properties deleted file mode 100644 index 8051ac4..0000000 --- a/spring-integration-splunk/src/test/resources/log4j.properties +++ /dev/null @@ -1,7 +0,0 @@ -log4j.rootCategory=INFO, stdout - -log4j.appender.stdout=org.apache.log4j.ConsoleAppender -log4j.appender.stdout.layout=org.apache.log4j.PatternLayout -log4j.appender.stdout.layout.ConversionPattern=%d{HH:mm:ss.SSS} %-5p [%t][%c] %m%n - -log4j.category.org.springframework.integration.splunk=DEBUG diff --git a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/SplunkCommon-context.xml b/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/SplunkCommon-context.xml deleted file mode 100644 index 5c6b358..0000000 --- a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/SplunkCommon-context.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - diff --git a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserCommon-context.xml b/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserCommon-context.xml deleted file mode 100644 index 7bf4b88..0000000 --- a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserCommon-context.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - diff --git a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests-context.xml b/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests-context.xml deleted file mode 100644 index df88cb2..0000000 --- a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserSavedSearchTests-context.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - diff --git a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests-context.xml b/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests-context.xml deleted file mode 100644 index 65c9f7f..0000000 --- a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkInboundChannelAdapterParserTests-context.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - diff --git a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests-context.xml b/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests-context.xml deleted file mode 100644 index ea38767..0000000 --- a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserStreamTests-context.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - diff --git a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests-context.xml b/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests-context.xml deleted file mode 100644 index aaa2b16..0000000 --- a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkOutboundChannelAdapterParserTests-context.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - diff --git a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkServerParserTests-context.xml b/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkServerParserTests-context.xml deleted file mode 100644 index 0860ee1..0000000 --- a/spring-integration-splunk/src/test/resources/org/springframework/integration/splunk/config/xml/SplunkServerParserTests-context.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - diff --git a/spring-integration-splunk/src/test/resources/splunk-data.xml b/spring-integration-splunk/src/test/resources/splunk-data.xml deleted file mode 100644 index c492d7e..0000000 --- a/spring-integration-splunk/src/test/resources/splunk-data.xml +++ /dev/null @@ -1,236 +0,0 @@ - - - - -_cd -_indextime -_raw -_serial -_si -_sourcetype -_subsecond -_time -host -index -linecount -source -sourcetype -splunk_server - - - - - 9:30 - - - 1348478076 - - 2012-09-24 17:19:43:792+0800 name="spring" event_id="spring:example" desc="description" - - 0 - - - jarred-virtual-machine - main - - - spring-integration - - - .792 - - - 2012-09-24T17:19:43.792+08:00 - - - test.host - - - main - - - 1 - - - example5 - - - spring-integration - - - jarred-virtual-machine - - - - - 9:26 - - - 1348478076 - - 2012-09-24 17:19:43:756+0800 name="spring" event_id="spring:example" desc="description" - - 1 - - - jarred-virtual-machine - main - - - spring-integration - - - .756 - - - 2012-09-24T17:19:43.756+08:00 - - - test.host - - - main - - - 1 - - - example5 - - - spring-integration - - - jarred-virtual-machine - - - - - 9:21 - - - 1348464748 - - 2012-09-24 13:37:34:860+0800 name="spring" event_id="spring:example" desc="description" - - 2 - - - jarred-virtual-machine - main - - - spring-integration - - - .860 - - - 2012-09-24T13:37:34.860+08:00 - - - test.host - - - main - - - 1 - - - example5 - - - spring-integration - - - jarred-virtual-machine - - - - - 9:17 - - - 1348464748 - - 2012-09-24 13:37:34:789+0800 name="spring" event_id="spring:example" desc="description" - - 3 - - - jarred-virtual-machine - main - - - spring-integration - - - .789 - - - 2012-09-24T13:37:34.789+08:00 - - - test.host - - - main - - - 1 - - - example5 - - - spring-integration - - - jarred-virtual-machine - - - - - 9:12 - - - 1348464606 - - 2012-09-24 13:35:13:621+0800 name="spring" event_id="spring:example" desc="description" - - 4 - - - jarred-virtual-machine - main - - - spring-integration - - - .621 - - - 2012-09-24T13:35:13.621+08:00 - - - test.host - - - main - - - 1 - - - example5 - - - spring-integration - - - jarred-virtual-machine - - - \ No newline at end of file