@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.

Add getQueryApplicationClass() to *TransactionQuery.php classes

Summary:
Add `getQueryApplicationClass()` to all `*TransactionQuery.php` classes similar to other `*Query.php` classes having the same function, and make the parent function in `PhabricatorApplicationTransactionQuery.php` abstract.

In the future, this will enable excluding transaction query results based on their underlying application (for example if an application has been uninstalled) to mitigate the problem of overheated search results. See https://we.phorge.it/T15642 for context.

The only callers of `getQueryApplicationClass()` are in `src/infrastructure/query/policy/PhabricatorPolicyAwareQuery.php` and `src/applications/policy/__tests__/PhabricatorPolicyTestCase.php`.

See T15642

Test Plan:
Patch changes only one existing code place, thus check if related pages still work as expected:
* Go to http://phorge.localhost/feed/
* Go to http://phorge.localhost/feed/transactions/
* On http://phorge.localhost/feed/transactions/ , click `Edit Query` and set `Object Types` to `Application` etc.

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15642

Differential Revision: https://we.phorge.it/D25500

+326 -1
+4
src/applications/almanac/query/AlmanacBindingTransactionQuery.php
··· 7 7 return new AlmanacBindingTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAlmanacApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/almanac/query/AlmanacDeviceTransactionQuery.php
··· 7 7 return new AlmanacDeviceTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAlmanacApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/almanac/query/AlmanacInterfaceTransactionQuery.php
··· 7 7 return new AlmanacInterfaceTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAlmanacApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/almanac/query/AlmanacNamespaceTransactionQuery.php
··· 7 7 return new AlmanacNamespaceTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAlmanacApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/almanac/query/AlmanacNetworkTransactionQuery.php
··· 7 7 return new AlmanacNetworkTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAlmanacApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/almanac/query/AlmanacServiceTransactionQuery.php
··· 7 7 return new AlmanacServiceTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAlmanacApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/audit/query/PhabricatorAuditTransactionQuery.php
··· 7 7 return new PhabricatorAuditTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAuditApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/auth/query/PhabricatorAuthContactNumberTransactionQuery.php
··· 7 7 return new PhabricatorAuthContactNumberTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAuthApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/auth/query/PhabricatorAuthFactorProviderTransactionQuery.php
··· 7 7 return new PhabricatorAuthFactorProviderTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAuthApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/auth/query/PhabricatorAuthMessageTransactionQuery.php
··· 7 7 return new PhabricatorAuthMessageTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAuthApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/auth/query/PhabricatorAuthPasswordTransactionQuery.php
··· 7 7 return new PhabricatorAuthPasswordTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAuthApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/auth/query/PhabricatorAuthProviderConfigTransactionQuery.php
··· 7 7 return new PhabricatorAuthProviderConfigTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAuthApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/auth/query/PhabricatorAuthSSHKeyTransactionQuery.php
··· 7 7 return new PhabricatorAuthSSHKeyTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorAuthApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/badges/query/PhabricatorBadgesTransactionQuery.php
··· 7 7 return new PhabricatorBadgesTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorBadgesApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/calendar/query/PhabricatorCalendarEventTransactionQuery.php
··· 7 7 return new PhabricatorCalendarEventTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorCalendarApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/calendar/query/PhabricatorCalendarExportTransactionQuery.php
··· 7 7 return new PhabricatorCalendarExportTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorCalendarApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/calendar/query/PhabricatorCalendarImportTransactionQuery.php
··· 7 7 return new PhabricatorCalendarImportTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorCalendarApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/config/query/PhabricatorConfigTransactionQuery.php
··· 7 7 return new PhabricatorConfigTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorConfigApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/conpherence/query/ConpherenceTransactionQuery.php
··· 7 7 return new ConpherenceTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorConpherenceApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/countdown/query/PhabricatorCountdownTransactionQuery.php
··· 7 7 return new PhabricatorCountdownTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorCountdownApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/dashboard/query/PhabricatorDashboardPanelTransactionQuery.php
··· 7 7 return new PhabricatorDashboardPanelTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDashboardApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/dashboard/query/PhabricatorDashboardPortalTransactionQuery.php
··· 7 7 return new PhabricatorDashboardPortalTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDashboardApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/dashboard/query/PhabricatorDashboardTransactionQuery.php
··· 7 7 return new PhabricatorDashboardTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDashboardApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/differential/query/DifferentialDiffTransactionQuery.php
··· 7 7 return new DifferentialDiffTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDifferentialApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/differential/query/DifferentialTransactionQuery.php
··· 7 7 return new DifferentialTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDifferentialApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/diviner/query/DivinerLiveBookTransactionQuery.php
··· 7 7 return new DivinerLiveBookTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDivinerApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/drydock/query/DrydockBlueprintTransactionQuery.php
··· 7 7 return new DrydockBlueprintTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDrydockApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/files/query/PhabricatorFileTransactionQuery.php
··· 7 7 return new PhabricatorFileTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorFilesApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/fund/query/FundBackerTransactionQuery.php
··· 7 7 return new FundBackerTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorFundApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/fund/query/FundInitiativeTransactionQuery.php
··· 7 7 return new FundInitiativeTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorFundApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/harbormaster/query/HarbormasterBuildPlanTransactionQuery.php
··· 7 7 return new HarbormasterBuildPlanTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorHarbormasterApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/harbormaster/query/HarbormasterBuildStepTransactionQuery.php
··· 7 7 return new HarbormasterBuildStepTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorHarbormasterApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/harbormaster/query/HarbormasterBuildTransactionQuery.php
··· 7 7 return new HarbormasterBuildTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorHarbormasterApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/harbormaster/query/HarbormasterBuildableTransactionQuery.php
··· 7 7 return new HarbormasterBuildableTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorHarbormasterApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/herald/query/HeraldTransactionQuery.php
··· 7 7 return new HeraldRuleTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorHeraldApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/herald/query/HeraldWebhookTransactionQuery.php
··· 7 7 return new HeraldWebhookTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorHeraldApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/legalpad/query/LegalpadTransactionQuery.php
··· 7 7 return new LegalpadTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorLegalpadApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/macro/query/PhabricatorMacroTransactionQuery.php
··· 7 7 return new PhabricatorMacroTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorMacroApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/maniphest/query/ManiphestTransactionQuery.php
··· 7 7 return new ManiphestTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorManiphestApplication::class; 12 + } 13 + 10 14 }
+7
src/applications/meta/query/PhabricatorApplicationApplicationTransactionQuery.php
··· 7 7 return new PhabricatorApplicationApplicationTransaction(); 8 8 } 9 9 10 + // NOTE: Although this belongs to the "Applications" application, trying 11 + // to filter its results just leaves us recursing indefinitely. Users 12 + // always have access to applications regardless of other policy settings 13 + // anyway. 14 + public function getQueryApplicationClass() { 15 + return null; 16 + } 10 17 }
+4
src/applications/metamta/query/PhabricatorMetaMTAApplicationEmailTransactionQuery.php
··· 7 7 return new PhabricatorMetaMTAApplicationEmailTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorMetaMTAApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/nuance/query/NuanceItemTransactionQuery.php
··· 7 7 return new NuanceItemTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorNuanceApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/nuance/query/NuanceQueueTransactionQuery.php
··· 7 7 return new NuanceQueueTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorNuanceApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/nuance/query/NuanceSourceTransactionQuery.php
··· 7 7 return new NuanceSourceTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorNuanceApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/oauthserver/query/PhabricatorOAuthServerTransactionQuery.php
··· 7 7 return new PhabricatorOAuthServerTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorOAuthServerApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/owners/query/PhabricatorOwnersPackageTransactionQuery.php
··· 7 7 return new PhabricatorOwnersPackageTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorOwnersApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/packages/query/PhabricatorPackagesPackageTransactionQuery.php
··· 7 7 return new PhabricatorPackagesPackageTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPackagesApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/packages/query/PhabricatorPackagesPublisherTransactionQuery.php
··· 7 7 return new PhabricatorPackagesPublisherTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPackagesApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/packages/query/PhabricatorPackagesVersionTransactionQuery.php
··· 7 7 return new PhabricatorPackagesVersionTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPackagesApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/passphrase/query/PassphraseCredentialTransactionQuery.php
··· 7 7 return new PassphraseCredentialTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPassphraseApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/paste/query/PhabricatorPasteTransactionQuery.php
··· 7 7 return new PhabricatorPasteTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPasteApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/people/query/PhabricatorPeopleTransactionQuery.php
··· 7 7 return new PhabricatorUserTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPeopleApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phame/query/PhameBlogTransactionQuery.php
··· 7 7 return new PhameBlogTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhameApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phame/query/PhamePostTransactionQuery.php
··· 7 7 return new PhamePostTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhameApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phlux/query/PhluxTransactionQuery.php
··· 7 7 return new PhluxTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhluxApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/pholio/query/PholioTransactionQuery.php
··· 7 7 return new PholioTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPholioApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phortune/query/PhortuneAccountEmailTransactionQuery.php
··· 7 7 return new PhortuneAccountEmailTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhortuneApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phortune/query/PhortuneAccountTransactionQuery.php
··· 7 7 return new PhortuneAccountTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhortuneApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phortune/query/PhortuneCartTransactionQuery.php
··· 7 7 return new PhortuneCartTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhortuneApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phortune/query/PhortuneMerchantTransactionQuery.php
··· 7 7 return new PhortuneMerchantTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhortuneApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phortune/query/PhortunePaymentMethodTransactionQuery.php
··· 7 7 return new PhortunePaymentMethodTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhortuneApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phortune/query/PhortunePaymentProviderConfigTransactionQuery.php
··· 7 7 return new PhortunePaymentProviderConfigTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhortuneApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phortune/query/PhortuneSubscriptionTransactionQuery.php
··· 7 7 return new PhortuneSubscriptionTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhortuneApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phriction/query/PhrictionTransactionQuery.php
··· 7 7 return new PhrictionTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhrictionApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/phurl/query/PhabricatorPhurlURLTransactionQuery.php
··· 7 7 return new PhabricatorPhurlURLTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPhurlApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/ponder/query/PonderAnswerTransactionQuery.php
··· 7 7 return new PonderAnswerTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPonderApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/ponder/query/PonderQuestionTransactionQuery.php
··· 7 7 return new PonderQuestionTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorPonderApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/project/query/PhabricatorProjectColumnTransactionQuery.php
··· 7 7 return new PhabricatorProjectColumnTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorProjectApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/project/query/PhabricatorProjectTransactionQuery.php
··· 7 7 return new PhabricatorProjectTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorProjectApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/project/query/PhabricatorProjectTriggerTransactionQuery.php
··· 7 7 return new PhabricatorProjectTriggerTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorProjectApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/repository/query/PhabricatorRepositoryIdentityTransactionQuery.php
··· 7 7 return new PhabricatorRepositoryIdentityTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDiffusionApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/repository/query/PhabricatorRepositoryTransactionQuery.php
··· 7 7 return new PhabricatorRepositoryTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDiffusionApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/repository/query/PhabricatorRepositoryURITransactionQuery.php
··· 7 7 return new PhabricatorRepositoryURITransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDiffusionApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/search/query/PhabricatorProfileMenuItemConfigurationTransactionQuery.php
··· 7 7 return new PhabricatorProfileMenuItemConfigurationTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorSearchApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/settings/query/PhabricatorUserPreferencesTransactionQuery.php
··· 7 7 return new PhabricatorUserPreferencesTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorSettingsApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/slowvote/query/PhabricatorSlowvoteTransactionQuery.php
··· 7 7 return new PhabricatorSlowvoteTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorSlowvoteApplication::class; 12 + } 13 + 10 14 }
+4
src/applications/spaces/query/PhabricatorSpacesNamespaceTransactionQuery.php
··· 7 7 return new PhabricatorSpacesNamespaceTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorSpacesApplication::class; 12 + } 13 + 10 14 }
+7 -1
src/applications/transactions/query/PhabricatorApplicationTransactionQuery.php
··· 292 292 return parent::shouldGroupQueryResultRows(); 293 293 } 294 294 295 + /** 296 + * Get name of class of application queried by the query. 297 + * 298 + * To be overwritten by child classes when applicable. 299 + * 300 + * @return string|null Application class name 301 + */ 295 302 public function getQueryApplicationClass() { 296 - // TODO: Sort this out? 297 303 return null; 298 304 } 299 305
+4
src/applications/transactions/query/PhabricatorEditEngineConfigurationTransactionQuery.php
··· 7 7 return new PhabricatorEditEngineConfigurationTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorTransactionsApplication::class; 12 + } 13 + 10 14 }
+4
src/infrastructure/daemon/workers/query/PhabricatorWorkerBulkJobTransactionQuery.php
··· 7 7 return new PhabricatorWorkerBulkJobTransaction(); 8 8 } 9 9 10 + public function getQueryApplicationClass() { 11 + return PhabricatorDaemonsApplication::class; 12 + } 13 + 10 14 }