WIP eap
diff --git a/build.gradle b/build.gradle
index 2d8cd69..2f23654 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,6 +1,7 @@
 Properties databindingProperties = new Properties()
 databindingProperties.load(new FileInputStream("${projectDir}/databinding.properties"))
 databindingProperties.mavenRepoDir = "${projectDir}/${databindingProperties.mavenRepoName}"
+databindingProperties.eapOutDir = "${projectDir}/${databindingProperties.eapOutFolderName}"
 databindingProperties.prebuildFolder = "${projectDir}/${databindingProperties.prebuildFolderName}" +
         "/${databindingProperties.releaseVersion}"
 
@@ -39,6 +40,11 @@
     delete "${config.prebuildFolder}"
 }
 
+task deleteEap(type: Delete) {
+    delete "${config.eapOutDir}"
+}
+
+
 def buildExtensionsTask = project.tasks.create "buildExtensionsTask", Exec
 buildExtensionsTask.workingDir file('extensions').getAbsolutePath()
 buildExtensionsTask.commandLine './gradlew'
@@ -94,3 +100,35 @@
     dependsOn buildExtensionsTask
 }
 
+task copySamplesToEap(type : Copy) {
+    mustRunAfter deleteEap
+    from ("$projectDir/samples") {
+        exclude "**/build"
+    }
+    into "${config.eapOutDir}/samples"
+}
+
+
+task copyMavenRepoToEap(type : Copy) {
+    mustRunAfter deleteEap
+    dependsOn rebuildRepo
+    from(config.mavenRepoDir)
+    into "${config.eapOutDir}/${config.mavenRepoName}"
+}
+
+tasks.create(name : 'createEapConfigFile') << {
+    def propsFile = new File("${config.eapOutDir}/databinding.properties")
+    Properties props = new Properties()
+    props.setProperty('snapshotVersion', config.snapshotVersion)
+    props.setProperty('mavenRepoName', config.mavenRepoName)
+    props.store(propsFile.newWriter(), null)
+}
+
+
+task batchEAP() {
+    dependsOn deleteEap
+    dependsOn copyMavenRepoToEap
+    dependsOn copySamplesToEap
+    dependsOn createEapConfigFile
+
+}
\ No newline at end of file
diff --git a/databinding.properties b/databinding.properties
index a0aa8b7..939f269 100644
--- a/databinding.properties
+++ b/databinding.properties
@@ -9,4 +9,5 @@
 prebuildFolderName=prebuilds
 group=com.android.databinding
 testGroup=com.android.databinding.test
+eapOutFolderName=data-binding-eap
 
diff --git a/samples/BindingDemo/app/build.gradle b/samples/BindingDemo/app/build.gradle
index fa54aab..dbbf4e8 100644
--- a/samples/BindingDemo/app/build.gradle
+++ b/samples/BindingDemo/app/build.gradle
@@ -17,8 +17,6 @@
 apply plugin: 'com.android.application'
 apply plugin: 'com.android.databinding'
 
-def generatedSources = "$buildDir/generated/source/br"
-
 android {
     compileSdkVersion 21
     buildToolsVersion "21.1.1"
@@ -45,27 +43,16 @@
     }
 }
 
-android.applicationVariants.all { variant ->
-    variant.javaCompile.doFirst {
-        println "*** compile doFirst ${variant.name}"
-        new File(generatedSources).mkdirs()
-        variant.javaCompile.options.compilerArgs += [
-                '-s', generatedSources
-        ]
-    }
-}
-
 dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
     compile 'com.android.support:appcompat-v7:21.+'
-    compile 'com.android.databinding:library:0.3-SNAPSHOT@aar'
     compile 'com.android.support:recyclerview-v7:21.0.2'
     compile 'com.android.support:gridlayout-v7:21.+'
     compile 'com.android.support:cardview-v7:21.+'
-    compile 'com.android.databinding:baseLibrary:0.3-SNAPSHOT'
-    compile 'com.android.databinding:adapters:0.3-SNAPSHOT'
-    provided 'com.android.databinding:annotationprocessor:0.3-SNAPSHOT'
-    provided fileTree(dir : 'build/databinder/src', include : ['*.java'])
+    compile "com.android.databinding:library:${config.snapshotVersion}"
+    compile "com.android.databinding:baseLibrary:${config.snapshotVersion}"
+    compile "com.android.databinding:adapters:${config.snapshotVersion}"
+    provided "com.android.databinding:annotationprocessor:${config.snapshotVersion}"
 
     testCompile 'junit:junit:4.12'
     testCompile 'org.mockito:mockito-core:1.9.5'
diff --git a/samples/BindingDemo/app/src/main/java/com/android/example/bindingdemo/vo/Users.java b/samples/BindingDemo/app/src/main/java/com/android/example/bindingdemo/vo/Users.java
index d954888..72e44d0 100644
--- a/samples/BindingDemo/app/src/main/java/com/android/example/bindingdemo/vo/Users.java
+++ b/samples/BindingDemo/app/src/main/java/com/android/example/bindingdemo/vo/Users.java
@@ -3,6 +3,25 @@
 import com.android.example.bindingdemo.R;
 
 public class Users {
+    public static final int[] ICONS = {
+            R.drawable.emo_im_angel,
+            R.drawable.emo_im_cool,
+            R.drawable.emo_im_crying,
+            R.drawable.emo_im_embarrassed,
+            R.drawable.emo_im_foot_in_mouth,
+            R.drawable.emo_im_happy,
+            R.drawable.emo_im_kissing,
+            R.drawable.emo_im_laughing,
+            R.drawable.emo_im_lips_are_sealed,
+            R.drawable.emo_im_money_mouth,
+            R.drawable.emo_im_sad,
+            R.drawable.emo_im_surprised,
+            R.drawable.emo_im_tongue_sticking_out,
+            R.drawable.emo_im_undecided,
+            R.drawable.emo_im_winking,
+            R.drawable.emo_im_wtf,
+            R.drawable.emo_im_yelling,
+    };
     public static final User[] robots = new User[]{
             new User("romain", "guy", R.drawable.romain, User.ROBOT),
     };
diff --git a/samples/BindingDemo/app/src/main/res/drawable/adam.png b/samples/BindingDemo/app/src/main/res/drawable/adam.png
deleted file mode 100644
index 583a065..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/adam.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/alan.png b/samples/BindingDemo/app/src/main/res/drawable/alan.png
deleted file mode 100644
index c0c9161..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/alan.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/chet.png b/samples/BindingDemo/app/src/main/res/drawable/chet.png
deleted file mode 100644
index 06cc751..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/chet.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/chris.png b/samples/BindingDemo/app/src/main/res/drawable/chris.png
deleted file mode 100644
index 11686c5..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/chris.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/george.png b/samples/BindingDemo/app/src/main/res/drawable/george.png
deleted file mode 100644
index fe744e0..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/george.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/john.png b/samples/BindingDemo/app/src/main/res/drawable/john.png
deleted file mode 100644
index 7bd0108..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/john.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/rob.png b/samples/BindingDemo/app/src/main/res/drawable/rob.png
deleted file mode 100644
index fd41cb0..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/rob.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/romain.png b/samples/BindingDemo/app/src/main/res/drawable/romain.png
deleted file mode 100644
index 7a9af15..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/romain.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/tenghui.png b/samples/BindingDemo/app/src/main/res/drawable/tenghui.png
deleted file mode 100644
index 13442b0..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/tenghui.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/app/src/main/res/drawable/yigit.png b/samples/BindingDemo/app/src/main/res/drawable/yigit.png
deleted file mode 100644
index 57e9baf..0000000
--- a/samples/BindingDemo/app/src/main/res/drawable/yigit.png
+++ /dev/null
Binary files differ
diff --git a/samples/BindingDemo/build.gradle b/samples/BindingDemo/build.gradle
index 18f0f56..14766a7 100644
--- a/samples/BindingDemo/build.gradle
+++ b/samples/BindingDemo/build.gradle
@@ -16,6 +16,11 @@
 
 // Top-level build file where you can add configuration options common to all sub-projects/modules.
 buildscript {
+    def Properties dataBindingProperties = new Properties()
+    dataBindingProperties.load(new FileInputStream("${projectDir}/../../databinding.properties"))
+    dataBindingProperties.mavenRepoDir = "${projectDir}/../../${dataBindingProperties.mavenRepoName}"
+    ext.config = dataBindingProperties
+
     repositories {
         jcenter()
         maven {
@@ -25,7 +30,7 @@
     }
     dependencies {
         classpath "com.android.tools.build:gradle:1.1.3"
-        classpath  'com.android.databinding:dataBinder:0.3-SNAPSHOT'
+        classpath  "com.android.databinding:dataBinder:${config.snapshotVersion}"
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files
     }