Remove product literal strings in "pht()", part 18
[phabricator.git] / src / applications / almanac / engineextension / AlmanacCacheEngineExtension.php
blobd00926232d006dfe8a6642a8f4658bcd5f9bb983
1 <?php
3 final class AlmanacCacheEngineExtension
4 extends PhabricatorCacheEngineExtension {
6 const EXTENSIONKEY = 'almanac';
8 public function getExtensionName() {
9 return pht('Almanac Core Objects');
12 public function discoverLinkedObjects(
13 PhabricatorCacheEngine $engine,
14 array $objects) {
15 $viewer = $engine->getViewer();
17 $results = array();
18 foreach ($this->selectObjects($objects, 'AlmanacBinding') as $object) {
19 $results[] = $object->getServicePHID();
20 $results[] = $object->getDevicePHID();
21 $results[] = $object->getInterfacePHID();
24 $devices = $this->selectObjects($objects, 'AlmanacDevice');
25 if ($devices) {
26 $interfaces = id(new AlmanacInterfaceQuery())
27 ->setViewer($viewer)
28 ->withDevicePHIDs(mpull($devices, 'getPHID'))
29 ->execute();
30 foreach ($interfaces as $interface) {
31 $results[] = $interface;
34 $bindings = id(new AlmanacBindingQuery())
35 ->setViewer($viewer)
36 ->withDevicePHIDs(mpull($devices, 'getPHID'))
37 ->execute();
38 foreach ($bindings as $binding) {
39 $results[] = $binding;
43 foreach ($this->selectObjects($objects, 'AlmanacInterface') as $iface) {
44 $results[] = $iface->getDevicePHID();
45 $results[] = $iface->getNetworkPHID();
48 foreach ($this->selectObjects($objects, 'AlmanacProperty') as $object) {
49 $results[] = $object->getObjectPHID();
52 return $results;
55 public function deleteCaches(
56 PhabricatorCacheEngine $engine,
57 array $objects) {
58 return;