buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:2.1.6.RELEASE")
    }
}

apply plugin: 'java'
sourceCompatibility=1.8
targetCompatibility=1.8

apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

repositories {
    mavenCentral()
}
bootRun {
    sourceResources sourceSets.main
}
dependencies {
    compile 'org.springframework.boot:spring-boot-starter-web'
    compile 'org.springframework.boot:spring-boot-starter-websocket'

    compile 'org.springframework.boot:spring-boot-devtools'
    compile 'org.springframework.boot:spring-boot-starter-security'
    compile 'org.webjars:webjars-locator-core'
    compile 'org.webjars:sockjs-client:1.0.2'
    compile 'org.webjars:stomp-websocket:2.3.3'
    compile 'org.webjars:bootstrap:3.3.7'
    compile 'org.webjars:jquery:3.1.0'

    // Test
    testCompile 'org.springframework.boot:spring-boot-starter-test'

    compile 'io.jsonwebtoken:jjwt:0.9.1'

    compile 'com.google.code.gson:gson'

    // https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-engine
    testCompile group: 'org.junit.jupiter', name: 'junit-jupiter', version: '5.4.0'

    // https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-engine
    testCompile group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.4.0'

    // https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api
    testCompile group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.4.0'

    // https://mvnrepository.com/artifact/org.junit.platform/junit-platform-launcher
    testCompile group: 'org.junit.platform', name: 'junit-platform-launcher', version: '1.4.0'

    // https://mvnrepository.com/artifact/org.junit.platform/junit-platform-commons
    testCompile group: 'org.junit.platform', name: 'junit-platform-commons', version: '1.4.0'

    compile 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    compile 'org.springframework.boot:spring-boot-starter-hateoas'
    // https://mvnrepository.com/artifact/org.modelmapper/modelmapper
    compile group: 'org.modelmapper', name: 'modelmapper', version: '0.7.5'

    // JPA Data (We are going to use Repositories, Entities, Hibernate)
    compile 'org.springframework.boot:spring-boot-starter-data-jpa'

    // Use MySQL Connector-J
    compile 'mysql:mysql-connector-java'

    // Email sender
    compile 'org.springframework.boot:spring-boot-starter-mail'

    // Security https://mvnrepository.com/artifact/org.springframework.security/spring-security-crypto
    compile group: 'org.springframework.security', name: 'spring-security-crypto'

    // https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-thymeleaf
    compile group: 'org.springframework.boot', name: 'spring-boot-starter-thymeleaf'
    testCompile 'org.springframework.boot:spring-boot-starter-test'

    // https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-quartz
    compile group: 'org.springframework.boot', name: 'spring-boot-starter-quartz'
    

}