A comprehensive and robust solution for writing batch processing applications in MarkLogic
Java XQuery
Clone or download
Pull request Compare This branch is 27 commits behind marklogic-community:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config/checkstyle
core
file
gradle/wrapper
http
mlJobRepo
rdbms
rdf
samples
shapefiles
test
.gitignore
CONTRIBUTING.md
LICENSE.md
README.md
build.gradle
circle.yml
gradle.properties
gradlew
gradlew.bat
job.properties
settings.gradle

README.md

MarkLogic Spring Batch

The MarkLogic Spring Batch project is an extension of the CORE and INFRASTRUCTURE components of Spring Batch to make it easier to write batch processing programs using MarkLogic.

Start with the project home page to get started.

Prerequisites

  • MarkLogic 8+
  • JDK 1.8+

Installing the Test Environment

Open $PROJECT_ROOT/gradle.properties. Review the mlHost, mlRestPort, mlJobRepoPort properties to confirm there are no conflicts

gradlew mlDeploy

This command will set up your test database and application server.

Running the tests

Review the host/port/user credentials properties for the following property files.

  • ./core/src/test/resources/job.properties
  • ./infrastructure/src/test/resources/job.properties
  • ./rdf/src/test/resources/job.properties
  • ./samples/src/test/resources/job.properties

Run the following command to execute all project tests. All tests should pass.

 gradlew test

Coding Style Tests

This project uses both checkstyle and PMD.

 gradlew check

Deployment

The product of this project are jar files that are published to bintray. The following libraries are created.

Group Artifact
com.marklogic marklogic-spring-batch-core
com.marklogic marklogic-spring-batch-infrastructure
com.marklogic marklogic-spring-batch-test
com.marklogic spring-batch-http
com.marklogic spring-batch-rdbms

The gradle bintray plugin is used to publish to bintray.

 gradlew :core:bintrayUpload
 gradlew :infrastructure:bintrayUpload
 gradlew :test:bintrayUpload
 gradlew :http:bintrayUpload
 gradlew :rdbms:bintrayUpload

How do I use these libraries?

Gradle

dependencies {
    compile 'com.marklogic:marklogic-spring-batch-core:1.4.0'
    testCompile 'com.marklogic:marklogic-spring-batch-test:1.4.0'
}

Maven

<dependencies>
    <dependency>
        <groupId>com.marklogic</groupId>
        <artifactId>marklogic-spring-batch-core</artifactId>
        <version>1.4.2</version>
    </dependency>
</dependencies>

How can I contribute to the project?

Please read CONTRIBUTING.md for details on how to contribute code to this project and the process for submitting pull requests to us.

What license does MarkLogic Spring Batch use?

See the LICENSE.md file for details