Browse Source

Remove static/public method

Jordi Boggiano 8 years ago
parent
commit
c0e28a9043
1 changed files with 24 additions and 24 deletions
  1. 24 24
      src/Composer/Util/RemoteFilesystem.php

+ 24 - 24
src/Composer/Util/RemoteFilesystem.php

@@ -175,27 +175,6 @@ class RemoteFilesystem
         return $value;
     }
 
-    /**
-     * @link https://github.com/composer/composer/issues/5584
-     *
-     * @param string $urlToBitBucketFile URL to a file at bitbucket.org.
-     *
-     * @return bool Whether the given URL is a public BitBucket download which requires no authentication.
-     */
-    public static function urlIsPublicBitBucketDownload($urlToBitBucketFile)
-    {
-        $path = parse_url($urlToBitBucketFile, PHP_URL_PATH);
-
-        // Path for a public download follows this pattern /{user}/{repo}/downloads/{whatever}
-        // {@link https://blog.bitbucket.org/2009/04/12/new-feature-downloads/}
-        $pathParts = explode('/', $path);
-        if (count($pathParts) >= 4 && $pathParts[2] != 'downloads') {
-            return true;
-        }
-
-        return false;
-    }
-
     /**
      * Get file content or copy action.
      *
@@ -267,8 +246,8 @@ class RemoteFilesystem
         }
 
         if (isset($options['bitbucket-token'])) {
-            // First time be optimistic and do not use the token for a BitBucket download.
-            if (!static::urlIsPublicBitBucketDownload($origFileUrl)) {
+            // skip using the token for BitBucket downloads as these are not working with auth
+            if (!$this->isPublicBitBucketDownload($origFileUrl)) {
                 $fileUrl .= (false === strpos($fileUrl,'?') ? '?' : '&') . 'access_token=' . $options['bitbucket-token'];
             }
             unset($options['bitbucket-token']);
@@ -366,7 +345,7 @@ class RemoteFilesystem
 
         // check for bitbucket login page asking to authenticate
         if ($originUrl === 'bitbucket.org'
-            && !static::urlIsPublicBitBucketDownload($fileUrl)
+            && !$this->isPublicBitBucketDownload($fileUrl)
             && substr($fileUrl, -4) === '.zip'
             && preg_match('{^text/html\b}i', $contentType)
         ) {
@@ -1007,4 +986,25 @@ class RemoteFilesystem
 
         return parse_url($url, PHP_URL_HOST).':'.$port;
     }
+
+    /**
+     * @link https://github.com/composer/composer/issues/5584
+     *
+     * @param string $urlToBitBucketFile URL to a file at bitbucket.org.
+     *
+     * @return bool Whether the given URL is a public BitBucket download which requires no authentication.
+     */
+    private function isPublicBitBucketDownload($urlToBitBucketFile)
+    {
+        $path = parse_url($urlToBitBucketFile, PHP_URL_PATH);
+
+        // Path for a public download follows this pattern /{user}/{repo}/downloads/{whatever}
+        // {@link https://blog.bitbucket.org/2009/04/12/new-feature-downloads/}
+        $pathParts = explode('/', $path);
+        if (count($pathParts) >= 4 && $pathParts[2] != 'downloads') {
+            return true;
+        }
+
+        return false;
+    }
 }