Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * 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.builder.internal;
 
 
 import java.io.File;
 import java.util.List;
 import java.util.Map;

Fake IAndroidTarget used for SDK prebuilts in the Android source tree.
 
 public class FakeAndroidTarget implements IAndroidTarget {
     private final String mSdkLocation;
     private final SparseArray<StringmPaths = new SparseArray<String>();
     private final List<StringmBootClasspath = Lists.newArrayListWithExpectedSize(2);
     private final int mApiLevel;
 
     public FakeAndroidTarget(String sdkLocationString target) {
          = sdkLocation;
          = getApiLevel(target);
 
         if ("unstubbed".equals(target)) {
             .add( +
                     "/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar");
             .add( +
                     "/out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes.jar");
 
             // pre-build the path to the platform components
             .put( + "/prebuilts/sdk/current/" +
                     .);
             .put( + "/prebuilts/sdk/renderscript/" +
                     .);
         } else {
             String apiPrebuilts;
 
             if ("current".equals(target)) {
                 apiPrebuilts =  + "/prebuilts/sdk/current/";
             } else {
                 apiPrebuilts =  + "/prebuilts/sdk/" + Integer.toString() + "/";
             }
 
             // pre-build the path to the platform components
             .add(apiPrebuilts + .);
             .put(apiPrebuilts + .);
             .put(apiPrebuilts + .);
         }
     }
 
     private int getApiLevel(String target) {
         if (target.startsWith("android-")) {
             return Integer.parseInt(target.substring("android-".length()));
         }
 
         // We don't actually know the API level at this point since the mode is "current"
         // or "unstubbed". This API is only called to check if annotations.jar needs to be
         // added to the classpath, so by putting a large value we make sure annotations.jar
         // isn't used.
         return 99;
     }
 
     @Override
     public String getPath(int pathId) {
         return .get(pathId);
     }
 
     @Override
     public File getFile(int pathId) {
         return new File(getPath(pathId));
     }
 
     @Override
     public BuildToolInfo getBuildToolInfo() {
         // this is not used internally since we properly query for the right Build Tools from
         // the SdkManager.
         return null;
    }
    @Override @NonNull
    public List<StringgetBootClasspath() {
        return ;
    }
    @Override
    public String getLocation() {
        return ;
    }
    @Override
    public String getVendor() {
        return "android";
    }
    @Override
    public String getName() {
        return "android";
    }
    @Override
    public String getFullName() {
        return "android";
    }
    @Override
    public String getClasspathName() {
        return "android";
    }
    @Override
    public String getShortClasspathName() {
        return "android";
    }
    @Override
    public String getDescription() {
        return "android";
    }
    @Override
    public AndroidVersion getVersion() {
        return new AndroidVersion(null);
    }
    @Override
    public String getVersionName() {
        return "Android API level " + ;
    }
    @Override
    public int getRevision() {
        return 1;
    }
    @Override
    public boolean isPlatform() {
        return true;
    }
    @Override
    public IAndroidTarget getParent() {
        return null;
    }
    @Override
    public boolean hasRenderingLibrary() {
        return false;
    }
    @Override
    public File[] getSkins() {
        return new File[0];
    }
    @Override
    public File getDefaultSkin() {
        return null;
    }
    @Override
        return new IOptionalLibrary[0];
    }
    @Override
    public String[] getPlatformLibraries() {
        return new String[0];
    }
    @Override
    public String getProperty(String name) {
        return null;
    }
    @Override
    public Integer getProperty(String nameInteger defaultValue) {
        return null;
    }
    @Override
    public Boolean getProperty(String nameBoolean defaultValue) {
        return null;
    }
    @Override
    public Map<StringStringgetProperties() {
        return null;
    }
    @Override
    public int getUsbVendorId() {
        return 0;
    }
    @Override
    public ISystemImage[] getSystemImages() {
        return new ISystemImage[0];
    }
    @Override
    public ISystemImage getSystemImage(IdDisplay tagString abiType) {
        return null;
    }
    @Override
    public boolean canRunOn(IAndroidTarget target) {
        return false;
    }
    @Override
    public String hashString() {
        return "android-" + ;
    }
    @Override
    public int compareTo(IAndroidTarget iAndroidTarget) {
        FakeAndroidTarget that = (FakeAndroidTargetiAndroidTarget;
        return .compareTo(that.mSdkLocation);
    }
New to GrepCode? Check out our FAQ X