/********************************************************************************
 * 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.0M7'

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
}