diff options
Diffstat (limited to 'java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java')
-rw-r--r-- | java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java b/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java index b3fa087f18..f8a4a9909e 100644 --- a/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java +++ b/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java @@ -89,6 +89,7 @@ import com.google.gerrit.server.permissions.PermissionBackend; import com.google.gerrit.server.plugincontext.PluginSetContext; import com.google.gerrit.server.project.ChildProjects; import com.google.gerrit.server.project.ProjectCache; +import com.google.gerrit.server.query.change.ChangePredicates.EditByPredicateProvider; import com.google.gerrit.server.query.change.PredicateArgs.ValOp; import com.google.gerrit.server.rules.SubmitRule; import com.google.gerrit.server.submit.SubmitDryRun; @@ -284,6 +285,8 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil private final Provider<CurrentUser> self; + private final EditByPredicateProvider editByPredicateProvider; + @Inject @VisibleForTesting public Arguments( @@ -318,7 +321,8 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil ExperimentFeatures experimentFeatures, HasOperandAliasConfig hasOperandAliasConfig, ChangeIsVisibleToPredicate.Factory changeIsVisbleToPredicateFactory, - PluginSetContext<SubmitRule> submitRules) { + PluginSetContext<SubmitRule> submitRules, + EditByPredicateProvider editByPredicateProvider) { this( queryProvider, rewriter, @@ -352,7 +356,8 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil experimentFeatures, hasOperandAliasConfig, changeIsVisbleToPredicateFactory, - submitRules); + submitRules, + editByPredicateProvider); } private Arguments( @@ -388,7 +393,8 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil ExperimentFeatures experimentFeatures, HasOperandAliasConfig hasOperandAliasConfig, ChangeIsVisibleToPredicate.Factory changeIsVisbleToPredicateFactory, - PluginSetContext<SubmitRule> submitRules) { + PluginSetContext<SubmitRule> submitRules, + EditByPredicateProvider editByPredicateProvider) { this.queryProvider = queryProvider; this.rewriter = rewriter; this.opFactories = opFactories; @@ -422,6 +428,7 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil this.experimentFeatures = experimentFeatures; this.hasOperandAliasConfig = hasOperandAliasConfig; this.submitRules = submitRules; + this.editByPredicateProvider = editByPredicateProvider; } public Arguments asUser(CurrentUser otherUser) { @@ -458,7 +465,8 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil experimentFeatures, hasOperandAliasConfig, changeIsVisbleToPredicateFactory, - submitRules); + submitRules, + editByPredicateProvider); } Arguments asUser(Account.Id otherId) { @@ -646,7 +654,7 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil } if ("edit".equalsIgnoreCase(value)) { - return ChangePredicates.editBy(self()); + return this.args.editByPredicateProvider.editBy(self()); } if ("attention".equalsIgnoreCase(value)) { @@ -1847,7 +1855,7 @@ public class ChangeQueryBuilder extends QueryBuilder<ChangeData, ChangeQueryBuil } /** Returns {@link com.google.gerrit.entities.Account.Id} of the identified calling user. */ - public Account.Id self() throws QueryParseException { + private Account.Id self() throws QueryParseException { return args.getIdentifiedUser().getAccountId(); } |