From 64847e7cc8ca8f157cae4994c71b93df28624d6f Mon Sep 17 00:00:00 2001 From: Hypolite Petovan Date: Mon, 21 Jan 2019 16:51:59 -0500 Subject: [PATCH] Fix types in doc blocks/prototypes --- src/Content/Widget/TagCloud.php | 2 +- src/Core/Console.php | 1 + src/Core/Renderer.php | 1 + src/Core/StorageManager.php | 3 ++ src/Model/Attach.php | 4 +++ src/Model/Mail.php | 4 +-- src/Model/Photo.php | 6 +++- src/Object/Image.php | 1 + src/Protocol/DFRN.php | 60 ++++++++++++++++----------------- src/Protocol/Diaspora.php | 12 +++---- src/Protocol/Email.php | 26 +++++++------- src/Protocol/OStatus.php | 16 ++++----- src/Util/Temporal.php | 8 ++--- src/Util/XML.php | 24 ++++++------- 14 files changed, 91 insertions(+), 77 deletions(-) diff --git a/src/Content/Widget/TagCloud.php b/src/Content/Widget/TagCloud.php index d775d010a8..f2b94b1114 100644 --- a/src/Content/Widget/TagCloud.php +++ b/src/Content/Widget/TagCloud.php @@ -113,7 +113,7 @@ class TagCloud * @param array $arr Array of tags/terms with tag/term name and total count of use. * @return array Alphabetical sorted array of used tags/terms of an user. */ - private static function tagCalc($arr) + private static function tagCalc(array $arr) { $tags = []; $min = 1e9; diff --git a/src/Core/Console.php b/src/Core/Console.php index 32e12fa1f0..c60f36296a 100644 --- a/src/Core/Console.php +++ b/src/Core/Console.php @@ -121,6 +121,7 @@ HELP; $className = $this->subConsoles[$command]; + /** @var Console $subconsole */ $subconsole = new $className($subargs); foreach ($this->options as $name => $value) { diff --git a/src/Core/Renderer.php b/src/Core/Renderer.php index 9d2a7e22e5..67bc5e3bab 100644 --- a/src/Core/Renderer.php +++ b/src/Core/Renderer.php @@ -8,6 +8,7 @@ namespace Friendica\Core; use Exception; use Friendica\BaseObject; use Friendica\Render\FriendicaSmarty; +use Friendica\Render\ITemplateEngine; /** * @brief This class handles Renderer related functions. diff --git a/src/Core/StorageManager.php b/src/Core/StorageManager.php index 415ee522b6..cfefa5f35a 100644 --- a/src/Core/StorageManager.php +++ b/src/Core/StorageManager.php @@ -3,6 +3,7 @@ namespace Friendica\Core; use Friendica\Database\DBA; +use Friendica\Model\Storage\IStorage; /** @@ -138,6 +139,7 @@ class StorageManager while($r = DBA::fetch($rr)) { $id = $r['id']; $data = $r['data']; + /** @var IStorage $backendClass */ $backendClass = $r['backend-class']; $backendRef = $r['backend-ref']; if (!is_null($backendClass) && $backendClass !== '') { @@ -146,6 +148,7 @@ class StorageManager } Logger::log("save data to new backend " . $dest); + /** @var IStorage $dest */ $ref = $dest::put($data); Logger::log("saved data as " . $ref); diff --git a/src/Model/Attach.php b/src/Model/Attach.php index 3bd77ef9c9..7efb56f95a 100644 --- a/src/Model/Attach.php +++ b/src/Model/Attach.php @@ -11,6 +11,7 @@ use Friendica\Core\System; use Friendica\Core\StorageManager; use Friendica\Database\DBA; use Friendica\Database\DBStructure; +use Friendica\Model\Storage\IStorage; use Friendica\Object\Image; use Friendica\Util\Security; use Friendica\Util\DateTimeFormat; @@ -186,6 +187,7 @@ class Attach extends BaseObject $filesize = strlen($data); } + /** @var IStorage $backend_class */ $backend_class = StorageManager::getBackend(); $backend_ref = ''; if ($backend_class !== '') { @@ -265,6 +267,7 @@ class Attach extends BaseObject $items = self::select(['backend-class','backend-ref'], $conditions); foreach($items as $item) { + /** @var IStorage $backend_class */ $backend_class = (string)$item['backend-class']; if ($backend_class !== '') { $fields['backend-ref'] = $backend_class::put($img->asString(), $item['backend-ref']); @@ -297,6 +300,7 @@ class Attach extends BaseObject $items = self::select(['backend-class','backend-ref'], $conditions); foreach($items as $item) { + /** @var IStorage $backend_class */ $backend_class = (string)$item['backend-class']; if ($backend_class !== '') { $backend_class::delete($item['backend-ref']); diff --git a/src/Model/Mail.php b/src/Model/Mail.php index b9ed609fa1..2d304e55f8 100644 --- a/src/Model/Mail.php +++ b/src/Model/Mail.php @@ -157,7 +157,7 @@ class Mail } /** - * @param string $recipient recipient, default empty + * @param array $recipient recipient, default empty * @param string $body message body, default empty * @param string $subject message subject, default empty * @param string $replyto reply to, default empty @@ -165,7 +165,7 @@ class Mail * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ - public static function sendWall($recipient = '', $body = '', $subject = '', $replyto = '') + public static function sendWall(array $recipient = [], $body = '', $subject = '', $replyto = '') { if (!$recipient) { return -1; diff --git a/src/Model/Photo.php b/src/Model/Photo.php index 1cee2f633b..0778bf4196 100644 --- a/src/Model/Photo.php +++ b/src/Model/Photo.php @@ -14,6 +14,7 @@ use Friendica\Core\System; use Friendica\Core\StorageManager; use Friendica\Database\DBA; use Friendica\Database\DBStructure; +use Friendica\Model\Storage\IStorage; use Friendica\Object\Image; use Friendica\Util\DateTimeFormat; use Friendica\Util\Network; @@ -268,6 +269,7 @@ class Photo extends BaseObject $data = ""; $backend_ref = ""; + /** @var IStorage $backend_class */ if (DBA::isResult($existing_photo)) { $backend_ref = (string)$existing_photo["backend-ref"]; $backend_class = (string)$existing_photo["backend-class"]; @@ -334,6 +336,7 @@ class Photo extends BaseObject $photos = self::select(["backend-class","backend-ref"], $conditions); foreach($photos as $photo) { + /** @var IStorage $backend_class */ $backend_class = (string)$photo["backend-class"]; if ($backend_class !== "") { $backend_class::delete($photo["backend-ref"]); @@ -363,6 +366,7 @@ class Photo extends BaseObject $photos = self::select(["backend-class","backend-ref"], $conditions); foreach($photos as $photo) { + /** @var IStorage $backend_class */ $backend_class = (string)$photo["backend-class"]; if ($backend_class !== "") { $fields["backend-ref"] = $backend_class::put($img->asString(), $photo["backend-ref"]); @@ -479,7 +483,7 @@ class Photo extends BaseObject } /** - * @param string $exifCoord coordinate + * @param array $exifCoord coordinate * @param string $hemi hemi * @return float */ diff --git a/src/Object/Image.php b/src/Object/Image.php index 1fe0a048b9..9143c23c16 100644 --- a/src/Object/Image.php +++ b/src/Object/Image.php @@ -23,6 +23,7 @@ use ImagickPixel; */ class Image { + /** @var Imagick|resource */ private $image; /* diff --git a/src/Protocol/DFRN.php b/src/Protocol/DFRN.php index cf6080c572..e6524de965 100644 --- a/src/Protocol/DFRN.php +++ b/src/Protocol/DFRN.php @@ -529,17 +529,17 @@ class DFRN /** * @brief Adds the header elements for the DFRN protocol * - * @param object $doc XML document - * @param array $owner Owner record - * @param string $authorelement Element name for the author - * @param string $alternatelink link to profile or category - * @param bool $public Is it a header for public posts? + * @param DOMDocument $doc XML document + * @param array $owner Owner record + * @param string $authorelement Element name for the author + * @param string $alternatelink link to profile or category + * @param bool $public Is it a header for public posts? * * @return object XML root object * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @todo Find proper type-hints */ - private static function addHeader($doc, $owner, $authorelement, $alternatelink = "", $public = false) + private static function addHeader(DOMDocument $doc, $owner, $authorelement, $alternatelink = "", $public = false) { if ($alternatelink == "") { @@ -607,16 +607,16 @@ class DFRN /** * @brief Adds the author element in the header for the DFRN protocol * - * @param object $doc XML document - * @param array $owner Owner record - * @param string $authorelement Element name for the author - * @param boolean $public boolean + * @param DOMDocument $doc XML document + * @param array $owner Owner record + * @param string $authorelement Element name for the author + * @param boolean $public boolean * - * @return object XML author object + * @return \DOMElement XML author object * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @todo Find proper type-hints */ - private static function addAuthor($doc, $owner, $authorelement, $public) + private static function addAuthor(DOMDocument $doc, array $owner, $authorelement, $public) { // Is the profile hidden or shouldn't be published in the net? Then add the "hide" element $r = q( @@ -752,16 +752,16 @@ class DFRN /** * @brief Adds the author elements in the "entry" elements of the DFRN protocol * - * @param object $doc XML document + * @param DOMDocument $doc XML document * @param string $element Element name for the author * @param string $contact_url Link of the contact * @param array $item Item elements * - * @return object XML author object + * @return \DOMElement XML author object * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @todo Find proper type-hints */ - private static function addEntryAuthor($doc, $element, $contact_url, $item) + private static function addEntryAuthor(DOMDocument $doc, $element, $contact_url, $item) { $contact = Contact::getDetailsByURL($contact_url, $item["uid"]); @@ -795,15 +795,15 @@ class DFRN /** * @brief Adds the activity elements * - * @param object $doc XML document - * @param string $element Element name for the activity - * @param string $activity activity value + * @param DOMDocument $doc XML document + * @param string $element Element name for the activity + * @param string $activity activity value * - * @return object XML activity object + * @return \DOMElement XML activity object * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @todo Find proper type-hints */ - private static function createActivity($doc, $element, $activity) + private static function createActivity(DOMDocument $doc, $element, $activity) { if ($activity) { $entry = $doc->createElement($element); @@ -898,20 +898,20 @@ class DFRN /** * @brief Adds the "entry" elements for the DFRN protocol * - * @param object $doc XML document - * @param string $type "text" or "html" - * @param array $item Item element - * @param array $owner Owner record - * @param bool $comment Trigger the sending of the "comment" element - * @param int $cid Contact ID of the recipient - * @param bool $single If set, the entry is created as an XML document with a single "entry" element + * @param DOMDocument $doc XML document + * @param string $type "text" or "html" + * @param array $item Item element + * @param array $owner Owner record + * @param bool $comment Trigger the sending of the "comment" element + * @param int $cid Contact ID of the recipient + * @param bool $single If set, the entry is created as an XML document with a single "entry" element * - * @return object XML entry object + * @return \DOMElement XML entry object * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException * @todo Find proper type-hints */ - private static function entry($doc, $type, array $item, array $owner, $comment = false, $cid = 0, $single = false) + private static function entry(DOMDocument $doc, $type, array $item, array $owner, $comment = false, $cid = 0, $single = false) { $mentioned = []; @@ -2414,7 +2414,7 @@ class DFRN * @param object $xpath XPath object * @param object $entry entry elements * @param array $importer Record of the importer user mixed with contact of the content - * @param object $xml xml + * @param string $xml xml * @return void * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException diff --git a/src/Protocol/Diaspora.php b/src/Protocol/Diaspora.php index e9d3be805f..34bdf2e876 100644 --- a/src/Protocol/Diaspora.php +++ b/src/Protocol/Diaspora.php @@ -648,15 +648,15 @@ class Diaspora /** * @brief Dispatches the different message types to the different functions * - * @param array $importer Array of the importer user - * @param array $msg The post that will be dispatched - * @param object $fields SimpleXML object that contains the message + * @param array $importer Array of the importer user + * @param array $msg The post that will be dispatched + * @param SimpleXMLElement $fields SimpleXML object that contains the message * * @return int The message id of the generated message, "true" or "false" if there was an error * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ - public static function dispatch(array $importer, $msg, $fields = null) + public static function dispatch(array $importer, $msg, SimpleXMLElement $fields = null) { // The sender is the handle of the contact that sent the message. // This will often be different with relayed messages (for example "like" and "comment") @@ -758,7 +758,7 @@ class Diaspora * * @param array $msg Array with the XML, the sender handle and the sender signature * - * @return bool|array If the posting is valid then an array with an SimpleXML object is returned + * @return bool|SimpleXMLElement If the posting is valid then an array with an SimpleXML object is returned * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ @@ -1077,7 +1077,7 @@ class Diaspora * @param int $uid The user id * @param string $handle The handle in the format user@domain.tld * - * @return int Contact id + * @return array Contact data * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ diff --git a/src/Protocol/Email.php b/src/Protocol/Email.php index 05d59a1525..a6090ce91f 100644 --- a/src/Protocol/Email.php +++ b/src/Protocol/Email.php @@ -17,7 +17,7 @@ class Email * @param string $mailbox The mailbox name * @param string $username The username * @param string $password The password - * @return object + * @return resource * @throws \Exception */ public static function connect($mailbox, $username, $password) @@ -42,8 +42,8 @@ class Email } /** - * @param object $mbox mailbox - * @param string $email_addr email + * @param resource $mbox mailbox + * @param string $email_addr email * @return array * @throws \Exception */ @@ -92,8 +92,8 @@ class Email } /** - * @param object $mbox mailbox - * @param integer $uid user id + * @param resource $mbox mailbox + * @param integer $uid user id * @return mixed */ public static function messageMeta($mbox, $uid) @@ -103,9 +103,9 @@ class Email } /** - * @param object $mbox mailbox - * @param integer $uid user id - * @param string $reply reply + * @param resource $mbox mailbox + * @param integer $uid user id + * @param string $reply reply * @return array * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ @@ -166,11 +166,11 @@ class Email // At the moment - only return plain/text. // Later we'll repackage inline images as data url's and make the HTML safe /** - * @param object $mbox mailbox - * @param integer $uid user id - * @param object $p parts - * @param integer $partno part number - * @param string $subtype sub type + * @param resource $mbox mailbox + * @param integer $uid user id + * @param object $p parts + * @param integer $partno part number + * @param string $subtype sub type * @return string */ private static function messageGetPart($mbox, $uid, $p, $partno, $subtype) diff --git a/src/Protocol/OStatus.php b/src/Protocol/OStatus.php index b1cc4f4020..b2d0004c06 100644 --- a/src/Protocol/OStatus.php +++ b/src/Protocol/OStatus.php @@ -1453,7 +1453,7 @@ class OStatus * @param array $owner Contact data of the poster * @param bool $show_profile Whether to show profile * - * @return object author element + * @return \DOMElement author element * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ private static function addAuthor(DOMDocument $doc, array $owner, $show_profile = true) @@ -1573,7 +1573,7 @@ class OStatus * @param bool $toplevel optional default false * @param bool $feed_mode Behave like a regular feed for users if true * - * @return object Entry element + * @return \DOMElement Entry element * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ @@ -1605,7 +1605,7 @@ class OStatus * @param DOMDocument $doc XML document * @param array $contact Array of the contact that is added * - * @return object Source element + * @return \DOMElement Source element * @throws \Exception */ private static function sourceEntry(DOMDocument $doc, array $contact) @@ -1748,7 +1748,7 @@ class OStatus * @param array $owner Contact data of the poster * @param bool $toplevel Is it for en entry element (false) or a feed entry (true)? * - * @return object Entry element with "like" + * @return \DOMElement Entry element with "like" * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ @@ -1835,7 +1835,7 @@ class OStatus * @param array $owner Contact data of the poster * @param bool $toplevel Is it for en entry element (false) or a feed entry (true)? * - * @return object Entry element + * @return \DOMElement Entry element * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ @@ -1900,7 +1900,7 @@ class OStatus * @param bool $toplevel Is it for en entry element (false) or a feed entry (true)? * @param bool $feed_mode Behave like a regular feed for users if true * - * @return object Entry element + * @return \DOMElement Entry element * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ @@ -1976,7 +1976,7 @@ class OStatus * @brief Adds elements to the XML document * * @param DOMDocument $doc XML document - * @param object $entry Entry element where the content is added + * @param \DOMElement $entry Entry element where the content is added * @param array $item Data of the item that is to be posted * @param array $owner Contact data of the poster * @param string $title Title for the post @@ -1986,7 +1986,7 @@ class OStatus * @return void * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ - private static function entryContent(DOMDocument $doc, $entry, array $item, array $owner, $title, $verb = "", $complete = true, $feed_mode = false) + private static function entryContent(DOMDocument $doc, \DOMElement $entry, array $item, array $owner, $title, $verb = "", $complete = true, $feed_mode = false) { if ($verb == "") { $verb = self::constructVerb($item); diff --git a/src/Util/Temporal.php b/src/Util/Temporal.php index 0e9baf2498..ec71ab5e96 100644 --- a/src/Util/Temporal.php +++ b/src/Util/Temporal.php @@ -158,10 +158,10 @@ class Temporal /** * @brief Returns a date selector * - * @param string $min Unix timestamp of minimum date - * @param string $max Unix timestap of maximum date - * @param string $default Unix timestamp of default date - * @param string $id ID and name of datetimepicker (defaults to "datetimepicker") + * @param DateTime $min Minimum date + * @param DateTime $max Maximum date + * @param DateTime $default Default date + * @param string $id ID and name of datetimepicker (defaults to "datetimepicker") * * @return string Parsed HTML output. * @throws \Friendica\Network\HTTPException\InternalServerErrorException diff --git a/src/Util/XML.php b/src/Util/XML.php index d56b2311f3..ba146ec7b8 100644 --- a/src/Util/XML.php +++ b/src/Util/XML.php @@ -135,14 +135,14 @@ class XML /** * @brief Create an XML element * - * @param object $doc XML root - * @param string $element XML element name - * @param string $value XML value - * @param array $attributes array containing the attributes + * @param \DOMDocument $doc XML root + * @param string $element XML element name + * @param string $value XML value + * @param array $attributes array containing the attributes * - * @return object XML element object + * @return \DOMElement XML element object */ - public static function createElement($doc, $element, $value = "", $attributes = []) + public static function createElement(\DOMDocument $doc, $element, $value = "", $attributes = []) { $element = $doc->createElement($element, self::escape($value)); @@ -157,14 +157,14 @@ class XML /** * @brief Create an XML and append it to the parent object * - * @param object $doc XML root + * @param \DOMDocument $doc XML root * @param object $parent parent object * @param string $element XML element name * @param string $value XML value * @param array $attributes array containing the attributes * @return void */ - public static function addElement($doc, $parent, $element, $value = "", $attributes = []) + public static function addElement(\DOMDocument $doc, $parent, $element, $value = "", $attributes = []) { $element = self::createElement($doc, $element, $value, $attributes); $parent->appendChild($element); @@ -402,11 +402,11 @@ class XML /** * @brief Delete a node in a XML object * - * @param object $doc XML document + * @param \DOMDocument $doc XML document * @param string $node Node name * @return void */ - public static function deleteNode(&$doc, $node) + public static function deleteNode(\DOMDocument $doc, $node) { $xpath = new DOMXPath($doc); $list = $xpath->query("//".$node); @@ -431,7 +431,7 @@ class XML return $x; } - public static function getFirstNodeValue($xpath, $element, $context = null) + public static function getFirstNodeValue(DOMXPath $xpath, $element, $context = null) { $result = $xpath->evaluate($element, $context); if (!is_object($result)) { @@ -446,7 +446,7 @@ class XML return $first_item->nodeValue; } - public static function getFirstAttributes($xpath, $element, $context = null) + public static function getFirstAttributes(DOMXPath $xpath, $element, $context = null) { $result = $xpath->query($element, $context); if (!is_object($result)) {