AI 146504: am: CL 146024 am: CL 146023 Make the add-on implement getPath for IAndroidTarget.SAMPLES (only if the add-on actually has samples) (BUG #1781751)
  Original author: xav
  Merged from: //branches/cupcake/...
  Original author: android-build

Automated import of CL 146504
diff --git a/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/AddOnTarget.java b/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/AddOnTarget.java
index 8ed73f2..2336f47 100644
--- a/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/AddOnTarget.java
+++ b/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/AddOnTarget.java
@@ -17,6 +17,7 @@
 package com.android.sdklib;
 
 import java.io.File;
+import java.io.FileFilter;
 import java.util.Arrays;
 import java.util.HashSet;
 import java.util.Map;
@@ -159,6 +160,21 @@
             case DOCS:
                 return mLocation + SdkConstants.FD_DOCS + File.separator
                         + SdkConstants.FD_DOCS_REFERENCE;
+            case SAMPLES:
+                // only return the add-on samples folder if there is actually a sample (or more)
+                File sampleLoc = new File(mLocation, SdkConstants.FD_SAMPLES);
+                if (sampleLoc.isDirectory()) {
+                    File[] files = sampleLoc.listFiles(new FileFilter() {
+                        public boolean accept(File pathname) {
+                            return pathname.isDirectory();
+                        }
+                        
+                    });
+                    if (files != null && files.length > 0) {
+                        return sampleLoc.getAbsolutePath();
+                    }
+                }
+                // INTENT FALL-THROUGH
             default :
                 return mBasePlatform.getPath(pathId);
         }