apply plugin: 'com.github.johnrengelman.shadow'
apply plugin: 'application'

displayName = "JsonPath Test Bench"

description = "Web app that compares different JsonPath implementations."

mainClassName = 'com.jayway.jsonpath.web.boot.Main'

task createBuildInfoFile << {
    def buildInfoFile = new File("$buildDir/classes/main/build-info.properties")
    Properties props = new Properties()
    props.setProperty('version', project.version.toString())
    props.setProperty('timestamp', project.buildTimestamp)
    props.store(buildInfoFile.newWriter(), null)
}

jar {
    dependsOn createBuildInfoFile
    baseName 'json-path-web-test'
    manifest {
        attributes 'Implementation-Title': 'json-path-web-test',
                   'Implementation-Version': version,
                   'Main-Class': mainClassName
    }
}


dependencies {
    compile project(':json-path')
    compile 'commons-io:commons-io:2.4'
    compile libs.jacksonDatabind
    compile libs.slf4jApi
    compile 'io.fastjson:boon:0.33'
    compile 'com.nebhale.jsonpath:jsonpath:1.2'
    compile 'io.gatling:jsonpath_2.10:0.6.4'
    compile 'org.eclipse.jetty:jetty-server:9.3.0.M1'
    compile 'org.eclipse.jetty:jetty-webapp:9.3.0.M1'
    compile 'org.glassfish.jersey.containers:jersey-container-servlet:2.20'
    compile('org.glassfish.jersey.media:jersey-media-json-jackson:2.20'){
        exclude module: 'jackson-annotations:com.fasterxml.jackson.core'
        exclude module: 'jackson-core:com.fasterxml.jackson.core'
    }
}