buildscript {
    repositories {
        maven { url '../../../../../out/repo' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.11.2'
    }
}
apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion '19.1.0'
}


public class GenerateCode extends DefaultTask {
    @Input
    String value

    @OutputFile
    File outputFile

    @TaskAction
    void taskAction() {
        getOutputFile().text =
            "package com.custom;\n" +
            "public class Foo {\n" +
            "    public static String getBuildDate() { return \"${getValue()}\"; }\n" +
            "}\n";
    }
}


android.applicationVariants.all { variant ->
    File sourceFolder = file("${buildDir}/customCode/${variant.dirName}")
    variant.addJavaSourceFoldersToModel(sourceFolder)
}