Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F15403196
D12237.id29396.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
21 KB
Referenced Files
None
Subscribers
None
D12237.id29396.diff
View Options
diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -3943,7 +3943,7 @@
'FileInfoConduitAPIMethod' => 'FileConduitAPIMethod',
'FileMailReceiver' => 'PhabricatorObjectMailReceiver',
'FileQueryChunksConduitAPIMethod' => 'FileConduitAPIMethod',
- 'FileReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'FileReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'FileUploadChunkConduitAPIMethod' => 'FileConduitAPIMethod',
'FileUploadConduitAPIMethod' => 'FileConduitAPIMethod',
'FileUploadHashConduitAPIMethod' => 'FileConduitAPIMethod',
@@ -3990,7 +3990,7 @@
'FundInitiativePHIDType' => 'PhabricatorPHIDType',
'FundInitiativeQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
'FundInitiativeRemarkupRule' => 'PhabricatorObjectRemarkupRule',
- 'FundInitiativeReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'FundInitiativeReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'FundInitiativeSearchEngine' => 'PhabricatorApplicationSearchEngine',
'FundInitiativeTransaction' => 'PhabricatorApplicationTransaction',
'FundInitiativeTransactionQuery' => 'PhabricatorApplicationTransactionQuery',
@@ -4217,7 +4217,7 @@
'LegalpadDocumentSignatureViewController' => 'LegalpadController',
'LegalpadMockMailReceiver' => 'PhabricatorObjectMailReceiver',
'LegalpadObjectNeedsSignatureEdgeType' => 'PhabricatorEdgeType',
- 'LegalpadReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'LegalpadReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'LegalpadSchemaSpec' => 'PhabricatorConfigSchemaSpec',
'LegalpadSignatureNeededByObjectEdgeType' => 'PhabricatorEdgeType',
'LegalpadTransaction' => 'PhabricatorApplicationTransaction',
@@ -4613,7 +4613,7 @@
'PhabricatorAuditManagementDeleteWorkflow' => 'PhabricatorAuditManagementWorkflow',
'PhabricatorAuditManagementWorkflow' => 'PhabricatorManagementWorkflow',
'PhabricatorAuditPreviewController' => 'PhabricatorAuditController',
- 'PhabricatorAuditReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'PhabricatorAuditReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'PhabricatorAuditTransaction' => 'PhabricatorApplicationTransaction',
'PhabricatorAuditTransactionComment' => 'PhabricatorApplicationTransactionComment',
'PhabricatorAuditTransactionQuery' => 'PhabricatorApplicationTransactionQuery',
@@ -5278,7 +5278,7 @@
'PhabricatorMacroMemeController' => 'PhabricatorMacroController',
'PhabricatorMacroMemeDialogController' => 'PhabricatorMacroController',
'PhabricatorMacroQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
- 'PhabricatorMacroReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'PhabricatorMacroReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'PhabricatorMacroSearchEngine' => 'PhabricatorApplicationSearchEngine',
'PhabricatorMacroTransaction' => 'PhabricatorApplicationTransaction',
'PhabricatorMacroTransactionComment' => 'PhabricatorApplicationTransactionComment',
@@ -6193,7 +6193,7 @@
'PholioMockThumbGridView' => 'AphrontView',
'PholioMockViewController' => 'PholioController',
'PholioRemarkupRule' => 'PhabricatorObjectRemarkupRule',
- 'PholioReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'PholioReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'PholioSchemaSpec' => 'PhabricatorConfigSchemaSpec',
'PholioSearchIndexer' => 'PhabricatorSearchDocumentIndexer',
'PholioTransaction' => 'PhabricatorApplicationTransaction',
@@ -6229,7 +6229,7 @@
'PhortuneCartListController' => 'PhortuneController',
'PhortuneCartPHIDType' => 'PhabricatorPHIDType',
'PhortuneCartQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
- 'PhortuneCartReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'PhortuneCartReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'PhortuneCartSearchEngine' => 'PhabricatorApplicationSearchEngine',
'PhortuneCartTransaction' => 'PhabricatorApplicationTransaction',
'PhortuneCartTransactionQuery' => 'PhabricatorApplicationTransactionQuery',
@@ -6425,7 +6425,7 @@
'PhrictionMoveController' => 'PhrictionController',
'PhrictionNewController' => 'PhrictionController',
'PhrictionRemarkupRule' => 'PhutilRemarkupRule',
- 'PhrictionReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'PhrictionReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'PhrictionSchemaSpec' => 'PhabricatorConfigSchemaSpec',
'PhrictionSearchEngine' => 'PhabricatorApplicationSearchEngine',
'PhrictionSearchIndexer' => 'PhabricatorSearchDocumentIndexer',
@@ -6481,7 +6481,7 @@
'PonderQuestionMailReceiver' => 'PhabricatorObjectMailReceiver',
'PonderQuestionPHIDType' => 'PhabricatorPHIDType',
'PonderQuestionQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
- 'PonderQuestionReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'PonderQuestionReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'PonderQuestionSearchEngine' => 'PhabricatorApplicationSearchEngine',
'PonderQuestionStatus' => 'PonderConstants',
'PonderQuestionStatusController' => 'PonderController',
@@ -6594,7 +6594,7 @@
'ReleephRequestMailReceiver' => 'PhabricatorObjectMailReceiver',
'ReleephRequestPHIDType' => 'PhabricatorPHIDType',
'ReleephRequestQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
- 'ReleephRequestReplyHandler' => 'PhabricatorMailReplyHandler',
+ 'ReleephRequestReplyHandler' => 'PhabricatorApplicationTransactionReplyHandler',
'ReleephRequestSearchEngine' => 'PhabricatorApplicationSearchEngine',
'ReleephRequestTransaction' => 'PhabricatorApplicationTransaction',
'ReleephRequestTransactionComment' => 'PhabricatorApplicationTransactionComment',
diff --git a/src/applications/audit/mail/PhabricatorAuditReplyHandler.php b/src/applications/audit/mail/PhabricatorAuditReplyHandler.php
--- a/src/applications/audit/mail/PhabricatorAuditReplyHandler.php
+++ b/src/applications/audit/mail/PhabricatorAuditReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class PhabricatorAuditReplyHandler extends PhabricatorMailReplyHandler {
+final class PhabricatorAuditReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof PhabricatorRepositoryCommit)) {
@@ -8,43 +9,10 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'C');
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('C');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- $commit = $this->getMailReceiver();
- $actor = $this->getActor();
- $message = $mail->getCleanTextBody();
-
- $content_source = PhabricatorContentSource::newForSource(
- PhabricatorContentSource::SOURCE_EMAIL,
- array(
- 'id' => $mail->getID(),
- ));
-
- // TODO: Support !raise, !accept, etc.
-
- $xactions = array();
-
- $xactions[] = id(new PhabricatorAuditTransaction())
- ->setTransactionType(PhabricatorTransactions::TYPE_COMMENT)
- ->attachComment(
- id(new PhabricatorAuditTransactionComment())
- ->setCommitPHID($commit->getPHID())
- ->setContent($message));
-
- $editor = id(new PhabricatorAuditEditor())
- ->setActor($actor)
- ->setContentSource($content_source)
- ->setExcludeMailRecipientPHIDs($this->getExcludeMailRecipientPHIDs())
- ->setContinueOnMissingFields(true)
- ->applyTransactions($commit, $xactions);
+ public function getObjectPrefix() {
+ // TODO: This conflicts with Countdown and will probably need to be
+ // changed eventually.
+ return 'C';
}
}
diff --git a/src/applications/files/mail/FileReplyHandler.php b/src/applications/files/mail/FileReplyHandler.php
--- a/src/applications/files/mail/FileReplyHandler.php
+++ b/src/applications/files/mail/FileReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class FileReplyHandler extends PhabricatorMailReplyHandler {
+final class FileReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof PhabricatorFile)) {
@@ -8,31 +9,14 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'F');
+ public function getObjectPrefix() {
+ return 'F';
}
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('F');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- $actor = $this->getActor();
- $file = $this->getMailReceiver();
-
- $body_data = $mail->parseBody();
- $body = $body_data['body'];
- $body = $this->enhanceBodyWithAttachments($body, $mail->getAttachments());
-
- $content_source = PhabricatorContentSource::newForSource(
- PhabricatorContentSource::SOURCE_EMAIL,
- array(
- 'id' => $mail->getID(),
- ));
+ protected function processMailCommands(array $commands) {
+ $actor = $this->getActor();
$xactions = array();
- $commands = $body_data['commands'];
foreach ($commands as $command) {
switch (head($command)) {
case 'unsubscribe':
@@ -44,19 +28,7 @@
}
}
- $xactions[] = id(new PhabricatorFileTransaction())
- ->setTransactionType(PhabricatorTransactions::TYPE_COMMENT)
- ->attachComment(
- id(new PhabricatorFileTransactionComment())
- ->setContent($body));
-
- $editor = id(new PhabricatorFileEditor())
- ->setActor($actor)
- ->setContentSource($content_source)
- ->setContinueOnNoEffect(true)
- ->setIsPreview(false);
-
- $editor->applyTransactions($file, $xactions);
+ return $xactions;
}
}
diff --git a/src/applications/fund/mail/FundInitiativeReplyHandler.php b/src/applications/fund/mail/FundInitiativeReplyHandler.php
--- a/src/applications/fund/mail/FundInitiativeReplyHandler.php
+++ b/src/applications/fund/mail/FundInitiativeReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class FundInitiativeReplyHandler extends PhabricatorMailReplyHandler {
+final class FundInitiativeReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof FundInitiative)) {
@@ -8,18 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'I');
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('I');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- // TODO: Implement.
- return null;
+ public function getObjectPrefix() {
+ return 'I';
}
}
diff --git a/src/applications/legalpad/mail/LegalpadReplyHandler.php b/src/applications/legalpad/mail/LegalpadReplyHandler.php
--- a/src/applications/legalpad/mail/LegalpadReplyHandler.php
+++ b/src/applications/legalpad/mail/LegalpadReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class LegalpadReplyHandler extends PhabricatorMailReplyHandler {
+final class LegalpadReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof LegalpadDocument)) {
@@ -8,59 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'L');
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('L');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- $actor = $this->getActor();
- $document = $this->getMailReceiver();
-
- $body_data = $mail->parseBody();
- $body = $body_data['body'];
- $body = $this->enhanceBodyWithAttachments($body, $mail->getAttachments());
-
- $content_source = PhabricatorContentSource::newForSource(
- PhabricatorContentSource::SOURCE_EMAIL,
- array(
- 'id' => $mail->getID(),
- ));
-
- $xactions = array();
-
- $commands = $body_data['commands'];
- foreach ($commands as $command) {
- switch (head($command)) {
- case 'unsubscribe':
- $xaction = id(new LegalpadTransaction())
- ->setTransactionType(PhabricatorTransactions::TYPE_SUBSCRIBERS)
- ->setNewValue(array('-' => array($actor->getPHID())));
- $xactions[] = $xaction;
- break;
- }
- }
-
- $xactions[] = id(new LegalpadTransaction())
- ->setTransactionType(PhabricatorTransactions::TYPE_COMMENT)
- ->attachComment(
- id(new LegalpadTransactionComment())
- ->setDocumentID($document->getID())
- ->setLineNumber(0)
- ->setLineLength(0)
- ->setContent($body));
-
- $editor = id(new LegalpadDocumentEditor())
- ->setActor($actor)
- ->setContentSource($content_source)
- ->setContinueOnNoEffect(true)
- ->setIsPreview(false);
-
- $editor->applyTransactions($document, $xactions);
+ public function getObjectPrefix() {
+ return 'L';
}
}
diff --git a/src/applications/legalpad/storage/LegalpadTransactionComment.php b/src/applications/legalpad/storage/LegalpadTransactionComment.php
--- a/src/applications/legalpad/storage/LegalpadTransactionComment.php
+++ b/src/applications/legalpad/storage/LegalpadTransactionComment.php
@@ -4,8 +4,8 @@
extends PhabricatorApplicationTransactionComment {
protected $documentID;
- protected $lineNumber;
- protected $lineLength;
+ protected $lineNumber = 0;
+ protected $lineLength = 0;
protected $fixedState;
protected $hasReplies = 0;
protected $replyToCommentPHID;
diff --git a/src/applications/macro/mail/PhabricatorMacroReplyHandler.php b/src/applications/macro/mail/PhabricatorMacroReplyHandler.php
--- a/src/applications/macro/mail/PhabricatorMacroReplyHandler.php
+++ b/src/applications/macro/mail/PhabricatorMacroReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class PhabricatorMacroReplyHandler extends PhabricatorMailReplyHandler {
+final class PhabricatorMacroReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof PhabricatorFileImageMacro)) {
@@ -8,18 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'MCRO');
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('MCRO');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- // TODO: Implement this.
- return null;
+ public function getObjectPrefix() {
+ return 'MCRO';
}
}
diff --git a/src/applications/pholio/mail/PholioReplyHandler.php b/src/applications/pholio/mail/PholioReplyHandler.php
--- a/src/applications/pholio/mail/PholioReplyHandler.php
+++ b/src/applications/pholio/mail/PholioReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class PholioReplyHandler extends PhabricatorMailReplyHandler {
+final class PholioReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof PholioMock)) {
@@ -8,18 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'M');
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('M');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- // TODO: Implement this.
- return null;
+ public function getObjectPrefix() {
+ return 'M';
}
}
diff --git a/src/applications/phortune/mail/PhortuneCartReplyHandler.php b/src/applications/phortune/mail/PhortuneCartReplyHandler.php
--- a/src/applications/phortune/mail/PhortuneCartReplyHandler.php
+++ b/src/applications/phortune/mail/PhortuneCartReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class PhortuneCartReplyHandler extends PhabricatorMailReplyHandler {
+final class PhortuneCartReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof PhortuneCart)) {
@@ -8,18 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'CART');
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('CART');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- // TODO: Implement.
- return null;
+ public function getObjectPrefix() {
+ return 'CART';
}
}
diff --git a/src/applications/phriction/mail/PhrictionReplyHandler.php b/src/applications/phriction/mail/PhrictionReplyHandler.php
--- a/src/applications/phriction/mail/PhrictionReplyHandler.php
+++ b/src/applications/phriction/mail/PhrictionReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class PhrictionReplyHandler extends PhabricatorMailReplyHandler {
+final class PhrictionReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof PhrictionDocument)) {
@@ -8,21 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress(
- $handle,
- PhrictionDocumentPHIDType::TYPECONST);
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress(
- PhrictionDocumentPHIDType::TYPECONST);
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- // TODO: Implement.
- return null;
+ public function getObjectPrefix() {
+ return PhrictionDocumentPHIDType::TYPECONST;
}
}
diff --git a/src/applications/ponder/mail/PonderQuestionReplyHandler.php b/src/applications/ponder/mail/PonderQuestionReplyHandler.php
--- a/src/applications/ponder/mail/PonderQuestionReplyHandler.php
+++ b/src/applications/ponder/mail/PonderQuestionReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class PonderQuestionReplyHandler extends PhabricatorMailReplyHandler {
+final class PonderQuestionReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof PonderQuestion)) {
@@ -8,16 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'Q');
+ public function getObjectPrefix() {
+ return 'Q';
}
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('Q');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- // ignore this entirely for now
- }
}
diff --git a/src/applications/releeph/mail/ReleephRequestReplyHandler.php b/src/applications/releeph/mail/ReleephRequestReplyHandler.php
--- a/src/applications/releeph/mail/ReleephRequestReplyHandler.php
+++ b/src/applications/releeph/mail/ReleephRequestReplyHandler.php
@@ -1,6 +1,7 @@
<?php
-final class ReleephRequestReplyHandler extends PhabricatorMailReplyHandler {
+final class ReleephRequestReplyHandler
+ extends PhabricatorApplicationTransactionReplyHandler {
public function validateMailReceiver($mail_receiver) {
if (!($mail_receiver instanceof ReleephRequest)) {
@@ -8,39 +9,8 @@
}
}
- public function getPrivateReplyHandlerEmailAddress(
- PhabricatorObjectHandle $handle) {
- return $this->getDefaultPrivateReplyHandlerEmailAddress($handle, 'Y');
- }
-
- public function getPublicReplyHandlerEmailAddress() {
- return $this->getDefaultPublicReplyHandlerEmailAddress('Y');
- }
-
- protected function receiveEmail(PhabricatorMetaMTAReceivedMail $mail) {
- $rq = $this->getMailReceiver();
- $user = $this->getActor();
-
- $content_source = PhabricatorContentSource::newForSource(
- PhabricatorContentSource::SOURCE_EMAIL,
- array(
- 'id' => $mail->getID(),
- ));
-
- $body = $mail->getCleanTextBody();
-
- $xactions = array();
- $xactions[] = id(new ReleephRequestTransaction())
- ->setTransactionType(PhabricatorTransactions::TYPE_COMMENT)
- ->attachComment($body);
-
- $editor = id(new ReleephRequestTransactionalEditor())
- ->setActor($user)
- ->setContentSource($content_source)
- ->setContinueOnNoEffect(true)
- ->setParentMessageID($mail->getMessageID());
-
- $editor->applyTransactions($rq, $xactions);
+ public function getObjectPrefix() {
+ return 'Y';
}
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Wed, Mar 19, 2:11 AM (2 w, 3 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7223438
Default Alt Text
D12237.id29396.diff (21 KB)
Attached To
Mode
D12237: Subclass most ReplyHandlers from TransactionReplyHandler
Attached
Detach File
Event Timeline
Log In to Comment