/********************************************************************************
 * Copyright (c) 2015-2018 Contributors to the Eclipse Foundation
 *
 * See the NOTICE file(s) distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 ********************************************************************************/


description = 'MDM API - Base Model'
group = 'org.eclipse.mdm'
version = '5.1.0M6-ATFX-SNAPSHOT'

apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'eclipse'

repositories {
    mavenLocal()
    mavenCentral()
}

dependencies {
    // testing
    testCompile 'junit:junit:4.12'
    testCompile 'org.mockito:mockito-core:2.13.0' 
    testCompile 'org.assertj:assertj-core:3.6.2'
}

jar {
	metaInf { from 'NOTICE.txt' }
	metaInf { from 'LICENSE.txt' }
}

task sourcesJar(type: Jar, dependsOn: classes) {
	classifier = 'sources'
	from sourceSets.main.allSource
}

artifacts {
	archives sourcesJar
}