com.android.build.gradle.internal.model.VariantImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gradle Show documentation
Show all versions of gradle Show documentation
Gradle plug-in to build Android applications with support for Amazon APIs.
/*
* Copyright (C) 2013 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.build.gradle.internal.model;
import com.android.annotations.NonNull;
import com.android.builder.model.AndroidArtifact;
import com.android.builder.model.JavaArtifact;
import com.android.builder.model.ProductFlavor;
import com.android.builder.model.Variant;
import java.io.Serializable;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
/**
* Implementation of Variant that is serializable.
*/
class VariantImpl implements Variant, Serializable {
private static final long serialVersionUID = 1L;
@NonNull
private final String name;
@NonNull
private final String displayName;
@NonNull
private final String buildTypeName;
@NonNull
private final List productFlavorNames;
@NonNull
private final ProductFlavor mergedFlavor;
@NonNull
private final AndroidArtifact mainArtifactInfo;
@NonNull
private final Collection extraAndroidArtifacts;
@NonNull
private final Collection extraJavaArtifacts;
VariantImpl(@NonNull String name,
@NonNull String displayName,
@NonNull String buildTypeName,
@NonNull List productFlavorNames,
@NonNull ProductFlavorImpl mergedFlavor,
@NonNull AndroidArtifact mainArtifactInfo,
@NonNull Collection extraAndroidArtifacts,
@NonNull Collection extraJavaArtifacts) {
this.name = name;
this.displayName = displayName;
this.buildTypeName = buildTypeName;
this.productFlavorNames = productFlavorNames;
this.mergedFlavor = mergedFlavor;
this.mainArtifactInfo = mainArtifactInfo;
this.extraAndroidArtifacts = extraAndroidArtifacts;
this.extraJavaArtifacts = extraJavaArtifacts;
}
@Override
@NonNull
public String getName() {
return name;
}
@Override
@NonNull
public String getDisplayName() {
return displayName;
}
@Override
@NonNull
public String getBuildType() {
return buildTypeName;
}
@Override
@NonNull
public List getProductFlavors() {
return productFlavorNames;
}
@Override
@NonNull
public ProductFlavor getMergedFlavor() {
return mergedFlavor;
}
@NonNull
@Override
public AndroidArtifact getMainArtifact() {
return mainArtifactInfo;
}
@NonNull
@Override
public Collection getExtraAndroidArtifacts() {
return extraAndroidArtifacts;
}
@NonNull
@Override
public Collection getExtraJavaArtifacts() {
return extraJavaArtifacts;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy