Page MenuHomePhabricator

D14774.diff
No OneTemporary

D14774.diff

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
@@ -2643,6 +2643,7 @@
'PhabricatorPasteApplication' => 'applications/paste/application/PhabricatorPasteApplication.php',
'PhabricatorPasteArchiveController' => 'applications/paste/controller/PhabricatorPasteArchiveController.php',
'PhabricatorPasteConfigOptions' => 'applications/paste/config/PhabricatorPasteConfigOptions.php',
+ 'PhabricatorPasteContentSearchEngineAttachment' => 'applications/paste/engineextension/PhabricatorPasteContentSearchEngineAttachment.php',
'PhabricatorPasteController' => 'applications/paste/controller/PhabricatorPasteController.php',
'PhabricatorPasteDAO' => 'applications/paste/storage/PhabricatorPasteDAO.php',
'PhabricatorPasteEditController' => 'applications/paste/controller/PhabricatorPasteEditController.php',
@@ -6883,6 +6884,7 @@
'PhabricatorPasteApplication' => 'PhabricatorApplication',
'PhabricatorPasteArchiveController' => 'PhabricatorPasteController',
'PhabricatorPasteConfigOptions' => 'PhabricatorApplicationConfigOptions',
+ 'PhabricatorPasteContentSearchEngineAttachment' => 'PhabricatorSearchEngineAttachment',
'PhabricatorPasteController' => 'PhabricatorController',
'PhabricatorPasteDAO' => 'PhabricatorLiskDAO',
'PhabricatorPasteEditController' => 'PhabricatorPasteController',
diff --git a/src/applications/conduit/interface/PhabricatorConduitResultInterface.php b/src/applications/conduit/interface/PhabricatorConduitResultInterface.php
--- a/src/applications/conduit/interface/PhabricatorConduitResultInterface.php
+++ b/src/applications/conduit/interface/PhabricatorConduitResultInterface.php
@@ -5,6 +5,7 @@
public function getFieldSpecificationsForConduit();
public function getFieldValuesForConduit();
+ public function getConduitSearchAttachments();
}
@@ -28,4 +29,8 @@
);
}
+ public function getConduitSearchAttachments() {
+ return array();
+ }
+
*/
diff --git a/src/applications/conduit/query/ConduitResultSearchEngineExtension.php b/src/applications/conduit/query/ConduitResultSearchEngineExtension.php
--- a/src/applications/conduit/query/ConduitResultSearchEngineExtension.php
+++ b/src/applications/conduit/query/ConduitResultSearchEngineExtension.php
@@ -29,4 +29,8 @@
return $object->getFieldValuesForConduit();
}
+ public function getSearchAttachments($object) {
+ return $object->getConduitSearchAttachments();
+ }
+
}
diff --git a/src/applications/maniphest/storage/ManiphestTask.php b/src/applications/maniphest/storage/ManiphestTask.php
--- a/src/applications/maniphest/storage/ManiphestTask.php
+++ b/src/applications/maniphest/storage/ManiphestTask.php
@@ -437,4 +437,8 @@
);
}
+ public function getConduitSearchAttachments() {
+ return array();
+ }
+
}
diff --git a/src/applications/owners/storage/PhabricatorOwnersPackage.php b/src/applications/owners/storage/PhabricatorOwnersPackage.php
--- a/src/applications/owners/storage/PhabricatorOwnersPackage.php
+++ b/src/applications/owners/storage/PhabricatorOwnersPackage.php
@@ -395,4 +395,8 @@
);
}
+ public function getConduitSearchAttachments() {
+ return array();
+ }
+
}
diff --git a/src/applications/paste/engineextension/PhabricatorPasteContentSearchEngineAttachment.php b/src/applications/paste/engineextension/PhabricatorPasteContentSearchEngineAttachment.php
new file mode 100644
--- /dev/null
+++ b/src/applications/paste/engineextension/PhabricatorPasteContentSearchEngineAttachment.php
@@ -0,0 +1,24 @@
+<?php
+
+final class PhabricatorPasteContentSearchEngineAttachment
+ extends PhabricatorSearchEngineAttachment {
+
+ public function getAttachmentName() {
+ return pht('Paste Content');
+ }
+
+ public function getAttachmentDescription() {
+ return pht('Get the full content for each paste.');
+ }
+
+ public function willLoadAttachmentData($query, $spec) {
+ $query->needRawContent(true);
+ }
+
+ public function getAttachmentForObject($object, $data, $spec) {
+ return array(
+ 'data' => $object->getRawContent(),
+ );
+ }
+
+}
diff --git a/src/applications/paste/storage/PhabricatorPaste.php b/src/applications/paste/storage/PhabricatorPaste.php
--- a/src/applications/paste/storage/PhabricatorPaste.php
+++ b/src/applications/paste/storage/PhabricatorPaste.php
@@ -285,4 +285,11 @@
);
}
+ public function getConduitSearchAttachments() {
+ return array(
+ id(new PhabricatorPasteContentSearchEngineAttachment())
+ ->setAttachmentKey('content'),
+ );
+ }
+
}
diff --git a/src/applications/project/engineextension/PhabricatorProjectsSearchEngineExtension.php b/src/applications/project/engineextension/PhabricatorProjectsSearchEngineExtension.php
--- a/src/applications/project/engineextension/PhabricatorProjectsSearchEngineExtension.php
+++ b/src/applications/project/engineextension/PhabricatorProjectsSearchEngineExtension.php
@@ -49,7 +49,7 @@
return $fields;
}
- public function getSearchAttachments() {
+ public function getSearchAttachments($object) {
return array(
id(new PhabricatorProjectsSearchEngineAttachment())
->setAttachmentKey('projects'),
diff --git a/src/applications/search/engine/PhabricatorApplicationSearchEngine.php b/src/applications/search/engine/PhabricatorApplicationSearchEngine.php
--- a/src/applications/search/engine/PhabricatorApplicationSearchEngine.php
+++ b/src/applications/search/engine/PhabricatorApplicationSearchEngine.php
@@ -1319,10 +1319,11 @@
public function getConduitSearchAttachments() {
$extensions = $this->getEngineExtensions();
+ $object = $this->newResultObject();
$attachments = array();
foreach ($extensions as $extension) {
- $extension_attachments = $extension->getSearchAttachments();
+ $extension_attachments = $extension->getSearchAttachments($object);
foreach ($extension_attachments as $attachment) {
$attachment_key = $attachment->getAttachmentKey();
if (isset($attachments[$attachment_key])) {
diff --git a/src/applications/search/engineextension/PhabricatorSearchEngineExtension.php b/src/applications/search/engineextension/PhabricatorSearchEngineExtension.php
--- a/src/applications/search/engineextension/PhabricatorSearchEngineExtension.php
+++ b/src/applications/search/engineextension/PhabricatorSearchEngineExtension.php
@@ -40,7 +40,7 @@
return array();
}
- public function getSearchAttachments() {
+ public function getSearchAttachments($object) {
return array();
}
diff --git a/src/applications/subscriptions/engineextension/PhabricatorSubscriptionsSearchEngineExtension.php b/src/applications/subscriptions/engineextension/PhabricatorSubscriptionsSearchEngineExtension.php
--- a/src/applications/subscriptions/engineextension/PhabricatorSubscriptionsSearchEngineExtension.php
+++ b/src/applications/subscriptions/engineextension/PhabricatorSubscriptionsSearchEngineExtension.php
@@ -50,7 +50,7 @@
return $fields;
}
- public function getSearchAttachments() {
+ public function getSearchAttachments($object) {
return array(
id(new PhabricatorSubscriptionsSearchEngineAttachment())
->setAttachmentKey('subscribers'),

File Metadata

Mime Type
text/plain
Expires
Sat, Mar 15, 3:30 AM (1 w, 4 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7388981
Default Alt Text
D14774.diff (7 KB)

Event Timeline