Fix noCompress support in aapt.
[android/platform/tools/build.git] / gradle / src / main / groovy / com / android / build / gradle / AndroidExtension.groovy
1 /*
2  * Copyright (C) 2012 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package com.android.build.gradle
17
18 import com.android.build.gradle.internal.AaptOptionsImpl
19 import com.android.build.gradle.internal.DexOptionsImpl
20 import com.android.builder.BuildType
21 import com.android.builder.ProductFlavor
22 import org.gradle.api.Action
23 import org.gradle.api.NamedDomainObjectContainer
24
25 class AndroidExtension extends BaseAndroidExtension {
26     final NamedDomainObjectContainer<ProductFlavor> productFlavors
27
28     String testBuildType = "debug"
29
30     final AaptOptionsImpl aaptOptions = new AaptOptionsImpl()
31     final DexOptionsImpl dexOptions = new DexOptionsImpl()
32
33     AndroidExtension(NamedDomainObjectContainer<BuildType> buildTypes,
34                      NamedDomainObjectContainer<ProductFlavor> productFlavors) {
35         super(buildTypes)
36         this.productFlavors = productFlavors
37     }
38
39     void productFlavors(Action<? super NamedDomainObjectContainer<ProductFlavor>> action) {
40         action.execute(productFlavors)
41     }
42
43     void aaptOptions(Action<AaptOptionsImpl> action) {
44         action.execute(aaptOptions)
45     }
46
47     void dexOptions(Action<DexOptionsImpl> action) {
48         action.execute(dexOptions)
49     }
50 }