blob: 87257503d2f89cb7d774c533a097c9dd2d40c90e [file] [log] [blame]
// Copyright 2018 The Bazel Authors. All rights reserved.
//
// 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.google.devtools.build.skydoc.fakebuildapi.android;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.skylarkbuildapi.FileApi;
import com.google.devtools.build.lib.skylarkbuildapi.android.AndroidManifestInfoApi;
import com.google.devtools.build.lib.skylarkbuildapi.android.AndroidResourcesInfoApi;
import com.google.devtools.build.lib.skylarkbuildapi.android.ValidatedAndroidDataApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.Depset;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.Sequence;
/** Fake implementation of {@link AndroidResourcesInfoApi}. */
public class FakeAndroidResourcesInfo
implements AndroidResourcesInfoApi<
FileApi,
FakeAndroidResourcesInfo.FakeValidatedAndroidDataApi,
FakeAndroidResourcesInfo.FakeAndroidManifestInfoApi> {
public static final String PROVIDER_NAME = "FakeAndroidResourcesInfo";
public static final FakeAndroidResourcesInfoProvider PROVIDER =
new FakeAndroidResourcesInfoProvider();
@Override
public Label getLabel() {
return null;
}
@Override
public FakeAndroidManifestInfoApi getManifest() {
return null;
}
@Override
public FileApi getRTxt() {
return null;
}
@Override
public Depset /*<FakeValidatedAndroidDataApi>*/ getTransitiveAndroidResourcesForStarlark() {
return null;
}
@Override
public Depset /*<FakeValidatedAndroidDataApi>*/ getDirectAndroidResourcesForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveResourcesForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveManifestsForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveAapt2RTxtForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveAapt2ValidationArtifactsForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveSymbolsBinForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveCompiledSymbolsForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveStaticLibForStarlark() {
return null;
}
@Override
public Depset /*<FileApi>*/ getTransitiveRTxtForStarlark() {
return null;
}
@Override
public String toProto(Location loc) throws EvalException {
return "";
}
@Override
public String toJson(Location loc) throws EvalException {
return "";
}
@Override
public void repr(SkylarkPrinter printer) {}
/** Fake implementation of {@link AndroidResourcesInfoApiProvider}. */
public static class FakeAndroidResourcesInfoProvider
implements AndroidResourcesInfoApi.AndroidResourcesInfoApiProvider<
FileApi,
FakeAndroidResourcesInfo.FakeValidatedAndroidDataApi,
FakeAndroidResourcesInfo.FakeAndroidManifestInfoApi> {
@Override
public FakeAndroidResourcesInfo createInfo(
Label label,
FakeAndroidManifestInfoApi manifest,
FileApi rTxt,
Depset transitiveAndroidResources,
Depset directAndroidResources,
Depset transitiveResources,
Depset transitiveManifests,
Depset transitiveAapt2RTxt,
Depset transitiveSymbolsBin,
Depset transitiveCompiledSymbols,
Depset transitiveStaticLib,
Depset transitiveRTxt,
Object transitiveAapt2ValidationArtifacts)
throws EvalException {
return new FakeAndroidResourcesInfo();
}
@Override
public void repr(SkylarkPrinter printer) {}
}
/** Fake implementation of {@link ValidatedAndroidDataApi}. */
public static class FakeValidatedAndroidDataApi
implements ValidatedAndroidDataApi<FileApi, FakeAndroidResourcesInfo> {
@Override
public FakeAndroidResourcesInfo toProvider() {
return null;
}
@Override
public FileApi getRTxt() {
return null;
}
@Override
public FileApi getJavaClassJar() {
return null;
}
@Override
public FileApi getJavaSourceJar() {
return null;
}
@Override
public FileApi getApk() {
return null;
}
@Override
public FileApi getAapt2RTxt() {
return null;
}
@Override
public FileApi getAapt2SourceJar() {
return null;
}
@Override
public FileApi getStaticLibrary() {
return null;
}
@Override
public Sequence<FileApi> getResourcesList() {
return null;
}
}
/** Fake implementation of {@link AndroidManifestInfoApi}. */
public static class FakeAndroidManifestInfoApi implements AndroidManifestInfoApi<FileApi> {
@Override
public FileApi getManifest() {
return null;
}
@Override
public boolean exportsManifest() {
return false;
}
@Override
public String getPackage() {
return null;
}
@Override
public String toProto(Location loc) throws EvalException {
return "";
}
@Override
public String toJson(Location loc) throws EvalException {
return "";
}
@Override
public void repr(SkylarkPrinter printer) {}
}
}