blob: 6433a9771ec1885495d1ed25ca13a0dbc5af255c [file] [log] [blame]
/*
* Copyright (C) 2015 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.pipeline;
import com.android.annotations.NonNull;
import com.android.annotations.Nullable;
import com.android.build.api.transform.DirectoryInput;
import com.android.build.api.transform.JarInput;
import com.android.build.api.transform.TransformInput;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableList;
import java.io.File;
import java.util.Collection;
/**
* Immutable version of {@link TransformInput}.
*/
class ImmutableTransformInput implements TransformInput {
private File optionalRootLocation;
@NonNull
private final Collection<JarInput> jarInputs;
@NonNull
private final Collection<DirectoryInput> directoryInputs;
ImmutableTransformInput(
@NonNull Collection<JarInput> jarInputs,
@NonNull Collection<DirectoryInput> directoryInputs,
@Nullable File optionalRootLocation) {
this.jarInputs = ImmutableList.copyOf(jarInputs);
this.directoryInputs = ImmutableList.copyOf(directoryInputs);
this.optionalRootLocation = optionalRootLocation;
}
@NonNull
@Override
public Collection<JarInput> getJarInputs() {
return jarInputs;
}
@NonNull
@Override
public Collection<DirectoryInput> getDirectoryInputs() {
return directoryInputs;
}
@Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("rootLocation", optionalRootLocation)
.add("jarInputs", jarInputs)
.add("folderInputs", directoryInputs)
.toString();
}
}