From afa4d6660176ea39efae6e9a2cc1ca915f0ba18f Mon Sep 17 00:00:00 2001 From: nickfelt Date: Tue, 18 Oct 2016 07:14:23 -0700 Subject: [PATCH] Remove final on @ParametersDelegate field Compile-time constant inlining may interfere with JCommander's processing if a field is made final - @ParametersDelegate fields are particularly misleading. Remove the one instance of that and add warning comments elsewhere. See ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=136469351 --- java/google/registry/tools/BigqueryCommand.java | 1 + java/google/registry/tools/RegistrarActivityReportCommand.java | 3 ++- java/google/registry/tools/RegistryCli.java | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/java/google/registry/tools/BigqueryCommand.java b/java/google/registry/tools/BigqueryCommand.java index 3a9a71fb9..ebf96160b 100644 --- a/java/google/registry/tools/BigqueryCommand.java +++ b/java/google/registry/tools/BigqueryCommand.java @@ -21,6 +21,7 @@ import google.registry.bigquery.BigqueryConnection; abstract class BigqueryCommand implements Command { /** Parameter delegate for encapsulating flags needed to set up the {@link BigqueryConnection}. */ + // Do not make this final - compile-time constant inlining may interfere with JCommander. @ParametersDelegate private BigqueryParameters bigqueryParameters = new BigqueryParameters(); diff --git a/java/google/registry/tools/RegistrarActivityReportCommand.java b/java/google/registry/tools/RegistrarActivityReportCommand.java index 21ced61b6..99492d1b0 100644 --- a/java/google/registry/tools/RegistrarActivityReportCommand.java +++ b/java/google/registry/tools/RegistrarActivityReportCommand.java @@ -36,8 +36,9 @@ import org.joda.time.format.DateTimeFormatter; @Parameters(separators = " =", commandDescription = "Generates a registrar activity report.") final class RegistrarActivityReportCommand implements Command { + // Do not make this final - compile-time constant inlining may interfere with JCommander. @ParametersDelegate - private final BigqueryParameters bigqueryParameters = new BigqueryParameters(); + private BigqueryParameters bigqueryParameters = new BigqueryParameters(); @Parameter( names = {"-t", "--tld"}, diff --git a/java/google/registry/tools/RegistryCli.java b/java/google/registry/tools/RegistryCli.java index 4d542c0f6..fda49e71c 100644 --- a/java/google/registry/tools/RegistryCli.java +++ b/java/google/registry/tools/RegistryCli.java @@ -42,9 +42,11 @@ final class RegistryCli { description = "Sets the default environment to run the command.") private RegistryToolEnvironment environment = RegistryToolEnvironment.PRODUCTION; + // Do not make this final - compile-time constant inlining may interfere with JCommander. @ParametersDelegate private AppEngineConnection connection = new AppEngineConnection(); + // Do not make this final - compile-time constant inlining may interfere with JCommander. @ParametersDelegate private LoggingParameters loggingParams = new LoggingParameters();