Page MenuHomePhorge
Diviner Tech Docs PhabricatorFeedStoryPublisher

final class PhabricatorFeedStoryPublisher
Phorge Technical Documentation (Feed)

This class is not documented.

Methods

public function __get($name)
Inherited

This method is not documented.
Parameters
$name
Return
wild

public function __set($name, $value)
Inherited

This method is not documented.
Parameters
$name
$value
Return
wild

public function current()
Inherited

This method is not documented.
Return
wild

public function key()
Inherited

This method is not documented.
Return
wild

public function next()
Inherited

This method is not documented.
Return
wild

public function rewind()
Inherited

This method is not documented.
Return
wild

public function valid()
Inherited

This method is not documented.
Return
wild

private function throwOnAttemptedIteration()
Inherited

This method is not documented.
Return
wild

public function getPhobjectClassConstant($key, $byte_limit)
Inherited

Phobject

Read the value of a class constant.

This is the same as just typing self::CONSTANTNAME, but throws a more useful message if the constant is not defined and allows the constant to be limited to a maximum length.

Parameters
string$keyName of the constant.
int|null$byte_limitMaximum number of bytes permitted in the value.
Return
stringValue of the constant.

public function setMailTags($mail_tags)

This method is not documented.
Parameters
array$mail_tags
Return
wild

public function getMailTags()

This method is not documented.
Return
wild

public function setNotifyAuthor($notify_author)

This method is not documented.
Parameters
$notify_author
Return
wild

public function getNotifyAuthor()

This method is not documented.
Return
wild

public function setRelatedPHIDs($phids)

This method is not documented.
Parameters
array$phids
Return
wild

public function setSubscribedPHIDs($phids)

This method is not documented.
Parameters
array$phids
Return
wild

public function setPrimaryObjectPHID($phid)

This method is not documented.
Parameters
$phid
Return
wild

public function setUnexpandablePHIDs($unexpandable_phids)

This method is not documented.
Parameters
array$unexpandable_phids
Return
wild

public function getUnexpandablePHIDs()

This method is not documented.
Return
wild

public function setStoryType($story_type)

This method is not documented.
Parameters
$story_type
Return
wild

public function setStoryData($data)

This method is not documented.
Parameters
array$data
Return
wild

public function setStoryTime($time)

This method is not documented.
Parameters
$time
Return
wild

public function setStoryAuthorPHID($phid)

This method is not documented.
Parameters
$phid
Return
wild

public function setMailRecipientPHIDs($phids)

This method is not documented.
Parameters
array$phids
Return
wild

public function publish()

This method is not documented.
Return
wild

private function insertNotifications($chrono_key, $subscribed_phids)

This method is not documented.
Parameters
$chrono_key
array$subscribed_phids
Return
wild

private function sendNotification($chrono_key, $subscribed_phids)

This method is not documented.
Parameters
$chrono_key
array$subscribed_phids
Return
wild

private function filterSubscribedPHIDs($phids)

Remove PHIDs who should not receive notifications from a subscriber list.

Parameters
list<phid>$phidsList of potential subscribers.
Return
list<phid>List of actual subscribers.

private function expandRecipients($phids)

This method is not documented.
Parameters
array$phids
Return
wild

private function generateChronologicalKey()

We generate a unique chronological key for each story type because we want to be able to page through the stream with a cursor (i.e., select stories after ID = X) so we can efficiently perform filtering after selecting data, and multiple stories with the same ID make this cumbersome without putting a bunch of logic in the client. We could use the primary key, but that would prevent publishing stories which happened in the past. Since it's potentially useful to do that (e.g., if you're importing another data source) build a unique key for each story which has chronological ordering.

Return
stringA unique, time-ordered key which identifies the story.