@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Adding the Conduit query method.

Summary:
T2154
Adding the Conduit query method implementation, and metadata to the phutil register library.

Test Plan:
Choose conduit.query on the web UI to see information about the method.
Then, click the "Call Method" button and observe the method result.

Reviewers: epriestley

Reviewed By: epriestley

CC: aran, Korvin

Differential Revision: https://secure.phabricator.com/D4550

authored by

Nick Pellegrino and committed by
epriestley
bb175655 117589c1

+43
+2
src/__phutil_library_map__.php
··· 112 112 'ConduitAPI_conduit_connect_Method' => 'applications/conduit/method/ConduitAPI_conduit_connect_Method.php', 113 113 'ConduitAPI_conduit_getcertificate_Method' => 'applications/conduit/method/ConduitAPI_conduit_getcertificate_Method.php', 114 114 'ConduitAPI_conduit_ping_Method' => 'applications/conduit/method/ConduitAPI_conduit_ping_Method.php', 115 + 'ConduitAPI_conduit_query_Method' => 'applications/conduit/method/ConduitAPI_conduit_query_Method.php', 115 116 'ConduitAPI_daemon_launched_Method' => 'applications/daemon/conduit/ConduitAPI_daemon_launched_Method.php', 116 117 'ConduitAPI_daemon_log_Method' => 'applications/daemon/conduit/ConduitAPI_daemon_log_Method.php', 117 118 'ConduitAPI_daemon_setstatus_Method' => 'applications/daemon/conduit/ConduitAPI_daemon_setstatus_Method.php', ··· 1550 1551 'ConduitAPI_conduit_connect_Method' => 'ConduitAPIMethod', 1551 1552 'ConduitAPI_conduit_getcertificate_Method' => 'ConduitAPIMethod', 1552 1553 'ConduitAPI_conduit_ping_Method' => 'ConduitAPIMethod', 1554 + 'ConduitAPI_conduit_query_Method' => 'ConduitAPIMethod', 1553 1555 'ConduitAPI_daemon_launched_Method' => 'ConduitAPIMethod', 1554 1556 'ConduitAPI_daemon_log_Method' => 'ConduitAPIMethod', 1555 1557 'ConduitAPI_daemon_setstatus_Method' => 'ConduitAPIMethod',
+41
src/applications/conduit/method/ConduitAPI_conduit_query_Method.php
··· 1 + <?php 2 + 3 + /** 4 + * @group conduit 5 + */ 6 + final class ConduitAPI_conduit_query_Method extends ConduitAPIMethod { 7 + 8 + public function getMethodDescription() { 9 + return "Returns the parameters of the Conduit methods."; 10 + } 11 + 12 + public function defineParamTypes() { 13 + return array(); 14 + } 15 + 16 + public function defineReturnType() { 17 + return 'dict<dict>'; 18 + } 19 + 20 + public function defineErrorTypes() { 21 + return array(); 22 + } 23 + 24 + protected function execute(ConduitAPIRequest $request) { 25 + $classes = id(new PhutilSymbolLoader()) 26 + ->setAncestorClass('ConduitAPIMethod') 27 + ->setType('class') 28 + ->setConcreteOnly(true) 29 + ->selectSymbolsWithoutLoading(); 30 + 31 + $names_to_params = array(); 32 + foreach ($classes as $class) { 33 + $method_name = $class["name"]; 34 + $obj = newv($method_name, array()); 35 + $names_to_params[$this->getAPIMethodNameFromClassName($method_name)] = 36 + array("params" => $obj->defineParamTypes()); 37 + } 38 + return $names_to_params; 39 + } 40 + 41 + }