diff options
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.monitor/src/com/android/ide/eclipse/monitor/SdkToolsLocator.java')
-rw-r--r-- | eclipse/plugins/com.android.ide.eclipse.monitor/src/com/android/ide/eclipse/monitor/SdkToolsLocator.java | 116 |
1 files changed, 0 insertions, 116 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.monitor/src/com/android/ide/eclipse/monitor/SdkToolsLocator.java b/eclipse/plugins/com.android.ide.eclipse.monitor/src/com/android/ide/eclipse/monitor/SdkToolsLocator.java deleted file mode 100644 index bd8ef60cb..000000000 --- a/eclipse/plugins/com.android.ide.eclipse.monitor/src/com/android/ide/eclipse/monitor/SdkToolsLocator.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (C) 2012 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.ide.eclipse.monitor; - -import com.android.SdkConstants; -import com.android.ide.eclipse.ddms.IToolsLocator; - -import java.io.File; -import java.util.Arrays; -import java.util.List; - -/** - * {@link SdkToolsLocator} has two functions: <ul> - * <li> It implements all the methods of {@link IToolsLocator} interface, and - * so can be used as such. </li> - * <li> It provides the {@link #isValidInstallation()} method to check the validity - * of an installation. </li> - * The only reason this class does not explicitly implement the {@link IToolsLocator} interface - * is that it is used very early during the startup to check the validity of the installation. - * Actually implementing that interface causes other bundles to be activated before the - * Eclipse Platform is fully initialized, resulting in startup error. - */ -public class SdkToolsLocator { - public static final String PLATFORM_EXECUTABLE_EXTENSION = - (SdkConstants.CURRENT_PLATFORM == SdkConstants.PLATFORM_WINDOWS) ? - ".exe" : ""; //$NON-NLS-1$ - - public static final String PLATFORM_SCRIPT_EXTENSION = - (SdkConstants.CURRENT_PLATFORM == SdkConstants.PLATFORM_WINDOWS) ? - ".bat" : ""; //$NON-NLS-1$ - - public static final String FN_HPROF_CONV = "hprof-conv" + PLATFORM_EXECUTABLE_EXTENSION; //$NON-NLS-1$ - public static final String FN_TRACEVIEW = "traceview" + PLATFORM_SCRIPT_EXTENSION; //$NON-NLS-1$ - - private final File mSdkFolder; - - public SdkToolsLocator(File sdkFolder) { - mSdkFolder = sdkFolder; - } - - public String getAdbLocation() { - return new File(getSdkPlatformToolsFolder(), SdkConstants.FN_ADB).getAbsolutePath(); - } - - public String getTraceViewLocation() { - return new File(getSdkToolsFolder(), FN_TRACEVIEW).getAbsolutePath(); - } - - public String getHprofConvLocation() { - return new File(getSdkPlatformToolsFolder(), FN_HPROF_CONV).getAbsolutePath(); - } - - private String getSdkToolsFolder() { - return new File(mSdkFolder, SdkConstants.FD_TOOLS).getAbsolutePath(); - } - - private String getSdkPlatformToolsFolder() { - return new File(mSdkFolder, SdkConstants.FD_PLATFORM_TOOLS).getAbsolutePath(); - } - - public SdkInstallStatus isValidInstallation() { - List<String> executables = Arrays.asList( - getTraceViewLocation(), - getHprofConvLocation()); - - for (String exe : executables) { - File f = new File(exe); - if (!f.exists()) { - return SdkInstallStatus.invalidInstallation(exe + " not present."); - } - if (!f.canExecute()) { - return SdkInstallStatus.invalidInstallation(exe + " is not executable."); - } - } - - return SdkInstallStatus.VALID; - } - - public static class SdkInstallStatus { - private boolean mValid; - private String mCause; - - private SdkInstallStatus(boolean valid, String errorMessage) { - mValid = valid; - mCause = errorMessage; - } - - public boolean isValid() { - return mValid; - } - - public String getErrorMessage() { - return mCause; - } - - public static final SdkInstallStatus VALID = new SdkInstallStatus(true, ""); - - public static SdkInstallStatus invalidInstallation(String errorMessage) { - return new SdkInstallStatus(false, errorMessage); - } - } -} |