[prev in list] [next in list] [prev in thread] [next in thread] 

List:       php-doc-cvs
Subject:    [DOC-CVS] svn: /phd/trunk/phpdotnet/phd/ BuildOptionsParser.php Config.php
From:       Hannes_Magnusson <bjori () php ! net>
Date:       2009-07-30 17:09:09
Message-ID: svn-bjori-1248973749-286563-420508208 () svn ! php ! net
[Download RAW message or body]

bjori                                    Thu, 30 Jul 2009 17:09:09 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=286563

Log:
- Move package listing into Config::getSupportedPackages()
- Remove weird and useless abstract class

Changed paths:
    U   phd/trunk/phpdotnet/phd/BuildOptionsParser.php
    U   phd/trunk/phpdotnet/phd/Config.php

Modified: phd/trunk/phpdotnet/phd/BuildOptionsParser.php
===================================================================
--- phd/trunk/phpdotnet/phd/BuildOptionsParser.php	2009-07-30 17:00:48 UTC (rev 286562)
+++ phd/trunk/phpdotnet/phd/BuildOptionsParser.php	2009-07-30 17:09:09 UTC (rev 286563)
@@ -2,7 +2,7 @@
 namespace phpdotnet\phd;
 /* $Id$ */

-class BuildOptionsParser extends OptionParser
+class BuildOptionsParser
 {
     public $docbook = false;
     public $verbose = 0;
@@ -120,19 +120,8 @@
     }

     public function option_package($k, $v) {
-        static $packageList = NULL;

-        if (is_null($packageList)) {
-            $packageList = array();
-            foreach (glob($GLOBALS['ROOT'] . "/phpdotnet/phd/Package/*", GLOB_ONLYDIR) as $item) {
-                $baseitem = basename($item);
-                if ($baseitem[0] != '.') {
-                    $packageList[] = $baseitem;
-                }
-            }
-        }
-
-        if (in_array($v, $packageList)) {
+        if (in_array($v, Config::getSupportedPackages())) {
             Config::set_package($v);
         } else {
             trigger_error("Invalid Package", E_USER_ERROR);
@@ -205,22 +194,12 @@
     }
     public function option_list($k, $v)
     {
-        static $packageList = NULL;
+        $packageList = Config::getSupportedPackages();

-        if (is_null($packageList)) {
-            $packageList = array();
-            foreach (glob($GLOBALS['ROOT'] . "/phpdotnet/phd/Package/*", GLOB_ONLYDIR) as $item) {
-                $baseitem = basename($item);
-                if ($baseitem[0] != '.') {
-                    $packageList[] = $baseitem;
-                }
-            }
-        }
-
         echo "Supported packages:\n";
         foreach ($packageList as $package) {
-            $factory = Format_Factory::createFactory($package);
-            echo "\t" . $package . "\n\t\t" . implode("\n\t\t", $factory->getOutputFormats()) . "\n";
+            $formats = Format_Factory::createFactory($package)->getOutputFormats();
+            echo "\t" . $package . "\n\t\t" . implode("\n\t\t", $formats) . "\n";
         }

         exit(0);
@@ -312,10 +291,6 @@
     }
 }

-abstract class OptionParser
-{
-    abstract public function getOptionList();
-
     public function handlerForOption($opt)
     {
         if (method_exists($this, "option_{$opt}")) {

Modified: phd/trunk/phpdotnet/phd/Config.php
===================================================================
--- phd/trunk/phpdotnet/phd/Config.php	2009-07-30 17:00:48 UTC (rev 286562)
+++ phd/trunk/phpdotnet/phd/Config.php	2009-07-30 17:09:09 UTC (rev 286563)
@@ -54,6 +54,20 @@
         }
         return isset(self::$optionArray[$name]) ? self::$optionArray[$name] : NULL;
     }
+
+    public static function getSupportedPackages() {
+        static $packageList = array();
+        if (!$packageList) {
+            foreach (glob(__DIR__ . "/Package/*", GLOB_ONLYDIR) as $item) {
+                $baseitem = basename($item);
+                if ($baseitem[0] != '.') {
+                    $packageList[] = $baseitem;
+                }
+            }
+        }
+        return $packageList;
+    }
+
 }

 Config::set_php_error_output(STDERR);



-- 
PHP Documentation Commits Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic