Skip to content

Commit

Permalink
Merge pull request #29 from superuserdev/chore/typehint
Browse files Browse the repository at this point in the history
Return `$this` for all set methods
  • Loading branch information
Chris Zuber authored Sep 14, 2017
2 parents fc0eda6 + 48635eb commit 9ed1ea5
Show file tree
Hide file tree
Showing 44 changed files with 709 additions and 659 deletions.
79 changes: 62 additions & 17 deletions action.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,45 +22,68 @@
/**
* @see https://schema.org/Action
*/
use \InvalidArgumentException;
class Action extends Thing
{
use Traits\DateTime;

final public function setActionStatus(ActionStatusType $status)
/**
* [setActionStatus description]
* @param ActionStatusType $status [description]
*/
final public function setActionStatus(ActionStatusType $status): self
{
$this->_set('actionStatus', $status);
return $this->_set('actionStatus', $status);
}

final public function setAgent(Thing $agent)
/**
* [setAgent description]
* @param Thing $agent [description]
*/
final public function setAgent(Thing $agent): self
{
if ($agent instanceof Person or $agent instanceof Organization) {
$this->_set('agent', $agent);
return $this->_set('agent', $agent);
} else {
throw new \InvalidArgumentException(sprintf(
throw new InvalidArgumentException(sprintf(
'Author must be an instance of Person or Organization. Instance of %s given',
$agent::getType()
));
}
}

/**
* [setEndDate description]
* @param String $date [description]
* @param boolean $use_date [description]
* @param boolean $use_time [description]
*/
final public function setEndDate(
String $date,
Bool $use_date = true,
Bool $use_time = true
)
): self
{
$this->_set('endDate', static::formatDateTime($date, $use_date, $use_time));
return $this->_set('endDate', static::formatDateTime($date, $use_date, $use_time));
}

final public function setError(Thing $error)
/**
* [setError description]
* @param Thing $error [description]
*/
final public function setError(Thing $error): self
{
$this->_set('error', $error);
return $this->_set('error', $error);
}

final public function setLocation(Thing $location)
/**
* [setLocation description]
* @param Thing $location [description]
*/
final public function setLocation(Thing $location): self
{
if ($location instanceof PostalAddress or $location instanceof Place) {
$this->_set('location', $location);
return $this->_set('location', $location);
} else {
throw new InvalidArgumentException(sprintf(
'Location must be an instance of PostalAddress or Place. Instance of %s given.',
Expand All @@ -69,15 +92,23 @@ final public function setLocation(Thing $location)
}
}

final public function setObject(Thing $object)
/**
* [setObject description]
* @param Thing $object [description]
*/
final public function setObject(Thing $object): self
{
$this->_set('object', $object);
return $this->_set('object', $object);
}

/**
* [setParticipant description]
* @param Thing $participant [description]
*/
final public function setParticipant(Thing $participant)
{
if ($participant instanceof Person or $participant instanceof Organization) {
$this->_set('participant', $participant);
return $this->_set('participant', $participant);
} else {
throw new InvalidArgumentException(sprintf(
'Participant must be an instance of Person or Organization. Instance of %s given.',
Expand All @@ -86,22 +117,36 @@ final public function setParticipant(Thing $participant)
}
}

/**
* [setResult description]
* @param Thing $result [description]
*/
final public function setResult(Thing $result)
{
$this->_set('result', $result);
return $this->_set('result', $result);
}

/**
* [setStartDate description]
* @param String $date [description]
* @param boolean $use_date [description]
* @param boolean $use_time [description]
*/
final public function setStartDate(
String $date,
Bool $use_date = true,
Bool $use_time = true
)
{
$this->_set('startDate', static::formatDateTime($date, $use_date, $use_time));
return $this->_set('startDate', static::formatDateTime($date, $use_date, $use_time));
}

/**
* [setTarget description]
* @param EntryPoint $target [description]
*/
final public function setTarget(EntryPoint $target)
{
$this->_set('target', $target);
return $this->_set('target', $target);
}
}
12 changes: 6 additions & 6 deletions aggregaterating.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,18 @@
*/
class AggregateRating extends Rating
{
final public function setItemReviewed(Thing $item)
final public function setItemReviewed(Thing $item): self
{
$this->_set('itemReviewed', $item);
return $this->_set('itemReviewed', $item);
}

final public function setRatingCount(Int $count)
final public function setRatingCount(Int $count): self
{
$this->_set('ratingCount', $count);
return $this->_set('ratingCount', $count);
}

final public function setReviewCount(Int $count)
final public function setReviewCount(Int $count): self
{
$this->_set('reviewCount', $count);
return $this->_set('reviewCount', $count);
}
}
20 changes: 10 additions & 10 deletions alignmentobject.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,30 +25,30 @@

class AlignmentObject extends Intangible
{
final public function setAlignmantType(String $type)
final public function setAlignmantType(String $type): self
{
$this->_set('alignmentType', $type);
return $this->_set('alignmentType', $type);
}

final public function setEducationalFramework(String $framework)
final public function setEducationalFramework(String $framework): self
{
$this->_set('educatonalFramework', $framework);
return $this->_set('educatonalFramework', $framework);
}

final public function setTargetDescription(String $description)
final public function setTargetDescription(String $description): self
{
$this->_set('targetDescription', $description);
return $this->_set('targetDescription', $description);
}

final public function setTargetName(String $name)
final public function setTargetName(String $name): self
{
$this->_set('targetName', $name);
return $this->_set('targetName', $name);
}

final public function setTargetUrl(String $url)
final public function setTargetUrl(String $url): self
{
if (static::_isURL($url)) {
$this->_set('targetUrl', $url);
return $this->_set('targetUrl', $url);
} else {
throw new \InvalidArgumentException("{$url} is not a valid URL");
}
Expand Down
24 changes: 12 additions & 12 deletions article.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,33 +24,33 @@
*/
class Article extends CreativeWork
{
final public function setArticleBody(String $body)
final public function setArticleBody(String $body): self
{
$this->_set('articleBody', $body);
return $this->_set('articleBody', $body);
}

final public function setArticleSection(String $section)
final public function setArticleSection(String $section): self
{
$this->_set('articleSection', $section);
return $this->_set('articleSection', $section);
}

final public function setPageEnd(Int $end)
final public function setPageEnd(Int $end): self
{
$this->_set('pageEnd', $end);
return $this->_set('pageEnd', $end);
}

final public function setPageStart(Int $start)
final public function setPageStart(Int $start): self
{
$this->_set('pageStart', $start);
return $this->_set('pageStart', $start);
}

final public function setPagination(String $pagination)
final public function setPagination(String $pagination): self
{
$this->_set('pagination', $pagination);
return $this->_set('pagination', $pagination);
}

final public function setWordCount(Int $words)
final public function setWordCount(Int $words): self
{
$this->_set('wordCount', $words);
return $this->_set('wordCount', $words);
}
}
8 changes: 4 additions & 4 deletions audience.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,13 @@
*/
class Audience extends Intangible
{
final public function setAudienceType(String $type)
final public function setAudienceType(String $type): self
{
$this->_set('audienceType', $type);
return $this->_set('audienceType', $type);
}

final public function setGeographicArea(AdministrativeArea $area)
final public function setGeographicArea(AdministrativeArea $area): self
{
$this->_set('geographicArea', $area);
return $this->_set('geographicArea', $area);
}
}
4 changes: 2 additions & 2 deletions audioobject.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@
*/
class AudioObject extends MediaObject
{
final public function setTranscript(String $transcript)
final public function setTranscript(String $transcript): self
{
$this->_set('transcript', $transcript);
return $this->_set('transcript', $transcript);
}
}
24 changes: 12 additions & 12 deletions book.php
Original file line number Diff line number Diff line change
Expand Up @@ -28,54 +28,54 @@ class Book extends CreativeWork
* [setAbridged description]
* @param Bool $is_abridged [description]
*/
final public function setAbridged(Bool $is_abridged)
final public function setAbridged(Bool $is_abridged): self
{
$this->_set('abridged', $is_abridged);
return $this->_set('abridged', $is_abridged);
}

/**
* [setBookEdition description]
* @param String $edition [description]
*/
final public function setBookEdition(String $edition)
final public function setBookEdition(String $edition): self
{
$this->_set('bookEdition', $edition);
return $this->_set('bookEdition', $edition);
}

/**
* [setBookFormat description]
* @param BookFormatType $format [description]
*/
final public function setBookFormat(BookFormatType $format)
final public function setBookFormat(BookFormatType $format): self
{
$this->_set('bookFormat', $format);
return $this->_set('bookFormat', $format);
}

/**
* [setIllustrator description]
* @param Person $illustrator [description]
*/
final public function setIllustrator(Person $illustrator)
final public function setIllustrator(Person $illustrator): self
{
$this->_set('illustrator', $illustrator);
return $this->_set('illustrator', $illustrator);
}

/**
* [setIsbn description]
* @param String $isbn [description]
* @todo Validate ISBN
*/
final public function setIsbn(String $isbn)
final public function setIsbn(String $isbn): self
{
$this->_set('isbn', $isbn);
return $this->_set('isbn', $isbn);
}

/**
* [setNumberOfPages description]
* @param Int $pages [description]
*/
final public function setNumberOfPages(Int $pages)
final public function setNumberOfPages(Int $pages): self
{
$this->_set('numberOfPages', $pages);
return $this->_set('numberOfPages', $pages);
}
}
12 changes: 6 additions & 6 deletions brand.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,18 +23,18 @@
*/
class Brand extends Intangible
{
final public function setAggregateRating(AggregateRating $rating)
final public function setAggregateRating(AggregateRating $rating): self
{
$this->_set('addregateRating', $rating);
return $this->_set('addregateRating', $rating);
}

final public function setLogo(ImageObject $logo)
final public function setLogo(ImageObject $logo): self
{
$this->_set('logo', $logo);
return $this->_set('logo', $logo);
}

final public function setReview(Review $review)
final public function setReview(Review $review): self
{
$this->_set('review', $review);
return $this->_set('review', $review);
}
}
Loading

0 comments on commit 9ed1ea5

Please sign in to comment.