]> source.dussan.org Git - nextcloud-server.git/commitdiff
Smarter code for OC_FileProxy
authorBart Visscher <bartv@thisnet.nl>
Fri, 8 Jun 2012 19:08:38 +0000 (21:08 +0200)
committerBart Visscher <bartv@thisnet.nl>
Tue, 19 Jun 2012 21:15:33 +0000 (23:15 +0200)
Conflicts:

lib/fileproxy.php

lib/fileproxy.php

index 70db9cca23c9269849702f4b153737a06406896c..9cda94c1c2b609e7fa8e0c2d93216a2b644a4925 100644 (file)
@@ -42,16 +42,7 @@ class OC_FileProxy{
        public static $enabled=true;
        
        /**
-        * check if this proxy implments a specific proxy operation
-        * @param string #proxy name of the proxy operation
-        * @return bool
-        */
-       public function provides($operation){
-               return method_exists($this,$operation);
-       }
-       
-       /**
-        * fallback function when a proxy operation is not implement
+        * fallback function when a proxy operation is not implemented
         * @param string $function the name of the proxy operation
         * @param mixed
         *
@@ -73,11 +64,10 @@ class OC_FileProxy{
                self::$proxies[]=$proxy;
        }
        
-       public static function getProxies($operation,$post){
-               $operation=(($post)?'post':'pre').$operation;
+       public static function getProxies($operation){
                $proxies=array();
                foreach(self::$proxies as $proxy){
-                       if($proxy->provides($operation)){
+                       if(method_exists($proxy,$operation)){
                                $proxies[]=$proxy;
                        }
                }
@@ -88,8 +78,8 @@ class OC_FileProxy{
                if(!self::$enabled){
                        return true;
                }
-               $proxies=self::getProxies($operation,false);
                $operation='pre'.$operation;
+               $proxies=self::getProxies($operation);
                foreach($proxies as $proxy){
                        if(!is_null($filepath2)){
                                if($proxy->$operation($filepath,$filepath2)===false){
@@ -108,8 +98,8 @@ class OC_FileProxy{
                if(!self::$enabled){
                        return $result;
                }
-               $proxies=self::getProxies($operation,true);
                $operation='post'.$operation;
+               $proxies=self::getProxies($operation);
                foreach($proxies as $proxy){
                        $result=$proxy->$operation($path,$result);
                }
@@ -119,4 +109,4 @@ class OC_FileProxy{
        public static function clearProxies(){
                self::$proxies=array();
        }
-}
\ No newline at end of file
+}