List<String> samples = [
"security/keystore/BasicAndroidKeyStore",
"connectivity/sync/BasicSyncAdapter",
"connectivity/network/NetworkConnect",
"connectivity/network/BasicNetworking",
"connectivity/bluetooth/BluetoothLeGatt",
"content/multiuser/AppRestrictions",
"content/contacts/BasicContactables",
"content/documentsUi/StorageClient",
"content/documentsUi/StorageProvider",
"views/TextLinkify",
"input/gestures/BasicGestureDetect",
"input/multitouch/BasicMultitouch",
"testing/ActivityInstrumentation",
"media/MediaRecorder",
"media/BasicMediaRouter",
"media/BasicMediaDecoder",
"ui/holo/BorderlessButtons",
"ui/accessibility/BasicAccessibility",
"ui/lists/CustomChoiceList",
"ui/views/TextSwitcher",
"ui/views/HorizontalPaging",
"ui/actionbarcompat/ActionBarCompat-Basic",
"ui/actionbarcompat/ActionBarCompat-Styled",
"ui/actionbarcompat/ActionBarCompat-ListPopupMenu",
"notification/BasicNotifications",
"notification/CustomNotifications",
"ui/actionbar/DoneBar",
"ui/graphics/PdfRendererBasic",
"ui/window/BasicImmersiveMode",
"ui/window/AdvancedImmersiveMode",
"ui/window/ImmersiveMode",
"background/alarms/RepeatingAlarm",
"renderScript/BasicRenderScript",
"renderScript/RenderScriptIntrinsic",
"ui/views/SlidingTabs/SlidingTabsBasic",
"ui/views/SlidingTabs/SlidingTabsColors",
"connectivity/nfc/BeamLargeFiles",
"connectivity/nfc/CardEmulation",
"connectivity/nfc/CardReader",
"sensors/BatchStepSensor",
"ui/graphics/DisplayingBitmaps",
"ui/transition/BasicTransition",
"ui/transition/CustomTransition",
"ui/views/SwipeRefreshLayout/SwipeRefreshLayoutBasic",
"ui/views/SwipeRefreshLayout/SwipeRefreshListFragment",
"ui/views/SwipeRefreshLayout/SwipeRefreshMultipleViews",
"media/MediaBrowserService",
"media/MediaRouter",
"media/MediaEffects",
"admin/BasicManagedProfile",
"media/Camera2Basic",
"media/Camera2Video",
"ui/activityscenetransition/ActivitySceneTransitionBasic",
"ui/views/NavigationDrawer",
"ui/views/Elevation/ElevationBasic",
"ui/views/Elevation/ElevationDrag",
"ui/views/Clipping/ClippingBasic",
"ui/views/FloatingActionButton/FloatingActionButtonBasic",
"ui/views/RevealEffect/RevealEffectBasic",
"background/JobScheduler",
"ui/views/RecyclerView",
"ui/views/CardView",
"notification/LNotifications",
"notification/MessagingService",
"ui/DrawableTinting",
"ui/Interpolator",
"media/HdrViewfinder",
"ui/activitytasks/DocumentCentricApps",
"ui/activitytasks/DocumentCentricRelinquishIdentity",
"admin/AppRestrictionEnforcer",
"admin/AppRestrictionSchema",
"connectivity/bluetooth/BluetoothChat",
"wearable/wear/AgendaData",
"wearable/wear/DataLayer",
"wearable/wear/DelayedConfirmation",
"wearable/wear/ElizaChat",
"wearable/wear/FindMyPhone",
"wearable/wear/Flashlight",
"wearable/wear/Geofencing",
"wearable/wear/GridViewPager",
"wearable/wear/JumpingJack",
"wearable/wear/Notifications",
"wearable/wear/Quiz",
"wearable/wear/RecipeAssistant",
"wearable/wear/SkeletonWearableApp",
"wearable/wear/SpeedTracker",
"wearable/wear/SynchronizedNotifications",
"wearable/wear/Timer",
"wearable/wear/WatchViewStub",
"wearable/wear/WatchFace",
"content/webview/PermissionRequest",
"content/documentsUi/DirectorySelection",
"system/AppUsageStatistics",
"media/ScreenCapture",
"admin/NfcProvisioning",
"admin/DeviceOwner",
"wearable/wear/XYZTouristAttractions",
"connectivity/bluetooth/BluetoothAdvertisements",
"wearable/wear/AlwaysOn",
"security/ConfirmCredential",
"security/FingerprintDialog",
"system/RuntimePermissions",
"system/RuntimePermissionsBasic",
"wearable/wear/RuntimePermissionsWear",
"notification/ActiveNotifications",
"media/Camera2Raw",
"content/AutoBackupForApps",
"ui/window/MultiWindowPlayground",
"content/documentsUi/ScopedDirectoryAccess",
"security/DirectBoot",
"content/DirectShare",
"media/MidiScope",
"media/MidiSynth",
"security/AsymmetricFingerprintDialog",
"wearable/wear/WearSpeakerSample",
"wearable/wear/WearDrawers",
"ui/window/DragAndDropAcrossApps",
"wearable/wear/WearNotifications",
"system/AppShortcuts",
"input/keyboard/CommitContentSampleApp",
"input/keyboard/CommitContentSampleIME",
"content/ShareActionProvider",
"wearable/wear/WearVerifyRemoteApp",
"wearable/wear/WearHighBandwidthNetworking",
"content/documentsUi/ContentProviderPaging",
"notification/NotificationChannels",
"media/PictureInPicture",
"input/autofill/AutofillFramework",
"views/EmojiCompat",
"ui/fonts/DownloadableFonts",
"wearable/wear/WearComplicationProvidersTestSuite",
]

List<String> taskNames = [
    "clean",
    "refresh",
    "assembleDebug",
    "build",
    "check",
    "connectedCheck",
    "deviceCheck",
    "emitAnt",
    "emitGradle",
    "emitBrowseable",
    "emitGradleZip",
]

taskNames.each { taskName ->
    def task = project.hasProperty(taskName) ? project.tasks[taskName] : project.task(taskName)
    println task
    samples.each { sample ->
        File sampleDir = new File(sample)
        task.dependsOn project.task([type: GradleBuild], "${sample}_${taskName}", {
            buildFile = "${sample}/build.gradle"
            dir = sample
            tasks = [taskName]
        })
    }
}
