Additional changes include: * Re-wrote the monolithic Controller into separate controller classes that have a more narrow focus. * Implemented common functionality as a `HandlerMethodArgumentResolver` rather than as a helper method in a controller class. * Re-implemented JSONP functionality as an HttpMessageConverter rather than inline within a controller class. * Updated to Jackson 2 for all JSON handling. * By relying on spring-data-commons, spring-data-rest now handles all supported Repository types: JPA, MongoDB, and GemFire. Added support for MongoDB and GemFire repositories by relying on spring-data-commons to provide the metadata rather than maintaining internal metadata information that is store-specific. Replaced Spock spec tests with JMock unit and integration tests. Started integrating Jetty 8 into the testing so MVC testing can be done against a live server.
65 lines
1.9 KiB
Groovy
65 lines
1.9 KiB
Groovy
apply plugin: 'maven'
|
|
|
|
ext.optionalDeps = []
|
|
ext.providedDeps = []
|
|
|
|
ext.optional = { optionalDeps << it }
|
|
ext.provided = { providedDeps << it }
|
|
|
|
install {
|
|
repositories.mavenInstaller {
|
|
customizePom(pom, project)
|
|
}
|
|
}
|
|
|
|
def customizePom(pom, gradleProject) {
|
|
pom.whenConfigured { generatedPom ->
|
|
// respect 'optional' and 'provided' dependencies
|
|
gradleProject.optionalDeps.each { dep ->
|
|
generatedPom.dependencies.find { it.artifactId == dep.name }?.optional = true
|
|
}
|
|
gradleProject.providedDeps.each { dep ->
|
|
generatedPom.dependencies.find { it.artifactId == dep.name }?.scope = 'provided'
|
|
}
|
|
|
|
// eliminate test-scoped dependencies (no need in maven central poms)
|
|
generatedPom.dependencies.removeAll { dep ->
|
|
dep.scope == 'test'
|
|
}
|
|
|
|
// add all items necessary for maven central publication
|
|
generatedPom.project {
|
|
name = "Spring Data REST"
|
|
description = "Directly export Spring Data-managed PersistentEntities to the web."
|
|
url = 'http://github.com/SpringSource/spring-data-rest'
|
|
organization {
|
|
name = 'SpringSource'
|
|
url = 'http://www.springsource.org/spring-data/rest'
|
|
}
|
|
licenses {
|
|
license {
|
|
name 'The Apache Software License, Version 2.0'
|
|
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
|
|
distribution 'repo'
|
|
}
|
|
}
|
|
scm {
|
|
url = 'http://github.com/SpringSource/spring-data-rest'
|
|
connection = 'scm:git:git://github.com/SpringSource/spring-data-rest'
|
|
developerConnection = 'scm:git:git://github.com/SpringSource/spring-data-rest'
|
|
}
|
|
developers {
|
|
developer {
|
|
id = 'jbrisbin'
|
|
name = 'Jon Brisbin'
|
|
email = 'jbrisbin@vmware.com'
|
|
}
|
|
developer {
|
|
id = 'ogierke'
|
|
name = 'Oliver Gierke'
|
|
email = 'ogierke@vmware.com'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |