import org.apache.geode.gradle.plugins.DependencyConstraints

/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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.
 */

plugins {
  id 'standard-subproject-configuration'
}

evaluationDependsOn(":geode-core")



dependencies {
  api(platform(project(':boms:geode-all-bom')))
  api(project(':extensions:geode-modules-session-internal')) {
    exclude module: 'geode-modules'
  }
  api(project(':geode-core'))
  implementation(project(':geode-common'))

  integrationTestImplementation(project(':extensions:geode-modules'))
  integrationTestImplementation(project(':geode-dunit')) {
    exclude module: 'geode-core'
  }
  integrationTestImplementation(project(':geode-logging'))

  implementation('javax.servlet:javax.servlet-api')
  implementation('org.apache.tomcat:servlet-api:' + DependencyConstraints.get('tomcat6.version'))
  implementation('org.slf4j:slf4j-api')

  integrationTestImplementation('com.mockrunner:mockrunner-servlet') {
    exclude group: 'jboss'
    exclude group: 'xerces'
  }
  integrationTestImplementation('commons-io:commons-io')
  integrationTestImplementation('javax.servlet:javax.servlet-api')
  integrationTestImplementation('junit:junit')
  integrationTestImplementation('org.apache.tomcat:jasper:' + DependencyConstraints.get('tomcat6.version'))
  integrationTestImplementation('org.assertj:assertj-core')
  integrationTestImplementation('org.eclipse.jetty:jetty-http:' + DependencyConstraints.get('jetty.version') + ':tests')
  integrationTestImplementation('org.eclipse.jetty:jetty-server')
  integrationTestImplementation('org.eclipse.jetty:jetty-servlet:' + DependencyConstraints.get('jetty.version') + ':tests')
  integrationTestImplementation('org.eclipse.jetty:jetty-servlet:' + DependencyConstraints.get('jetty.version'))
  integrationTestImplementation('org.eclipse.jetty:jetty-util')
  integrationTestImplementation('org.httpunit:httpunit') {
    exclude group: 'javax.servlet'
    // this version of httpunit contains very outdated xercesImpl
    exclude group: 'xerces'
  }
  integrationTestImplementation('org.slf4j:slf4j-api')

  integrationTestRuntimeOnly('xerces:xercesImpl')
}

jar {
  manifest {
    attributes 'Main-Class': 'org.apache.geode.modules.session.installer.Installer'
  }
  archiveBaseName = 'geode-modules-session'
}

sonarqube {
  skipProject = true
}
