Эх сурвалжийг харах

Added a method to find packages by name

Christophe Coevoet 13 жил өмнө
parent
commit
fc17e26bc3

+ 13 - 0
src/Composer/Repository/ArrayRepository.php

@@ -41,6 +41,19 @@ class ArrayRepository implements RepositoryInterface
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
+    public function findPackagesByName($name)
+    {
+        // normalize name
+        $name = strtolower($name);
+
+        return array_filter($this->getPackages(), function(PackageInterface $package) use ($name) {
+            return $package->getName() === $name;
+        });
+    }
+
     /**
      * {@inheritDoc}
      */

+ 9 - 0
src/Composer/Repository/RepositoryInterface.php

@@ -41,6 +41,15 @@ interface RepositoryInterface extends \Countable
      */
     function findPackage($name, $version);
 
+    /**
+     * Searches for packages by it's name .
+     *
+     * @param   string  $name       package name
+     *
+     * @return  array
+     */
+    function findPackagesByName($name);
+
     /**
      * Returns list of registered packages.
      *