Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/src/applications/diffusion/conduit/DiffusionLookSoonConduitAPIMethod.php
12242 views
1
<?php
2
3
final class DiffusionLookSoonConduitAPIMethod
4
extends DiffusionConduitAPIMethod {
5
6
public function getAPIMethodName() {
7
return 'diffusion.looksoon';
8
}
9
10
public function getMethodStatus() {
11
return self::METHOD_STATUS_UNSTABLE;
12
}
13
14
public function getMethodDescription() {
15
return pht(
16
'Advises this server to look for new commits in a repository as soon '.
17
'as possible. This advice is most useful if you have just pushed new '.
18
'commits to that repository.');
19
}
20
21
protected function defineReturnType() {
22
return 'void';
23
}
24
25
protected function defineParamTypes() {
26
return array(
27
'callsigns' => 'optional list<string> (deprecated)',
28
'repositories' => 'optional list<string>',
29
'urgency' => 'optional string',
30
);
31
}
32
33
protected function execute(ConduitAPIRequest $request) {
34
// NOTE: The "urgency" parameter does nothing, it is just a hilarious joke
35
// which exemplifies the boundless clever wit of this project.
36
37
$identifiers = $request->getValue('repositories');
38
39
if (!$identifiers) {
40
$identifiers = $request->getValue('callsigns');
41
}
42
43
if (!$identifiers) {
44
return null;
45
}
46
47
$repositories = id(new PhabricatorRepositoryQuery())
48
->setViewer($request->getUser())
49
->withIdentifiers($identifiers)
50
->execute();
51
52
foreach ($repositories as $repository) {
53
$repository->writeStatusMessage(
54
PhabricatorRepositoryStatusMessage::TYPE_NEEDS_UPDATE,
55
PhabricatorRepositoryStatusMessage::CODE_OKAY);
56
}
57
58
return null;
59
}
60
61
}
62
63