]> git.mxchange.org Git - friendica.git/commitdiff
More Standards
authorAdam Magness <adam.magness@gmail.com>
Sun, 19 Nov 2017 22:04:40 +0000 (17:04 -0500)
committerAdam Magness <adam.magness@gmail.com>
Mon, 20 Nov 2017 16:01:32 +0000 (11:01 -0500)
More coding standards updates.

src/Core/Worker.php
src/Database/DBM.php
src/Model/GlobalContact.php
src/Network/Probe.php
src/ParseUrl.php
src/Util/Lock.php

index 2cfb4de742be6c3a715393bd0f268b6c97e6c868..2417af55444401c930a1106bcccea1655d538cc3 100644 (file)
@@ -1,4 +1,7 @@
 <?php
+/**
+ * @file src/Core/Worker.php
+ */
 namespace Friendica\Core;
 
 use Friendica\App;
@@ -19,7 +22,8 @@ use dba;
 /**
  * @brief Worker methods
  */
-class Worker {
+class Worker
+{
        private static $up_start;
        private static $db_duration;
        private static $last_update;
@@ -29,8 +33,10 @@ class Worker {
         * @brief Processes the tasks that are in the workerqueue table
         *
         * @param boolean $run_cron Should the cron processes be executed?
+        * @return void
         */
-       public static function processQueue($run_cron = true) {
+       public static function processQueue($run_cron = true)
+       {
                $a = get_app();
 
                self::$up_start = microtime(true);
@@ -84,12 +90,11 @@ class Worker {
 
                // We fetch the next queue entry that is about to be executed
                while ($r = self::workerProcess($passing_slow)) {
-
                        // When we are processing jobs with a lower priority, we don't refetch new jobs
                        // Otherwise fast jobs could wait behind slow ones and could be blocked.
                        $refetched = $passing_slow;
 
-                       foreach ($r AS $entry) {
+                       foreach ($r as $entry) {
                                // Assure that the priority is an integer value
                                $entry['priority'] = (int)$entry['priority'];
 
@@ -140,7 +145,8 @@ class Worker {
         *
         * @return integer Number of non executed entries in the worker queue
         */
-       private static function totalEntries() {
+       private static function totalEntries()
+       {
                $s = dba::fetch_first("SELECT COUNT(*) AS `total` FROM `workerqueue` WHERE `executed` <= ? AND NOT `done`", NULL_DATE);
                if (DBM::is_result($s)) {
                        return $s["total"];
@@ -154,7 +160,8 @@ class Worker {
         *
         * @return integer Number of active worker processes
         */
-       private static function highestPriority() {
+       private static function highestPriority()
+       {
                $condition = array("`executed` <= ? AND NOT `done`", NULL_DATE);
                $s = dba::select('workerqueue', array('priority'), $condition, array('limit' => 1, 'order' => array('priority')));
                if (DBM::is_result($s)) {
@@ -171,7 +178,8 @@ class Worker {
         *
         * @return integer Is there a process running with that priority?
         */
-       private static function processWithPriorityActive($priority) {
+       private static function processWithPriorityActive($priority)
+       {
                $condition = array("`priority` <= ? AND `executed` > ? AND NOT `done`", $priority, NULL_DATE);
                return dba::exists('workerqueue', $condition);
        }
@@ -183,7 +191,8 @@ class Worker {
         *
         * @return boolean "true" if further processing should be stopped
         */
-       public static function execute($queue) {
+       public static function execute($queue)
+       {
                $a = get_app();
 
                $mypid = getmypid();
@@ -250,12 +259,11 @@ class Worker {
                        return true;
                }
 
-               require_once($include);
+               require_once $include;
 
                $funcname = str_replace(".php", "", basename($argv[0]))."_run";
 
                if (function_exists($funcname)) {
-
                        // We constantly update the "executed" date every minute to avoid being killed too soon
                        if (!isset(self::$last_update)) {
                                self::$last_update = strtotime($queue["executed"]);
@@ -288,11 +296,14 @@ class Worker {
        /**
         * @brief Execute a function from the queue
         *
-        * @param array $queue Workerqueue entry
-        * @param string $funcname name of the function
-        * @param array $argv Array of values to be passed to the function
+        * @param array   $queue       Workerqueue entry
+        * @param string  $funcname    name of the function
+        * @param array   $argv        Array of values to be passed to the function
+        * @param boolean $method_call boolean
+        * @return void
         */
-       private static function execFunction($queue, $funcname, $argv, $method_call) {
+       private static function execFunction($queue, $funcname, $argv, $method_call)
+       {
                $a = get_app();
 
                $mypid = getmypid();
@@ -349,10 +360,14 @@ class Worker {
                 * The execution time is the productive time.
                 * By changing parameters like the maximum number of workers we can check the effectivness.
                */
-               logger('DB: '.number_format(self::$db_duration, 2).
+               logger(
+                       'DB: '.number_format(self::$db_duration, 2).
                        ' - Lock: '.number_format(self::$lock_duration, 2).
                        ' - Rest: '.number_format($up_duration - self::$db_duration - self::$lock_duration, 2).
-                       ' - Execution: '.number_format($duration, 2), LOGGER_DEBUG);
+                       ' - Execution: '.number_format($duration, 2),
+                       LOGGER_DEBUG
+               );
+
                self::$lock_duration = 0;
 
                if ($duration > 3600) {
@@ -374,7 +389,7 @@ class Worker {
                        if (Config::get("rendertime", "callstack")) {
                                if (isset($a->callstack["database"])) {
                                        $o = "\nDatabase Read:\n";
-                                       foreach ($a->callstack["database"] AS $func => $time) {
+                                       foreach ($a->callstack["database"] as $func => $time) {
                                                $time = round($time, 3);
                                                if ($time > 0) {
                                                        $o .= $func.": ".$time."\n";
@@ -383,7 +398,7 @@ class Worker {
                                }
                                if (isset($a->callstack["database_write"])) {
                                        $o .= "\nDatabase Write:\n";
-                                       foreach ($a->callstack["database_write"] AS $func => $time) {
+                                       foreach ($a->callstack["database_write"] as $func => $time) {
                                                $time = round($time, 3);
                                                if ($time > 0) {
                                                        $o .= $func.": ".$time."\n";
@@ -392,7 +407,7 @@ class Worker {
                                }
                                if (isset($a->callstack["network"])) {
                                        $o .= "\nNetwork:\n";
-                                       foreach ($a->callstack["network"] AS $func => $time) {
+                                       foreach ($a->callstack["network"] as $func => $time) {
                                                $time = round($time, 3);
                                                if ($time > 0) {
                                                        $o .= $func.": ".$time."\n";
@@ -403,14 +418,18 @@ class Worker {
                                $o = '';
                        }
 
-                       logger("ID ".$queue["id"].": ".$funcname.": ".sprintf("DB: %s/%s, Net: %s, I/O: %s, Other: %s, Total: %s".$o,
-                               number_format($a->performance["database"] - $a->performance["database_write"], 2),
-                               number_format($a->performance["database_write"], 2),
-                               number_format($a->performance["network"], 2),
-                               number_format($a->performance["file"], 2),
-                               number_format($duration - ($a->performance["database"] + $a->performance["network"] + $a->performance["file"]), 2),
-                               number_format($duration, 2)),
-                               LOGGER_DEBUG);
+                       logger(
+                               "ID ".$queue["id"].": ".$funcname.": ".sprintf(
+                                       "DB: %s/%s, Net: %s, I/O: %s, Other: %s, Total: %s".$o,
+                                       number_format($a->performance["database"] - $a->performance["database_write"], 2),
+                                       number_format($a->performance["database_write"], 2),
+                                       number_format($a->performance["network"], 2),
+                                       number_format($a->performance["file"], 2),
+                                       number_format($duration - ($a->performance["database"] + $a->performance["network"] + $a->performance["file"]), 2),
+                                       number_format($duration, 2)
+                               ),
+                               LOGGER_DEBUG
+                       );
                }
 
                $cooldown = Config::get("system", "worker_cooldown", 0);
@@ -426,8 +445,8 @@ class Worker {
         *
         * @return bool Are more than 3/4 of the maximum connections used?
         */
-       private static function maxConnectionsReached() {
-
+       private static function maxConnectionsReached()
+       {
                // Fetch the max value from the config. This is needed when the system cannot detect the correct value by itself.
                $max = Config::get("system", "max_connections");
 
@@ -501,16 +520,20 @@ class Worker {
 
        /**
         * @brief fix the queue entry if the worker process died
-        *
+        * @return void
         */
-       private static function killStaleWorkers() {
-               $entries = dba::select('workerqueue', array('id', 'pid', 'executed', 'priority', 'parameter'),
-                                       array('`executed` > ? AND NOT `done` AND `pid` != 0', NULL_DATE),
-                                       array('order' => array('priority', 'created')));
+       private static function killStaleWorkers()
+       {
+               $entries = dba::select(
+                       'workerqueue',
+                       array('id', 'pid', 'executed', 'priority', 'parameter'),
+                       array('`executed` > ? AND NOT `done` AND `pid` != 0', NULL_DATE),
+                       array('order' => array('priority', 'created'))
+               );
+
                while ($entry = dba::fetch($entries)) {
                        if (!posix_kill($entry["pid"], 0)) {
-                               dba::update('workerqueue', array('executed' => NULL_DATE, 'pid' => 0),
-                                               array('id' => $entry["id"]));
+                               dba::update('workerqueue', array('executed' => NULL_DATE, 'pid' => 0), array('id' => $entry["id"]));
                        } else {
                                // Kill long running processes
                                // Check if the priority is in a valid range
@@ -541,9 +564,11 @@ class Worker {
                                        } elseif ($entry["priority"] != PRIORITY_CRITICAL) {
                                                $new_priority = PRIORITY_NEGLIGIBLE;
                                        }
-                                       dba::update('workerqueue',
-                                                       array('executed' => NULL_DATE, 'created' => datetime_convert(), 'priority' => $new_priority, 'pid' => 0),
-                                                       array('id' => $entry["id"]));
+                                       dba::update(
+                                               'workerqueue',
+                                               array('executed' => NULL_DATE, 'created' => datetime_convert(), 'priority' => $new_priority, 'pid' => 0),
+                                               array('id' => $entry["id"])
+                                       );
                                } else {
                                        logger("Worker process ".$entry["pid"]." (".implode(" ", $argv).") now runs for ".round($duration)." of ".$max_duration." allowed minutes. That's okay.", LOGGER_DEBUG);
                                }
@@ -556,7 +581,8 @@ class Worker {
         *
         * @return bool Are there too much workers running?
         */
-       public static function tooMuchWorkers() {
+       public static function tooMuchWorkers()
+       {
                $queues = Config::get("system", "worker_queues", 4);
 
                $maxqueues = $queues;
@@ -580,9 +606,13 @@ class Worker {
                                $listitem = array();
 
                                // Adding all processes with no workerqueue entry
-                               $processes = dba::p("SELECT COUNT(*) AS `running` FROM `process` WHERE NOT EXISTS
+                               $processes = dba::p(
+                                       "SELECT COUNT(*) AS `running` FROM `process` WHERE NOT EXISTS
                                                        (SELECT id FROM `workerqueue`
-                                                       WHERE `workerqueue`.`pid` = `process`.`pid` AND NOT `done` AND `pid` != ?)", getmypid());
+                                                       WHERE `workerqueue`.`pid` = `process`.`pid` AND NOT `done` AND `pid` != ?)",
+                                       getmypid()
+                               );
+
                                if ($process = dba::fetch($processes)) {
                                        $listitem[0] = "0:".$process["running"];
                                }
@@ -601,7 +631,7 @@ class Worker {
 
                                $intervals = array(1, 10, 60);
                                $jobs_per_minute = array();
-                               foreach ($intervals AS $interval) {
+                               foreach ($intervals as $interval) {
                                        $jobs = dba::p("SELECT COUNT(*) AS `jobs` FROM `workerqueue` WHERE `done` AND `executed` > UTC_TIMESTAMP() - INTERVAL ".intval($interval)." MINUTE");
                                        if ($job = dba::fetch($jobs)) {
                                                $jobs_per_minute[$interval] = number_format($job['jobs'] / $interval, 0);
@@ -640,7 +670,8 @@ class Worker {
         *
         * @return integer Number of active worker processes
         */
-       private static function activeWorkers() {
+       private static function activeWorkers()
+       {
                $workers = dba::fetch_first("SELECT COUNT(*) AS `processes` FROM `process` WHERE `command` = 'Worker.php'");
 
                return $workers["processes"];
@@ -655,12 +686,15 @@ class Worker {
         * @param string $highest_priority Returns the currently highest priority
         * @return bool We let pass a slower process than $highest_priority
         */
-       private static function passingSlow(&$highest_priority) {
+       private static function passingSlow(&$highest_priority)
+       {
                $highest_priority = 0;
 
-               $r = dba::p("SELECT `priority`
+               $r = dba::p(
+                       "SELECT `priority`
                                FROM `process`
-                               INNER JOIN `workerqueue` ON `workerqueue`.`pid` = `process`.`pid` AND NOT `done`");
+                               INNER JOIN `workerqueue` ON `workerqueue`.`pid` = `process`.`pid` AND NOT `done`"
+               );
 
                // No active processes at all? Fine
                if (!DBM::is_result($r)) {
@@ -684,7 +718,7 @@ class Worker {
                        return false;
                }
                $high = 0;
-               foreach ($priorities AS $priority) {
+               foreach ($priorities as $priority) {
                        if ($priority == $highest_priority) {
                                ++$high;
                        }
@@ -704,7 +738,8 @@ class Worker {
         * @param boolean $passing_slow Returns if we had passed low priority processes
         * @return boolean Have we found something?
         */
-       private static function findWorkerProcesses(&$passing_slow) {
+       private static function findWorkerProcesses(&$passing_slow)
+       {
                $mypid = getmypid();
 
                // Check if we should pass some low priority process
@@ -728,8 +763,12 @@ class Worker {
 
                if (self::passingSlow($highest_priority)) {
                        // Are there waiting processes with a higher priority than the currently highest?
-                       $result = dba::select('workerqueue', array('id'), array("`executed` <= ? AND `priority` < ? AND NOT `done`", NULL_DATE, $highest_priority),
-                                       array('limit' => $limit, 'order' => array('priority', 'created'), 'only_query' => true));
+                       $result = dba::select(
+                               'workerqueue',
+                               array('id'),
+                               array("`executed` <= ? AND `priority` < ? AND NOT `done`", NULL_DATE, $highest_priority),
+                               array('limit' => $limit, 'order' => array('priority', 'created'), 'only_query' => true)
+                       );
 
                        while ($id = dba::fetch($result)) {
                                $ids[] = $id["id"];
@@ -740,8 +779,12 @@ class Worker {
 
                        if (!$found) {
                                // Give slower processes some processing time
-                               $result = dba::select('workerqueue', array('id'), array("`executed` <= ? AND `priority` > ? AND NOT `done`", NULL_DATE, $highest_priority),
-                                               array('limit' => $limit, 'order' => array('priority', 'created'), 'only_query' => true));
+                               $result = dba::select(
+                                       'workerqueue',
+                                       array('id'),
+                                       array("`executed` <= ? AND `priority` > ? AND NOT `done`", NULL_DATE, $highest_priority),
+                                       array('limit' => $limit, 'order' => array('priority', 'created'), 'only_query' => true)
+                               );
 
                                while ($id = dba::fetch($result)) {
                                        $ids[] = $id["id"];
@@ -755,8 +798,12 @@ class Worker {
 
                // If there is no result (or we shouldn't pass lower processes) we check without priority limit
                if (!$found) {
-                       $result = dba::select('workerqueue', array('id'), array("`executed` <= ? AND NOT `done`", NULL_DATE),
-                                       array('limit' => $limit, 'order' => array('priority', 'created'), 'only_query' => true));
+                       $result = dba::select(
+                               'workerqueue',
+                               array('id'),
+                               array("`executed` <= ? AND NOT `done`", NULL_DATE),
+                               array('limit' => $limit, 'order' => array('priority', 'created'), 'only_query' => true)
+                       );
 
                        while ($id = dba::fetch($result)) {
                                $ids[] = $id["id"];
@@ -781,7 +828,8 @@ class Worker {
         * @param boolean $passing_slow Returns if we had passed low priority processes
         * @return string SQL statement
         */
-       public static function workerProcess(&$passing_slow) {
+       public static function workerProcess(&$passing_slow)
+       {
                $stamp = (float)microtime(true);
 
                // There can already be jobs for us in the queue.
@@ -813,8 +861,10 @@ class Worker {
 
        /**
         * @brief Removes a workerqueue entry from the current process
+        * @return void
         */
-       public static function unclaimProcess() {
+       public static function unclaimProcess()
+       {
                $mypid = getmypid();
 
                dba::update('workerqueue', array('executed' => NULL_DATE, 'pid' => 0), array('pid' => $mypid, 'done' => false));
@@ -822,8 +872,10 @@ class Worker {
 
        /**
         * @brief Call the front end worker
+        * @return void
         */
-       public static function callWorker() {
+       public static function callWorker()
+       {
                if (!Config::get("system", "frontend_worker")) {
                        return;
                }
@@ -834,8 +886,10 @@ class Worker {
 
        /**
         * @brief Call the front end worker if there aren't any active
+        * @return void
         */
-       public static function executeIfIdle() {
+       public static function executeIfIdle()
+       {
                if (!Config::get("system", "frontend_worker")) {
                        return;
                }
@@ -882,20 +936,24 @@ class Worker {
 
        /**
         * @brief Removes long running worker processes
+        * @return void
         */
-       public static function clearProcesses() {
+       public static function clearProcesses()
+       {
                $timeout = Config::get("system", "frontend_worker_timeout", 10);
 
                /// @todo We should clean up the corresponding workerqueue entries as well
                $condition = array("`created` < ? AND `command` = 'worker.php'",
-                               datetime_convert('UTC','UTC',"now - ".$timeout." minutes"));
+                               datetime_convert('UTC', 'UTC', "now - ".$timeout." minutes"));
                dba::delete('process', $condition);
        }
 
        /**
         * @brief Runs the cron processes
+        * @return void
         */
-       private static function runCron() {
+       private static function runCron()
+       {
                logger('Add cron entries', LOGGER_DEBUG);
 
                // Check for spooled items
@@ -932,7 +990,8 @@ class Worker {
         *
         * @return boolean "false" if proc_run couldn't be executed
         */
-       public static function add($cmd) {
+       public static function add($cmd)
+       {
                $proc_args = func_get_args();
 
                $args = array();
index 9495a264cc5708129918f1785e3414ec651dc9f0..7b52c0a552c4817d3b39e23d9ddb261839f461f0 100644 (file)
@@ -27,7 +27,7 @@ class DBM
 
                $processes = 0;
                $states = array();
-               foreach ($r AS $process) {
+               foreach ($r as $process) {
                        $state = trim($process["State"]);
 
                        // Filter out all non blocking processes
@@ -38,7 +38,7 @@ class DBM
                }
 
                $statelist = "";
-               foreach ($states AS $state => $usage) {
+               foreach ($states as $state => $usage) {
                        if ($statelist != "") {
                                $statelist .= ", ";
                        }
@@ -74,6 +74,7 @@ class DBM
         * @param mixed   $value         Array value
         * @param string  $key           Array key
         * @param boolean $add_quotation add quotation marks for string values
+        * @return void
         */
        private static function esc_array_callback(&$value, $key, $add_quotation)
        {
@@ -100,6 +101,7 @@ class DBM
         *
         * @param mixed   $arr           Array with values to be escaped
         * @param boolean $add_quotation add quotation marks for string values
+        * @return void
         */
        public static function esc_array(&$arr, $add_quotation = false)
        {
index 67fe27e8e5e1c29ec4de10819e97be52f57ee317..44fbd64b6d1eb20c1163849b2ab335c098560adc 100644 (file)
@@ -94,6 +94,7 @@ class GlobalContact
         * @param integer $uid  User ID
         * @param integer $cid  Contact ID
         * @param integer $zcid Global Contact ID
+        * @return void
         */
        public static function link($gcid, $uid = 0, $cid = 0, $zcid = 0)
        {
@@ -142,6 +143,7 @@ class GlobalContact
         *  2: Contacts of profiles on this server
         *  3: Contacts of contacts of profiles on this server
         *  4: ...
+        * @return array $gcontact
         */
        public static function sanitize($gcontact)
        {
@@ -273,6 +275,11 @@ class GlobalContact
                return $gcontact;
        }
 
+       /**
+        * @param integer $uid id
+        * @param integer $cid id
+        * @return integer
+        */
        public static function countCommonFriends($uid, $cid)
        {
                $r = q(
@@ -295,6 +302,11 @@ class GlobalContact
                return 0;
        }
 
+       /**
+        * @param integer $uid  id
+        * @param integer $zcid zcid
+        * @return integer
+        */
        public static function countCommonFriendsZcid($uid, $zcid)
        {
                $r = q(
@@ -313,6 +325,14 @@ class GlobalContact
                return 0;
        }
 
+       /**
+        * @param object  $uid     user
+        * @param object  $cid     cid
+        * @param integer $start   optional, default 0
+        * @param integer $limit   optional, default 9999
+        * @param boolean $shuffle optional, default false
+        * @return object
+        */
        public static function commonFriends($uid, $cid, $start = 0, $limit = 9999, $shuffle = false)
        {
                if ($shuffle) {
@@ -343,7 +363,15 @@ class GlobalContact
                return $r;
        }
 
-       function commonFriendsZcid($uid, $zcid, $start = 0, $limit = 9999, $shuffle = false)
+       /**
+        * @param object  $uid     user
+        * @param object  $zcid    zcid
+        * @param integer $start   optional, default 0
+        * @param integer $limit   optional, default 9999
+        * @param boolean $shuffle optional, default false
+        * @return object
+        */
+       public static function commonFriendsZcid($uid, $zcid, $start = 0, $limit = 9999, $shuffle = false)
        {
                if ($shuffle) {
                        $sql_extra = " order by rand() ";
@@ -367,6 +395,11 @@ class GlobalContact
                return $r;
        }
 
+       /**
+        * @param object $uid user
+        * @param object $cid cid
+        * @return integer
+        */
        public static function countAllFriends($uid, $cid)
        {
                $r = q(
@@ -385,7 +418,13 @@ class GlobalContact
                return 0;
        }
 
-
+       /**
+        * @param object  $uid   user
+        * @param object  $cid   cid
+        * @param integer $start optional, default 0
+        * @param integer $limit optional, default 80
+        * @return object
+        */
        public static function allFriends($uid, $cid, $start = 0, $limit = 80)
        {
                $r = q(
@@ -407,6 +446,12 @@ class GlobalContact
                return $r;
        }
 
+       /**
+        * @param object  $uid   user
+        * @param integer $start optional, default 0
+        * @param integer $limit optional, default 80
+        * @return array
+        */
        public static function suggestionQuery($uid, $start = 0, $limit = 80)
        {
                if (!$uid) {
@@ -507,6 +552,9 @@ class GlobalContact
                return $list;
        }
 
+       /**
+        * @return void
+        */
        public static function updateSuggestions()
        {
                $a = get_app();
@@ -588,6 +636,7 @@ class GlobalContact
         * @brief Replace alternate OStatus user format with the primary one
         *
         * @param arr $contact contact array (called by reference)
+        * @return void
         */
        public static function fixAlternateContactAddress(&$contact)
        {
@@ -859,6 +908,7 @@ class GlobalContact
         * @brief Updates the gcontact entry from probe
         *
         * @param str $url profile link
+        * @return void
         */
        public static function updateFromProbe($url)
        {
@@ -878,6 +928,7 @@ class GlobalContact
         * @brief Update the gcontact entry for a given user id
         *
         * @param int $uid User ID
+        * @return void
         */
        public static function updateForUser($uid)
        {
@@ -923,6 +974,7 @@ class GlobalContact
         * If the "Statistics" plugin is enabled (See http://gstools.org/ for details) we query user data with this.
         *
         * @param str $server Server address
+        * @return void
         */
        public static function fetchGsUsers($server)
        {
@@ -978,7 +1030,7 @@ class GlobalContact
 
        /**
         * @brief Asking GNU Social server on a regular base for their user data
-        *
+        * @return void
         */
        public static function discoverGsUsers()
        {
index c6bf46f7927517116e68f946eb1baa3977d8222e..cb5fcd8b278779da684495aec3e6b2a365052387 100644 (file)
@@ -1,11 +1,12 @@
 <?php
-
+/**
+ * @file src/Network/Probe.php
+ */
 namespace Friendica\Network;
 
 /**
  * @file src/Network/Probe.php
  * @brief Functions for probing URL
- *
  */
 
 use Friendica\App;
@@ -28,8 +29,8 @@ require_once 'include/network.php';
  * @brief This class contain functions for probing URL
  *
  */
-class Probe {
-
+class Probe
+{
        private static $baseurl;
 
        /**
@@ -39,7 +40,8 @@ class Probe {
         *
         * @return array Ordered data
         */
-       private static function rearrangeData($data) {
+       private static function rearrangeData($data)
+       {
                $fields = array("name", "nick", "guid", "url", "addr", "alias",
                                "photo", "community", "keywords", "location", "about",
                                "batch", "notify", "poll", "request", "confirm", "poco",
@@ -67,7 +69,8 @@ class Probe {
         *
         * @return bool Does the testes hostname belongs to the own server?
         */
-       private static function ownHost($host) {
+       private static function ownHost($host)
+       {
                $own_host = get_app()->get_hostname();
 
                $parts = parse_url($host);
@@ -89,8 +92,8 @@ class Probe {
         *
         * @return array with template and type of the webfinger template for JSON or XML
         */
-       private static function hostMeta($host) {
-
+       private static function hostMeta($host)
+       {
                // Reset the static variable
                self::$baseurl = '';
 
@@ -174,13 +177,13 @@ class Probe {
         * amended 7/9/2011 to return an hcard which could save potentially loading
         * a lengthy content page to scrape dfrn attributes
         *
-        * @param string $webbie Address that should be probed
+        * @param string $webbie    Address that should be probed
         * @param string $hcard_url Link to the hcard - is returned by reference
         *
         * @return string profile link
         */
-       public static function webfingerDfrn($webbie, &$hcard_url) {
-
+       public static function webfingerDfrn($webbie, &$hcard_url)
+       {
                $profile_link = '';
 
                $links = self::lrdd($webbie);
@@ -212,8 +215,8 @@ class Probe {
         *
         * @return array uri data
         */
-       public static function lrdd($uri) {
-
+       public static function lrdd($uri)
+       {
                $lrdd = self::hostMeta($uri);
                $webfinger = null;
 
@@ -247,7 +250,7 @@ class Probe {
                        return array();
                }
 
-               foreach ($lrdd AS $type => $template) {
+               foreach ($lrdd as $type => $template) {
                        if ($webfinger) {
                                continue;
                        }
@@ -299,15 +302,15 @@ class Probe {
        /**
         * @brief Fetch information (protocol endpoints and user information) about a given uri
         *
-        * @param string $uri Address that should be probed
-        * @param string $network Test for this specific network
-        * @param integer $uid User ID for the probe (only used for mails)
-        * @param boolean $cache Use cached values?
+        * @param string  $uri     Address that should be probed
+        * @param string  $network Test for this specific network
+        * @param integer $uid     User ID for the probe (only used for mails)
+        * @param boolean $cache   Use cached values?
         *
         * @return array uri data
         */
-       public static function uri($uri, $network = "", $uid = -1, $cache = true) {
-
+       public static function uri($uri, $network = "", $uid = -1, $cache = true)
+       {
                if ($cache) {
                        $result = Cache::get("Probe::uri:".$network.":".$uri);
                        if (!is_null($result)) {
@@ -389,7 +392,7 @@ class Probe {
 
                                $fieldnames = array();
 
-                               foreach ($fields AS $key => $val) {
+                               foreach ($fields as $key => $val) {
                                        if (empty($val)) {
                                                unset($fields[$key]);
                                        } else {
@@ -424,7 +427,7 @@ class Probe {
 
                                $fieldnames = array();
 
-                               foreach ($fields AS $key => $val) {
+                               foreach ($fields as $key => $val) {
                                        if (empty($val)) {
                                                unset($fields[$key]);
                                        } else {
@@ -450,7 +453,8 @@ class Probe {
         *
         * @return string switched URL
         */
-       private static function switchScheme($url) {
+       private static function switchScheme($url)
+       {
                $parts = parse_url($url);
 
                if (!isset($parts['scheme'])) {
@@ -469,12 +473,14 @@ class Probe {
        /**
         * @brief Checks if a profile url should be OStatus but only provides partial information
         *
-        * @param array $webfinger Webfinger data
-        * @param string $lrdd Path template for webfinger request
+        * @param array  $webfinger Webfinger data
+        * @param string $lrdd      Path template for webfinger request
+        * @param string $type      type
         *
         * @return array fixed webfinger data
         */
-       private static function fixOstatus($webfinger, $lrdd, $type) {
+       private static function fixOStatus($webfinger, $lrdd, $type)
+       {
                if (empty($webfinger['links']) || empty($webfinger['subject'])) {
                        return $webfinger;
                }
@@ -512,13 +518,14 @@ class Probe {
         *
         * This function is only called by the "uri" function that adds caching and rearranging of data.
         *
-        * @param string $uri Address that should be probed
-        * @param string $network Test for this specific network
-        * @param integer $uid User ID for the probe (only used for mails)
+        * @param string  $uri     Address that should be probed
+        * @param string  $network Test for this specific network
+        * @param integer $uid     User ID for the probe (only used for mails)
         *
         * @return array uri data
         */
-       private static function detect($uri, $network, $uid) {
+       private static function detect($uri, $network, $uid)
+       {
                $parts = parse_url($uri);
 
                if (!empty($parts["scheme"]) && !empty($parts["host"]) && !empty($parts["path"])) {
@@ -552,7 +559,6 @@ class Probe {
                        $nick = ltrim($nick, '@');
 
                        $addr = $nick."@".$host;
-
                } elseif (strstr($uri, '@')) {
                        // If the URI starts with "mailto:" then jump directly to the mail detection
                        if (strpos($uri, 'mailto:') !== false) {
@@ -583,7 +589,6 @@ class Probe {
                                return self::mail($uri, $uid);
                        }
                        $addr = $uri;
-
                } else {
                        logger("Uri ".$uri." was not detectable", LOGGER_DEBUG);
                        return false;
@@ -593,7 +598,7 @@ class Probe {
 
                /// @todo Do we need the prefix "acct:" or "acct://"?
 
-               foreach ($lrdd AS $type => $template) {
+               foreach ($lrdd as $type => $template) {
                        if ($webfinger) {
                                continue;
                        }
@@ -603,7 +608,7 @@ class Probe {
                        $webfinger = self::webfinger($path, $type);
 
                        // Fix possible problems with GNU Social probing to wrong scheme
-                       $webfinger = self::fixOstatus($webfinger, $template, $type);
+                       $webfinger = self::fixOStatus($webfinger, $template, $type);
 
                        // We cannot be sure that the detected address was correct, so we don't use the values
                        if ($webfinger && ($uri != $addr)) {
@@ -675,17 +680,18 @@ class Probe {
         *
         * For details see RFC 7033: <https://tools.ietf.org/html/rfc7033>
         *
-        * @param string $url Address that should be probed
+        * @param string $url  Address that should be probed
+        * @param string $type type
         *
         * @return array webfinger data
         */
-       private static function webfinger($url, $type) {
-
+       private static function webfinger($url, $type)
+       {
                $xrd_timeout = Config::get('system', 'xrd_timeout', 20);
                $redirects = 0;
 
                $ret = z_fetch_url($url, false, $redirects, array('timeout' => $xrd_timeout, 'accept_content' => $type));
-                       if ($ret['errno'] == CURLE_OPERATION_TIMEDOUT) {
+               if ($ret['errno'] == CURLE_OPERATION_TIMEDOUT) {
                        return false;
                }
                $data = $ret['body'];
@@ -745,11 +751,12 @@ class Probe {
         * This functionality was originally created for the directory.
         *
         * @param string $noscrape_url Link to the noscrape page
-        * @param array $data The already fetched data
+        * @param array  $data         The already fetched data
         *
         * @return array noscrape data
         */
-       private static function pollNoscrape($noscrape_url, $data) {
+       private static function pollNoscrape($noscrape_url, $data)
+       {
                $ret = z_fetch_url($noscrape_url);
                if ($ret['errno'] == CURLE_OPERATION_TIMEDOUT) {
                        return false;
@@ -836,7 +843,8 @@ class Probe {
         *
         * @return int Number of errors
         */
-       public static function validDfrn($data) {
+       public static function validDfrn($data)
+       {
                $errors = 0;
                if (!isset($data['key'])) {
                        $errors ++;
@@ -863,8 +871,8 @@ class Probe {
         *
         * @return array profile data
         */
-       public static function profile($profile_link) {
-
+       public static function profile($profile_link)
+       {
                $data = array();
 
                logger("Check profile ".$profile_link, LOGGER_DEBUG);
@@ -908,7 +916,8 @@ class Probe {
         *
         * @return array DFRN data
         */
-       private static function dfrn($webfinger) {
+       private static function dfrn($webfinger)
+       {
                $hcard_url = "";
                $data = array();
                foreach ($webfinger["links"] as $link) {
@@ -974,13 +983,14 @@ class Probe {
        /**
         * @brief Poll the hcard page (Diaspora and Friendica specific)
         *
-        * @param string $hcard_url Link to the hcard page
-        * @param array $data The already fetched data
-        * @param boolean $dfrn Poll DFRN specific data
+        * @param string  $hcard_url Link to the hcard page
+        * @param array   $data      The already fetched data
+        * @param boolean $dfrn      Poll DFRN specific data
         *
         * @return array hcard data
         */
-       private static function pollHcard($hcard_url, $data, $dfrn = false) {
+       private static function pollHcard($hcard_url, $data, $dfrn = false)
+       {
                $ret = z_fetch_url($hcard_url);
                if ($ret['errno'] == CURLE_OPERATION_TIMEDOUT) {
                        return false;
@@ -1097,7 +1107,8 @@ class Probe {
         *
         * @return array Diaspora data
         */
-       private static function diaspora($webfinger) {
+       private static function diaspora($webfinger)
+       {
                $hcard_url = "";
                $data = array();
                foreach ($webfinger["links"] as $link) {
@@ -1175,11 +1186,12 @@ class Probe {
         * @brief Check for OStatus contact
         *
         * @param array $webfinger Webfinger data
-        * @param bool $short Short detection mode
+        * @param bool  $short     Short detection mode
         *
         * @return array|bool OStatus data or "false" on error or "true" on short mode
         */
-       private static function ostatus($webfinger, $short = false) {
+       private static function ostatus($webfinger, $short = false)
+       {
                $data = array();
 
                if (is_array($webfinger["aliases"])) {
@@ -1190,8 +1202,9 @@ class Probe {
                        }
                }
 
-               if (is_string($webfinger["subject"]) && strstr($webfinger["subject"], "@") &&
-                       !strstr(normalise_link($webfinger["subject"]), "http://")) {
+               if (is_string($webfinger["subject"]) && strstr($webfinger["subject"], "@")
+                       && !strstr(normalise_link($webfinger["subject"]), "http://")
+               ) {
                        $data["addr"] = str_replace('acct:', '', $webfinger["subject"]);
                }
 
@@ -1299,8 +1312,8 @@ class Probe {
         *
         * @return array profile data
         */
-       private static function pumpioProfileData($profile_link) {
-
+       private static function pumpioProfileData($profile_link)
+       {
                $doc = new DOMDocument();
                if (!@$doc->loadHTMLFile($profile_link)) {
                        return false;
@@ -1339,8 +1352,8 @@ class Probe {
         *
         * @return array pump.io data
         */
-       private static function pumpio($webfinger) {
-
+       private static function pumpio($webfinger)
+       {
                $data = array();
                foreach ($webfinger["links"] as $link) {
                        if (($link["rel"] == "http://webfinger.net/rel/profile-page")
@@ -1387,7 +1400,8 @@ class Probe {
         *
         * @return string feed link
         */
-       private static function getFeedLink($url) {
+       private static function getFeedLink($url)
+       {
                $doc = new DOMDocument();
 
                if (!@$doc->loadHTMLFile($url)) {
@@ -1425,12 +1439,13 @@ class Probe {
        /**
         * @brief Check for feed contact
         *
-        * @param string $url Profile link
+        * @param string  $url   Profile link
         * @param boolean $probe Do a probe if the page contains a feed link
         *
         * @return array feed data
         */
-       private static function feed($url, $probe = true) {
+       private static function feed($url, $probe = true)
+       {
                $ret = z_fetch_url($url);
                if ($ret['errno'] == CURLE_OPERATION_TIMEDOUT) {
                        return false;
@@ -1485,13 +1500,13 @@ class Probe {
        /**
         * @brief Check for mail contact
         *
-        * @param string $uri Profile link
+        * @param string  $uri Profile link
         * @param integer $uid User ID
         *
         * @return array mail data
         */
-       private static function mail($uri, $uid) {
-
+       private static function mail($uri, $uid)
+       {
                if (!validate_email($uri)) {
                        return false;
                }
@@ -1568,11 +1583,12 @@ class Probe {
         * @brief Mix two paths together to possibly fix missing parts
         *
         * @param string $avatar Path to the avatar
-        * @param string $base Another path that is hopefully complete
+        * @param string $base   Another path that is hopefully complete
         *
         * @return string fixed avatar path
         */
-       public static function fixAvatar($avatar, $base) {
+       public static function fixAvatar($avatar, $base)
+       {
                $base_parts = parse_url($base);
 
                // Remove all parts that could create a problem
index 047876279b7444ea2e1bddfdda0a32e4fac48a2a..0183fdb3f54eafef2ff0c36ef83e12b17dadbcc6 100644 (file)
@@ -454,6 +454,7 @@ class ParseUrl
         *
         * @param string $tag The pure tag name
         * @param int    $k   Counter for internal use
+        * @return void
         */
        private static function arrAddHashes(&$tag, $k)
        {
index 9d96962964cf55ea8be5aadf952cf7e0be419444..9c449844597c56620bb90106ce67bd19fe4772c8 100644 (file)
@@ -1,11 +1,12 @@
 <?php
-
+/**
+ * @file src/Util/Lock.php
+ */
 namespace Friendica\Util;
 
 /**
  * @file src/Util/Lock.php
  * @brief Functions for preventing parallel execution of functions
- *
  */
 
 use Friendica\Core\Config;
@@ -16,7 +17,8 @@ use dba;
 /**
  * @brief This class contain Functions for preventing parallel execution of functions
  */
-class Lock {
+class Lock
+{
        private static $semaphore = array();
 
        /**
@@ -24,7 +26,8 @@ class Lock {
         *
         * @return object|boolean The memcache object - or "false" if not successful
         */
-       private static function connectMemcache() {
+       private static function connectMemcache()
+       {
                if (!function_exists('memcache_connect')) {
                        return false;
                }
@@ -52,7 +55,8 @@ class Lock {
         *
         * @return ressource the semaphore key
         */
-       private static function semaphoreKey($fn_name) {
+       private static function semaphoreKey($fn_name)
+       {
                $temp = get_temppath();
 
                $file = $temp.'/'.$fn_name.'.sem';
@@ -67,12 +71,13 @@ class Lock {
        /**
         * @brief Sets a lock for a given name
         *
-        * @param string $fn_name Name of the lock
+        * @param string  $fn_name Name of the lock
         * @param integer $timeout Seconds until we give up
         *
         * @return boolean Was the lock successful?
         */
-       public static function set($fn_name, $timeout = 120) {
+       public static function set($fn_name, $timeout = 120)
+       {
                $got_lock = false;
                $start = time();
 
@@ -155,8 +160,10 @@ class Lock {
         * @brief Removes a lock if it was set by us
         *
         * @param string $fn_name Name of the lock
+        * @return mixed
         */
-       public static function remove($fn_name) {
+       public static function remove($fn_name)
+       {
                if (function_exists('sem_get') && version_compare(PHP_VERSION, '5.6.1', '>=')) {
                        if (empty(self::$semaphore[$fn_name])) {
                                return false;
@@ -186,8 +193,10 @@ class Lock {
 
        /**
         * @brief Removes all lock that were set by us
+        * @return void
         */
-       public static function removeAll() {
+       public static function removeAll()
+       {
                $memcache = self::connectMemcache();
                if (is_object($memcache)) {
                        // We cannot delete all cache entries, but this doesn't matter with memcache