/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->id = Util::setIfIntegerExists($json, 'post_id'); $this->postType = Util::isEqual($json, 'post_type', [self::POST_TYPE_ANSWER, self::POST_TYPE_QUESTION]); $this->score = Util::setIfIntegerExists($json, 'score'); $this->title = Util::setIfStringExists($json, 'title'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->apiSiteParameter = Util::setIfStringExists($json, 'api_site_parameter'); $this->name = Util::setIfStringExists($json, 'name'); $this->relation = Util::isEqual($json, 'relation', [self::RELATION_CHAT, self::RELATION_META, self::RELATION_PARENT]); $this->siteUrl = Util::setIfStringExists($json, 'site_url'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->id = Util::setIfIntegerExists($json, 'event_id'); $this->creationDate = Util::setIfDateTimeExists($json, 'creation_date'); $this->eventType = Util::isEqual($json, 'event_type', [self::EVENT_TYPE_ANSWER_POSTED, self::EVENT_TYPE_COMMENT_POSTED, self::EVENT_TYPE_POST_EDITED, self::EVENT_TYPE_QUESTION_POSTED, self::EVENT_TYPE_USER_CREATED]); $this->excerpt = Util::setIfStringExists($json, 'excerpt'); $this->link = Util::setIfStringExists($json, 'link'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->body = Util::setIfStringExists($json, 'body'); $this->creationDate = Util::setIfDateTimeExists($json, 'creation_date'); $this->isUnread = Util::setIfBoolExists($json, 'is_unread'); $this->notificationType = Util::isEqual($json, 'notification_type', [self::NOTIFICATION_TYPE_ACCOUNTS_ASSOCIATED, self::NOTIFICATION_TYPE_BADGE_EARNED, self::NOTIFICATION_TYPE_BOUNTY_EXPIRED, self::NOTIFICATION_TYPE_BOUNTY_EXPIRES_IN_ONE_DAY, self::NOTIFICATION_TYPE_BOUNTY_EXPIRES_IN_THREE_DAYS, self::NOTIFICATION_TYPE_BOUNTY_PERIOD_STARTED, self::NOTIFICATION_TYPE_EDIT_SUGGESTED, self::NOTIFICATION_TYPE_GENERIC, self::NOTIFICATION_TYPE_MODERATOR_MESSAGE, self::NOTIFICATION_TYPE_NEW_PRIVILEGE, self::NOTIFICATION_TYPE_POST_MIGRATED, self::NOTIFICATION_TYPE_PROFILE_ACTIVITY, self::NOTIFICATION_TYPE_REGISTRATION_REMINDER, self::NOTIFICATION_TYPE_REPUTATION_BONUS, self::NOTIFICATION_TYPE_SUBSTANTIVE_EDIT]); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->site = new Site(Util::setIfArrayExists($json, 'site')); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->accountId = Util::setIfIntegerExists($json, 'account_id'); $this->activityType = Util::isEqual($json, 'activity_type', [self::ACTIVITY_TYPE_ANSWER_POSTED, self::ACTIVITY_TYPE_BADGE_EARNED, self::ACTIVITY_TYPE_COMMENT_POSTED, self::ACTIVITY_TYPE_QUESTION_POSTED]); $this->apiSiteParameter = Util::setIfStringExists($json, 'api_site_parameter'); $this->description = Util::setIfStringExists($json, 'description'); $this->link = Util::setIfStringExists($json, 'link'); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->score = Util::setIfIntegerExists($json, 'score'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { parent::__construct($json); $this->id = Util::setIfIntegerExists($json, 'comment_id'); $this->canFlag = Util::setIfBoolExists($json, 'can_flag'); $this->edited = Util::setIfBoolExists($json, 'edited'); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->postType = Util::isEqual($json, 'post_type', [self::POST_TYPE_ANSWER, self::POST_TYPE_QUESTION]); $this->replyToUser = new ShallowUser(Util::setIfArrayExists($json, 'reply_to_user')); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->id = Util::setIfIntegerExists($json, 'user_id'); $this->acceptRate = Util::setIfIntegerExists($json, 'accept_rate'); $this->badgeCount = new BadgeCount(Util::setIfArrayExists($json, 'badge_count')); $this->displayName = Util::setIfStringExists($json, 'display_name'); $this->link = Util::setIfStringExists($json, 'link'); $this->profileImage = Util::setIfStringExists($json, 'profile_image'); $this->reputation = Util::setIfIntegerExists($json, 'reputation'); $this->userType = Util::isEqual($json, 'user_type', [self::USER_TYPE_DOES_NOT_EXIST, self::USER_TYPE_MODERATOR, self::USER_TYPE_REGISTERED, self::USER_TYPE_UNREGISTERED]); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->approvalDate = Util::setIfDateTimeExists($json, 'approval_date'); $this->body = Util::setIfStringExists($json, 'body'); $this->comment = Util::setIfStringExists($json, 'comment'); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->postType = Util::isEqual($json, 'post_type', [self::POST_TYPE_QUESTION, self::POST_TYPE_ANSWER]); $this->proposingUser = new ShallowUser(Util::setIfArrayExists($json, 'proposing_user')); $this->rejectionDate = Util::setIfDateTimeExists($json, 'rejection_date'); $this->suggestedEditId = new ShallowUser(Util::setIfArrayExists($json, 'suggested_edit_id')); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->id = Util::setIfIntegerExists($json, 'badge_id'); $this->awardCount = Util::setIfIntegerExists($json, 'award_count'); $this->description = Util::setIfStringExists($json, 'description'); $this->name = Util::setIfStringExists($json, 'name'); $this->badgeType = Util::isEqual($json, 'badge_type', [self::BADGE_TYPE_NAMED, self::BADGE_TYPE_TAG_BASED]); $this->link = Util::setIfStringExists($json, 'link'); $this->rank = Util::isEqual($json, 'rank', [self::RANK_GOLD, self::RANK_BRONZE, self::RANK_SILVER]); $this->user = new ShallowUser(Util::setIfArrayExists($json, 'user')); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { parent::__construct($json); $this->loadAnswered($json); $this->loadGenericId($json); $this->answerCount = Util::setIfIntegerExists($json, 'answer_count'); $this->closedDate = Util::setIfDateTimeExists($json, 'closed_date'); $this->communityOwnedDate = Util::setIfDateTimeExists($json, 'community_owned_date'); $this->equivalentTagsSearch = Util::setIfArrayExists($json, 'equivalent_tag_search'); $this->excerpt = Util::setIfStringExists($json, 'excerpt'); $this->hasAcceptedAnswer = Util::setIfBoolExists($json, 'has_accepted_answer'); $this->isAccepted = Util::setIfBoolExists($json, 'is_accepted'); $this->itemType = Util::isEqual($json, 'item_type', [self::ITEM_TYPE_ANSWER, self::ITEM_TYPE_QUESTION]); $this->lastActivityDate = Util::setIfDateTimeExists($json, 'last_activity_date'); $this->lastActivityUser = new ShallowUser(Util::setIfArrayExists($json, 'last_activity_user')); $this->lockedDate = Util::setIfDateTimeExists($json, 'locked_date'); $this->owner = new ShallowUser(Util::setIfArrayExists($json, 'owner')); $this->questionScore = Util::setIfIntegerExists($json, 'question_score'); $this->score = Util::setIfIntegerExists($json, 'score'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->creationDate = Util::setIfDateTimeExists($json, 'creation_date'); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->reputationChange = Util::setIfIntegerExists($json, 'reputation_change'); $this->reputationHistoryType = Util::isEqual($json, 'reputation_history_type', $this->reputationHistoryTypes); $this->userId = Util::setIfIntegerExists($json, 'user_id'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->link = Util::setIfStringExists($json, 'link'); $this->onDate = Util::setIfDateTimeExists($json, 'on_date'); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->postType = Util::isEqual($json, 'post_type', [self::POST_TYPE_ANSWER, self::POST_TYPE_QUESTION]); $this->reputationChange = Util::setIfIntegerExists($json, 'reputation_change'); $this->title = Util::setIfStringExists($json, 'title'); $this->userId = Util::setIfIntegerExists($json, 'user_id'); $this->voteType = Util::isEqual($json, 'vote_type', [self::VOTE_TYPE_ACCEPTS, self::VOTE_TYPE_BOUNTIES_OFFERED, self::VOTE_TYPE_BOUNTIES_WON, self::VOTE_TYPE_DOWN_VOTES, self::VOTE_TYPE_SPAM, self::VOTE_TYPE_SUGGESTED_EDITS, self::VOTE_TYPE_UP_VOTES]); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->filter = Util::setIfStringExists($json, 'filter'); $this->filterType = Util::isEqual($json, 'filter_type', [self::FILTER_TYPE_INVALID, self::FILTER_TYPE_SAFE, self::FILTER_TYPE_UNSAFE]); $this->includedFields = Util::setIfArrayExists($json, 'included_fields'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->id = Util::setIfIntegerExists($json, 'user_id'); $this->loadCount($json); $this->loadTop($json); $this->accountId = Util::setIfIntegerExists($json, 'account_id'); $this->creationDate = Util::setIfDateTimeExists($json, 'creation_date'); $this->lastAccessDate = Util::setIfDateTimeExists($json, 'last_access_date'); $this->reputation = Util::setIfIntegerExists($json, 'reputation'); $this->siteName = Util::setIfStringExists($json, 'site_name'); $this->siteUrl = Util::setIfStringExists($json, 'site_url'); $this->userType = Util::isEqual($json, 'user_type', [self::USER_TYPE_DOES_NOT_EXIST, self::USER_TYPE_MODERATOR, self::USER_TYPE_REGISTERED, self::USER_TYPE_UNREGISTERED]); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { parent::__construct($json); $this->id = Util::setIfIntegerExists($json, 'post_id'); $this->postType = Util::isEqual($json, 'post_type', [self::POST_TYPE_ANSWER, self::POST_TYPE_QUESTION]); }
/** * Loads the variables if the data exist into resource. It works like a constructor. * * @param null|mixed[] $resource The resource * @param string[] $constants The array of constants */ protected function loadRevision($resource, $constants) { $this->revisionGuid = Util::setIfStringExists($resource, 'revision_guid'); $this->revisionNumber = Util::setIfIntegerExists($resource, 'revision_number'); $this->revisionType = Util::isEqual($resource, 'revision_type', $constants); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->loadVoteCount($json); $this->commentId = Util::setIfIntegerExists($json, 'comment_id'); $this->creationDate = Util::setIfDateTimeExists($json, 'creation_date'); $this->owner = new ShallowUser(Util::setIfArrayExists($json, 'owner')); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->questionId = Util::setIfIntegerExists($json, 'question_id'); $this->revisionGuid = Util::setIfStringExists($json, 'revision_guid'); $this->timelineType = Util::isEqual($json, 'timeline_type', [self::TIMELINE_TYPE_ACCEPTED_ANSWER, self::TIMELINE_TYPE_ANSWER, self::TIMELINE_TYPE_COMMENT, self::TIMELINE_TYPE_POST_STATE_CHANGED, self::TIMELINE_TYPE_QUESTION, self::TIMELINE_TYPE_REVISION, self::TIMELINE_TYPE_UNACCEPTED_ANSWER, self::TIMELINE_TYPE_VOTE_AGGREGATE]); $this->user = new ShallowUser(Util::setIfArrayExists($json, 'user')); }
/** * Loads the variables if the data exist into resource. It works like a constructor. * * @param null|mixed[] $resource The resource * @param string[] $stateConstants The array of site state constants * @param string[] $typeConstants The array of site type constants */ protected function loadSite($resource, $stateConstants, $typeConstants) { $sites = Util::setIfArrayExists($resource, 'related_sites'); foreach ($sites as $site) { $this->relatedSites[] = new RelatedSite($site); } $this->siteState = Util::isEqual($resource, 'site_state', $stateConstants); $this->siteType = Util::isEqual($resource, 'site_type', $typeConstants); $this->siteUrl = Util::setIfStringExists($resource, 'site_url'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { parent::__construct($json); $this->loadLast($json); $this->loadRevision($json, [self::REVISION_TYPE_SINGLE_USER, self::REVISION_TYPE_VOTE_BASED]); $this->body = Util::setIfStringExists($json, 'body'); $this->comment = Util::setIfStringExists($json, 'comment'); $this->rollback = Util::setIfBoolExists($json, 'is_rollback'); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->postType = Util::isEqual($json, 'post_type', [self::POST_TYPE_QUESTION, self::POST_TYPE_ANSWER]); $this->setCommunityWiki = Util::setIfBoolExists($json, 'set_community_wiki'); $this->user = new ShallowUser(Util::setIfArrayExists($json, 'user')); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->loadGenericId($json); $this->commentId = Util::setIfIntegerExists($json, 'comment_id'); $this->creationDate = Util::setIfDateTimeExists($json, 'creation_date'); $this->isUnread = Util::setIfBoolExists($json, 'is_unread'); $this->itemType = Util::isEqual($json, 'item_type', [self::ITEM_TYPE_CAREERS_INVITATIONS, self::ITEM_TYPE_CAREERS_MESSAGE, self::ITEM_TYPE_CHAT_MESSAGE, self::ITEM_TYPE_COMMENT, self::ITEM_TYPE_META_QUESTION, self::ITEM_TYPE_MODERATOR_MESSAGE, self::ITEM_TYPE_NEW_ANSWER, self::ITEM_TYPE_POST_NOTICE]); $this->link = Util::setIfStringExists($json, 'link'); $this->site = new Site(Util::setIfArrayExists($json, 'site')); $this->title = Util::setIfStringExists($json, 'title'); }
/** * Constructor. * * @param null|mixed[] $json The json string being decoded */ public function __construct($json = null) { $this->id = Util::setIfIntegerExists($json, 'user_id'); $this->badgeId = Util::setIfIntegerExists($json, 'badge_id'); $this->commentId = Util::setIfIntegerExists($json, 'comment_id'); $this->creationDate = Util::setIfDateTimeExists($json, 'creation_date'); $this->detail = Util::setIfStringExists($json, 'detail'); $this->link = Util::setIfStringExists($json, 'link'); $this->postId = Util::setIfIntegerExists($json, 'post_id'); $this->postType = Util::isEqual($json, 'post_type', [self::POST_TYPE_ANSWER, self::POST_TYPE_QUESTION]); $this->suggestedEditId = Util::setIfIntegerExists($json, 'suggested_edit_id'); $this->timelineType = Util::isEqual($json, 'timeline_type', [self::TIMELINE_TYPE_ACCEPTED_ANSWER, self::TIMELINE_TYPE_ANSWER, self::TIMELINE_TYPE_COMMENT, self::TIMELINE_TYPE_POST_STATE_CHANGED, self::TIMELINE_TYPE_QUESTION, self::TIMELINE_TYPE_REVISION, self::TIMELINE_TYPE_UNACCEPTED_ANSWER, self::TIMELINE_TYPE_VOTE_AGGREGATE]); $this->title = Util::setIfStringExists($json, 'title'); }