George Mount 230ecdbf05 Use abstract base class instead of interfaces for Binding objects.
Bug 19627511
Bug 19709604

Changed generated classes to end with "Binding" instead of "Binder"
to avoid confusion with Android Binders.

Removed DataBinder class and moved the important aspects of its
contents to ViewDataBinding.

Improved mapping of Views in included layouts. Avoid traversing
included layouts while looking for bound expressions.

Change-Id: I1f28093b0792d5428d07192f1fc458a5b4b788b2
2015-03-17 18:26:54 -07:00

61 lines
1.6 KiB
Groovy

Properties databindingProperties = new Properties()
databindingProperties.load(new FileInputStream("${projectDir}/databinding.properties"))
databindingProperties.mavenRepoDir = "${projectDir}/${databindingProperties.mavenRepoName}"
ext.config = databindingProperties
println "local maven repo is ${ext.config.mavenRepoDir}."
new File(ext.config.mavenRepoDir).mkdir()
subprojects {
apply plugin: 'maven'
group = 'com.android.databinding'
version = config.snapshotVersion
repositories {
mavenCentral()
maven {
url "file://${config.mavenRepoDir}"
}
}
uploadArchives {
repositories {
mavenDeployer {
repository(url: "file://${config.mavenRepoDir}")
}
}
}
}
task deleteRepo(type: Delete) {
delete "${config.mavenRepoDir}"
}
file('integration-tests').listFiles().findAll { it.isDirectory() }.each {
println("${it.getAbsolutePath()}")
def testTask = project.tasks.create "runTestsOf${it.getName().capitalize()}", Exec
testTask.workingDir 'integration-tests/TestApp'
//on linux
testTask.commandLine './gradlew'
testTask.args 'clean', 'connectedCheck', '--info'
testTask.dependsOn subprojects.uploadArchives
}
task runIntegrationTests {
dependsOn tasks.findAll { task -> task.name.startsWith('runTestsOf') }
}
task runAllTests {
dependsOn runIntegrationTests
}
allprojects {
afterEvaluate { project ->
runAllTests.dependsOn project.tasks.findAll {task -> task.name.equals('test')}
}
}
task rebuildRepo() {
dependsOn deleteRepo
dependsOn subprojects.uploadArchives
}