/*
 * Copyright (C) 2015 AppTik Project
 *
 * 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.
 */

// NOTE: The only changes that belong in this file are the definitions
// of tool versions (gradle plugin, compile SDK, build tools), so that
// Jus can be built via gradle as a standalone project.
//
// Any other changes to the build config belong in rules.gradle, which
// is used by projects that depend on Jus but define their own
// tools versions across all dependencies to ensure a consistent build.

buildscript {
    repositories {
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.0-beta3'
        classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.3'
    }
}

allprojects {
    group = GROUP
    version = VERSION_NAME
    repositories {
        mavenCentral()
        jcenter()
        maven {
            url 'http://oss.sonatype.org/content/repositories/snapshots'
        }
    }
}

ext {
    minSdkVersion = 15
    compileSdkVersion = 25
    buildToolsVersion = '25.0.2'
    supportDeps = "25.1.0"

    supportAnnotations = 'com.android.support:support-annotations:'+supportDeps
    supportV4 = 'com.android.support:support-v4:'+supportDeps
    supportRecyclerView = 'com.android.support:recyclerview-v7:'+supportDeps
    supportCardView = 'com.android.support:cardview-v7:'+supportDeps
    supportAppCompat = 'com.android.support:appcompat-v7:'+supportDeps
    supportDesign = 'com.android.support:design:'+supportDeps

    supportTestRunner = 'com.android.support.test:runner:0.5'
    supportTestRules = 'com.android.support.test:rules:0.5'
    supportTestEspresso = 'com.android.support.test.espresso:espresso-core:2.2.2'
    supportTestEspressoContrib = 'com.android.support.test.espresso:espresso-contrib:2.2.2'

    assertjCore1 = 'org.assertj:assertj-core:1.7.1'
    assertjCore2 = 'org.assertj:assertj-core:2.6.0'
    assertjCore3 = 'org.assertj:assertj-core:3.6.1'
    mockitoCore = 'org.mockito:mockito-core:2.5.0'
    robolectric = 'org.robolectric:robolectric:3.1.2'

    mockwebserver = 'com.squareup.okhttp:mockwebserver:2.7.5'
    mockwebserver3 = 'com.squareup.okhttp3:mockwebserver:3.5.0'
    okhttp = 'com.squareup.okhttp:okhttp:2.7.5'
    okhttp3 = 'com.squareup.okhttp3:okhttp:3.5.0'
    okio = 'com.squareup.okio:okio:1.11.0'

    apacheHttp = 'org.apache.httpcomponents:httpclient:4.5.2'

    nettyVer = '4.1.6.Final'
    nettyTransport = 'io.netty:netty-transport:'+nettyVer
    nettyHandler = 'io.netty:netty-handler:'+nettyVer
    nettyCodecHttp = 'io.netty:netty-codec-http:'+nettyVer
    nettyCodecHttp2 = 'io.netty:netty-codec-http2:'+nettyVer
    nettyCommon = 'io.netty:netty-common:'+nettyVer

    rxjava = 'io.reactivex:rxjava:1.2.5'

    junit = 'junit:junit:4.12'

    gson = 'com.google.code.gson:gson:2.8.0'
    jacksonDatabind = 'com.fasterxml.jackson.core:jackson-databind:2.8.6'
    wireRuntime = 'com.squareup.wire:wire-runtime:2.2.0'
    simpleXml = 'org.simpleframework:simple-xml:2.7.1'
    protobuf = 'com.google.protobuf:protobuf-java:3.1.0'
    moshi = 'com.squareup.moshi:moshi:1.3.1'
    jjsonCore = 'io.apptik.json:json-core:1.0.4'
    jjsonWrapper = 'io.apptik.json:json-wrapper:1.0.4'

    rxhub = 'io.apptik.rhub:rxjava-v1:0.2.0-alpha1'

    jmhCore = 'org.openjdk.jmh:jmh-core:1.17.3'
    jmhGen = 'org.openjdk.jmh:jmh-generator-annprocess:1.17.3'

}





