/*
 * 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.
 */

group 'org.apache.fineract.cn.customer'
version '0.1.0-BUILD-SNAPSHOT'

ext.versions = [
        frameworkapi : '0.1.0-BUILD-SNAPSHOT',
        frameworklang : '0.1.0-BUILD-SNAPSHOT',
        frameworkasync : '0.1.0-BUILD-SNAPSHOT',
        frameworkcassandra : '0.1.0-BUILD-SNAPSHOT',
        frameworkmariadb : '0.1.0-BUILD-SNAPSHOT',
        frameworkcommand : '0.1.0-BUILD-SNAPSHOT',
        frameworktest: '0.1.0-BUILD-SNAPSHOT',
        frameworkanubis: '0.1.0-BUILD-SNAPSHOT',
        validator  : '5.3.0.Final'
]

apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'maven-publish'
apply plugin: 'io.spring.dependency-management'

tasks.withType(JavaCompile) {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}

repositories {
    jcenter()
    mavenLocal()
}

dependencyManagement {
    imports {
        mavenBom 'io.spring.platform:platform-bom:Athens-RELEASE'
        mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Camden.SR1'
    }
}

// override certain dependency provided by Spring platform using newer releases
ext['cassandra.version'] = '3.6'
ext['cassandra-driver.version'] = '3.1.2'
ext['activemq.version'] = '5.13.2'
ext['spring-data-releasetrain.version'] = 'Gosling-SR2A'

dependencies {
    compile(
            [group: 'com.google.code.findbugs', name: 'jsr305']
    )

    testCompile(
            [group: 'org.springframework.boot', name: 'spring-boot-starter-test']
    )
}

jar {
    from sourceSets.main.allSource
    duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}

license {
    header rootProject.file('../HEADER')
    strictCheck true
    mapping {
        java = 'SLASHSTAR_STYLE'
        xml = 'XML_STYLE'
        yml = 'SCRIPT_STYLE'
        yaml = 'SCRIPT_STYLE'
        uxf = 'XML_STYLE'
    }
}

rat {
    // List of exclude directives, defaults to ['**/.gradle/**']
    excludes = [
            "**/.idea/**",
            "**/.gradle/**",
            "**/gradle/**",
            "**/build/**",
            "gradlew",
            "gradlew.bat",
            "README.md"
    ]
}