Configuring Storage
- public static function pushStorageNamespace($namespace)
- public static function popStorageNamespace()
- public static function getDefaultStorageNamespace()
- public static function getStorageNamespace()
- protected function establishLiveConnection($mode)
- public function getTableName()
- public function getApplicationName()
Other Methods
- public function setForcedStorageNamespace($namespace)
- private function newClusterConnection($application, $database, $mode)
- private function raiseImproperWrite($database)
- private function raiseImpossibleWrite($database)
- private function raiseUnconfigured($database)
- private function raiseUnreachable($database, $proxy)
- protected function getDatabaseName()
- public static function chunkSQL($fragments, $limit) — Break a list of escaped SQL statement fragments (e.g., VALUES lists for INSERT, previously built with @{function:qsprintf}) into chunks which will fit under the MySQL 'max_allowed_packet' limit.
- protected function assertAttached($property)
- protected function assertAttachedKey($value, $key)
- protected function detectEncodingForStorage($string)
- protected function getUTF8StringFromStorage($string, $encoding)
- protected function willReadData(&$data)
- protected function willWriteData(&$data)
- protected function getConfiguration()
- public function setHeaders($headers)
- public function getHeader($key, $default)
- private function normalizeMailHeaderName($name)
- public function getMessageID()
- public function getSubject()
- public function getCCAddresses()
- public function getToAddresses()
- public function newTargetAddresses()
- public function loadAllRecipientPHIDs()
- public function processReceivedMail()
- public function getCleanTextBody()
- public function parseBody()
- public function getRawTextBody()
- private function getRawEmailAddress($address) — Strip an email address down to the actual user@domain.tld part if necessary, since sometimes it will have formatting like '"Abraham Lincoln" <alincoln@logcab.in>'.
- private function getRawEmailAddresses($addresses)
- private function dropMailFromPhabricator() — If Phabricator sent the mail, always drop it immediately. This prevents loops where, e.g., the public bug address is also a user email address and creating a bug sends them an email, which loops.
- private function dropMailAlreadyReceived() — If this mail has the same message ID as some other mail, and isn't the first mail we we received with that message ID, we drop it as a duplicate.
- private function dropEmptyMail()
- private function sendExceptionMail($ex, $viewer)
- public function newContentSource()
- public function newFromAddress()
- private function getViewer()
- private function loadSender() — Identify the sender's user account for a piece of received mail.
- private function validateSender($sender)