From cde28583f5648ea65790ad1366c974d625371b24 Mon Sep 17 00:00:00 2001 From: Alex Eng Date: Wed, 20 May 2015 16:14:41 +1000 Subject: [PATCH] Update deprecated reference used. Squashed commit of the following: commit 45657c2a317086263e11621d0d4fe69565756282 Author: Alex Eng Date: Mon May 18 10:17:55 2015 +1000 Update console not available message commit 6bf2bfa24086d50c6da7cbd101a11014ff0f03ce Author: Alex Eng Date: Mon May 18 07:45:56 2015 +1000 Add checking of null System.console commit e8f5085224502cba31effed5b41c106539ed893f Author: Alex Eng Date: Fri May 15 13:12:52 2015 +1000 update deprecated reference used --- .../org/zanata/rest/service/MockFileResource.java | 1 + .../client/commands/ConsoleInteractorImpl.java | 3 +++ .../zanata/client/commands/PushPullCommand.java | 14 +++++--------- .../zanata/client/commands/SystemExitStrategy.java | 2 +- .../zanata/client/commands/init/InitCommand.java | 5 +++++ .../client/commands/push/RawPushCommand.java | 14 ++++++++++++-- .../commands/stats/ConsoleStatisticsOutput.java | 2 +- .../client/commands/stats/CsvStatisticsOutput.java | 4 ++-- .../client/commands/init/InitCommandTest.java | 2 +- .../client/commands/push/RawPushCommandTest.java | 5 ++++- 10 files changed, 35 insertions(+), 17 deletions(-) diff --git a/stub-server/src/main/java/org/zanata/rest/service/MockFileResource.java b/stub-server/src/main/java/org/zanata/rest/service/MockFileResource.java index 59a36215..f4c262a1 100644 --- a/stub-server/src/main/java/org/zanata/rest/service/MockFileResource.java +++ b/stub-server/src/main/java/org/zanata/rest/service/MockFileResource.java @@ -61,6 +61,7 @@ @Path(FileResource.SERVICE_PATH) public class MockFileResource implements FileResource { @Override + @Deprecated public Response acceptedFileTypes() { StringSet extensions = new StringSet(""); for (DocumentType docType : ProjectType diff --git a/zanata-client-commands/src/main/java/org/zanata/client/commands/ConsoleInteractorImpl.java b/zanata-client-commands/src/main/java/org/zanata/client/commands/ConsoleInteractorImpl.java index 08c5a328..7288c6b3 100644 --- a/zanata-client-commands/src/main/java/org/zanata/client/commands/ConsoleInteractorImpl.java +++ b/zanata-client-commands/src/main/java/org/zanata/client/commands/ConsoleInteractorImpl.java @@ -46,6 +46,9 @@ public class ConsoleInteractorImpl implements ConsoleInteractor { public ConsoleInteractorImpl() { console = System.console(); + if (console == null) { + throw new RuntimeException("Console not available: please run from a console, or use batch mode."); + } out = AnsiConsole.out(); } diff --git a/zanata-client-commands/src/main/java/org/zanata/client/commands/PushPullCommand.java b/zanata-client-commands/src/main/java/org/zanata/client/commands/PushPullCommand.java index ac620ad0..19d8505f 100644 --- a/zanata-client-commands/src/main/java/org/zanata/client/commands/PushPullCommand.java +++ b/zanata-client-commands/src/main/java/org/zanata/client/commands/PushPullCommand.java @@ -21,13 +21,11 @@ package org.zanata.client.commands; -import java.io.Console; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.StringWriter; -import java.net.URI; import java.util.ArrayList; import java.util.List; @@ -50,6 +48,8 @@ import org.zanata.rest.dto.resource.TranslationsResource; import org.zanata.util.PathUtil; +import static org.zanata.client.commands.ConsoleInteractor.DisplayMode.Question; + /** * @author Sean Flanigan sflaniga@redhat.com @@ -89,13 +89,9 @@ public PushPullCommand(O opts) { protected void confirmWithUser(String message) throws IOException { if (getOpts().isInteractiveMode()) { - Console console = System.console(); - if (console == null) { - throw new RuntimeException( - "console not available: please run Maven from a console, or use batch mode option (-B)"); - } - console.printf(message + "\nAre you sure (y/n)? "); - expectYes(console); + ConsoleInteractor console = new ConsoleInteractorImpl(); + console.printf(Question, message + "\nAre you sure (y/n)? "); + console.expectYes(); } } diff --git a/zanata-client-commands/src/main/java/org/zanata/client/commands/SystemExitStrategy.java b/zanata-client-commands/src/main/java/org/zanata/client/commands/SystemExitStrategy.java index bf794cfd..6957531e 100644 --- a/zanata-client-commands/src/main/java/org/zanata/client/commands/SystemExitStrategy.java +++ b/zanata-client-commands/src/main/java/org/zanata/client/commands/SystemExitStrategy.java @@ -1,6 +1,6 @@ package org.zanata.client.commands; -@edu.umd.cs.findbugs.annotations.SuppressWarnings({ "DM_EXIT" }) +@edu.umd.cs.findbugs.annotations.SuppressFBWarnings({ "DM_EXIT" }) public class SystemExitStrategy implements AppAbortStrategy { @Override public void abort(String msg) { diff --git a/zanata-client-commands/src/main/java/org/zanata/client/commands/init/InitCommand.java b/zanata-client-commands/src/main/java/org/zanata/client/commands/init/InitCommand.java index fa61c296..989373ea 100644 --- a/zanata-client-commands/src/main/java/org/zanata/client/commands/init/InitCommand.java +++ b/zanata-client-commands/src/main/java/org/zanata/client/commands/init/InitCommand.java @@ -78,6 +78,11 @@ public InitCommand(InitOptions opts) { userConfigHandler = new UserConfigHandler(console, getOpts()); } + @VisibleForTesting + protected InitCommand(InitOptions opts, ConsoleInteractor console) { + this(opts, console, new RestClientFactory() {}); + } + @VisibleForTesting protected InitCommand(InitOptions opts, ConsoleInteractor console, diff --git a/zanata-client-commands/src/main/java/org/zanata/client/commands/push/RawPushCommand.java b/zanata-client-commands/src/main/java/org/zanata/client/commands/push/RawPushCommand.java index 598c49ba..e60063f5 100644 --- a/zanata-client-commands/src/main/java/org/zanata/client/commands/push/RawPushCommand.java +++ b/zanata-client-commands/src/main/java/org/zanata/client/commands/push/RawPushCommand.java @@ -66,6 +66,7 @@ import org.zanata.rest.client.RestClientFactory; import org.zanata.rest.dto.ChunkUploadResponse; +import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Optional; import com.google.common.collect.ImmutableList; @@ -85,19 +86,28 @@ public class RawPushCommand extends PushPullCommand { private static final Pattern fileNameExtensionsPattern = Pattern.compile( "(?:([^\\[]*)?(?:\\[(.*?)\\])?)"); - private final ConsoleInteractor consoleInteractor = - new ConsoleInteractorImpl(); + private final ConsoleInteractor consoleInteractor; private FileResourceClient client; public RawPushCommand(PushOptions opts) { super(opts); client = getClientFactory().getFileResourceClient(); + consoleInteractor = new ConsoleInteractorImpl(); } public RawPushCommand(PushOptions opts, RestClientFactory clientFactory) { super(opts, clientFactory); client = getClientFactory().getFileResourceClient(); + consoleInteractor = new ConsoleInteractorImpl(); + } + + @VisibleForTesting + protected RawPushCommand(PushOptions opts, RestClientFactory clientFactory, + ConsoleInteractor console) { + super(opts, clientFactory); + client = getClientFactory().getFileResourceClient(); + this.consoleInteractor = console; } /** diff --git a/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/ConsoleStatisticsOutput.java b/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/ConsoleStatisticsOutput.java index 832e5bf5..8ce6da12 100644 --- a/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/ConsoleStatisticsOutput.java +++ b/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/ConsoleStatisticsOutput.java @@ -78,7 +78,7 @@ public int compare(TranslationStatistics o1, TranslationStatistics s = stats.get(i); data[i] = new Object[] { s.getLocale(), s.getUnit(), s.getTotal(), - s.getTranslated(), s.getNeedReview(), + s.getTranslatedAndApproved(), s.getDraft(), s.getUntranslated(), s.getLastTranslated() }; } diff --git a/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/CsvStatisticsOutput.java b/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/CsvStatisticsOutput.java index a4608ad3..898f95a9 100644 --- a/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/CsvStatisticsOutput.java +++ b/zanata-client-commands/src/main/java/org/zanata/client/commands/stats/CsvStatisticsOutput.java @@ -81,8 +81,8 @@ private void writeToCsv(ContainerTranslationStatistics statistics, writer.writeNext(new String[] { transStats.getLocale(), transStats.getUnit().toString(), Long.toString(transStats.getTotal()), - Long.toString(transStats.getTranslated()), - Long.toString(transStats.getNeedReview()), + Long.toString(transStats.getTranslatedAndApproved()), + Long.toString(transStats.getDraft()), Long.toString(transStats.getUntranslated()), transStats.getLastTranslated() }); } diff --git a/zanata-client-commands/src/test/java/org/zanata/client/commands/init/InitCommandTest.java b/zanata-client-commands/src/test/java/org/zanata/client/commands/init/InitCommandTest.java index 111cd450..3c868406 100644 --- a/zanata-client-commands/src/test/java/org/zanata/client/commands/init/InitCommandTest.java +++ b/zanata-client-commands/src/test/java/org/zanata/client/commands/init/InitCommandTest.java @@ -57,7 +57,7 @@ public void setUp() throws IOException { @Test public void createCommandWithoutMandatoryOptionsWillNotCauseException() { // we don't have server url etc yet - command = new InitCommand(opts); + command = new InitCommand(opts, console); } @Test diff --git a/zanata-client-commands/src/test/java/org/zanata/client/commands/push/RawPushCommandTest.java b/zanata-client-commands/src/test/java/org/zanata/client/commands/push/RawPushCommandTest.java index 567fccc1..c7ba4e86 100644 --- a/zanata-client-commands/src/test/java/org/zanata/client/commands/push/RawPushCommandTest.java +++ b/zanata-client-commands/src/test/java/org/zanata/client/commands/push/RawPushCommandTest.java @@ -6,6 +6,7 @@ import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; +import org.zanata.client.commands.ConsoleInteractor; import org.zanata.rest.client.RestClientFactory; import static org.hamcrest.Matchers.contains; @@ -23,6 +24,8 @@ public class RawPushCommandTest { private PushOptions opts; @Mock private RestClientFactory clientFactory; + @Mock + private ConsoleInteractor console; private RawPushCommand command; @@ -32,7 +35,7 @@ public void setup() { when(opts.getProj()).thenReturn("project"); when(opts.getProjectVersion()).thenReturn("version"); when(opts.getProjectType()).thenReturn("File"); - command = new RawPushCommand(opts, clientFactory); + command = new RawPushCommand(opts, clientFactory, console); } @Test