Repository: james-project Updated Branches: refs/heads/master d630f651c -> 4231ebfa7
JAMES-2150 Used UTF-8 when reading Streams, added licence, reformatted autoformat Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/e53eb321 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/e53eb321 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/e53eb321 Branch: refs/heads/master Commit: e53eb3217969e7a8f202f7737550efaa86e4b996 Parents: b61f972 Author: matzepan <[email protected]> Authored: Wed Oct 24 20:47:06 2018 +0200 Committer: Benoit Tellier <[email protected]> Committed: Mon Oct 29 19:14:40 2018 +0700 ---------------------------------------------------------------------- .../java/org/apache/james/cli/ServerCmd.java | 68 ++++++++++---------- .../james/modules/protocols/SieveProbeImpl.java | 3 +- .../lib/SieveRepositoryManagement.java | 3 +- .../lib/SieveRepositoryManagementTest.java | 23 ++++++- 4 files changed, 60 insertions(+), 37 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/e53eb321/server/container/cli/src/main/java/org/apache/james/cli/ServerCmd.java ---------------------------------------------------------------------- diff --git a/server/container/cli/src/main/java/org/apache/james/cli/ServerCmd.java b/server/container/cli/src/main/java/org/apache/james/cli/ServerCmd.java index 943ed83..e1e9864 100644 --- a/server/container/cli/src/main/java/org/apache/james/cli/ServerCmd.java +++ b/server/container/cli/src/main/java/org/apache/james/cli/ServerCmd.java @@ -77,17 +77,6 @@ public class ServerCmd { private static final String DEFAULT_HOST = "127.0.0.1"; private static final int DEFAULT_PORT = 9999; private static final Logger LOG = LoggerFactory.getLogger(ServerCmd.class); - private final DataProbe probe; - private final MailboxProbe mailboxProbe; - private final QuotaProbe quotaProbe; - private final SieveProbe sieveProbe; - - public ServerCmd(DataProbe probe, MailboxProbe mailboxProbe, QuotaProbe quotaProbe, SieveProbe sieveProbe) { - this.probe = probe; - this.mailboxProbe = mailboxProbe; - this.quotaProbe = quotaProbe; - this.sieveProbe = sieveProbe; - } private static Options createOptions() { return new Options() @@ -136,6 +125,18 @@ public class ServerCmd { printStream); stopWatch.stop(); } + + private final DataProbe probe; + private final MailboxProbe mailboxProbe; + private final QuotaProbe quotaProbe; + private final SieveProbe sieveProbe; + + public ServerCmd(DataProbe probe, MailboxProbe mailboxProbe, QuotaProbe quotaProbe, SieveProbe sieveProbe) { + this.probe = probe; + this.mailboxProbe = mailboxProbe; + this.quotaProbe = quotaProbe; + this.sieveProbe = sieveProbe; + } @VisibleForTesting static CommandLine parseCommandLine(String[] args) throws ParseException { @@ -177,27 +178,6 @@ public class ServerCmd { System.exit(1); } - private static void print(String[] data, PrintStream out) { - print(Arrays.asList(data), out); - } - - private static void print(Iterable<String> data, PrintStream out) { - if (data != null) { - out.println(Joiner.on('\n').join(data)); - } - } - - private static void printUsage() { - StringBuilder footerBuilder = new StringBuilder(); - for (CmdType cmdType : CmdType.values()) { - footerBuilder.append(cmdType.getUsage()).append("\n"); - } - new HelpFormatter().printHelp( - String.format("java %s --host <arg> <command>%n", ServerCmd.class.getName()), - "", - createOptions(), - footerBuilder.toString()); - } @VisibleForTesting private CmdType executeCommandLine(CommandLine commandLine, PrintStream printStream) throws Exception { @@ -368,7 +348,7 @@ public class ServerCmd { long value = Long.parseLong(argument); return longToSerializableQuotaValue(value, QuotaCount.unlimited(), QuotaCount::count); } - + private <T extends QuotaValue<T>> SerializableQuotaValue<T> longToSerializableQuotaValue(long value, T unlimited, Function<Long, T> factory) { return SerializableQuotaValue.valueOf(Optional.of(longToQuotaValue(value, unlimited, factory))); } @@ -383,6 +363,28 @@ public class ServerCmd { throw new IllegalArgumentException("Quota should be -1 for unlimited or a positive value"); } + private static void print(String[] data, PrintStream out) { + print(Arrays.asList(data), out); + } + + private static void print(Iterable<String> data, PrintStream out) { + if (data != null) { + out.println(Joiner.on('\n').join(data)); + } + } + + private static void printUsage() { + StringBuilder footerBuilder = new StringBuilder(); + for (CmdType cmdType : CmdType.values()) { + footerBuilder.append(cmdType.getUsage()).append("\n"); + } + new HelpFormatter().printHelp( + String.format("java %s --host <arg> <command>%n", ServerCmd.class.getName()), + "", + createOptions(), + footerBuilder.toString()); + } + private void printStorageQuota(String quotaRootString, SerializableQuota<QuotaSize> quota, PrintStream printStream) { printStream.println(String.format("Storage quota for %s is: %s / %s", quotaRootString, http://git-wip-us.apache.org/repos/asf/james-project/blob/e53eb321/server/container/guice/protocols/managedsieve/src/main/java/org/apache/james/modules/protocols/SieveProbeImpl.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/managedsieve/src/main/java/org/apache/james/modules/protocols/SieveProbeImpl.java b/server/container/guice/protocols/managedsieve/src/main/java/org/apache/james/modules/protocols/SieveProbeImpl.java index 17271d3..2d28493 100644 --- a/server/container/guice/protocols/managedsieve/src/main/java/org/apache/james/modules/protocols/SieveProbeImpl.java +++ b/server/container/guice/protocols/managedsieve/src/main/java/org/apache/james/modules/protocols/SieveProbeImpl.java @@ -20,6 +20,7 @@ package org.apache.james.modules.protocols; import java.io.FileInputStream; import java.io.InputStream; +import java.nio.charset.StandardCharsets; import javax.inject.Inject; import org.apache.commons.io.IOUtils; @@ -81,7 +82,7 @@ public class SieveProbeImpl implements GuiceProbe, SieveProbe { @Override public void addActiveSieveScriptFromFile(String userName, String name, String path) throws Exception { try (InputStream scriptFileAsStream = new FileInputStream(path)) { - addActiveSieveScript(userName, name, IOUtils.toString(scriptFileAsStream)); + addActiveSieveScript(userName, name, IOUtils.toString(scriptFileAsStream, StandardCharsets.UTF_8)); } } } http://git-wip-us.apache.org/repos/asf/james-project/blob/e53eb321/server/data/data-library/src/main/java/org/apache/james/sieverepository/lib/SieveRepositoryManagement.java ---------------------------------------------------------------------- diff --git a/server/data/data-library/src/main/java/org/apache/james/sieverepository/lib/SieveRepositoryManagement.java b/server/data/data-library/src/main/java/org/apache/james/sieverepository/lib/SieveRepositoryManagement.java index eb81972..f8a0b25 100644 --- a/server/data/data-library/src/main/java/org/apache/james/sieverepository/lib/SieveRepositoryManagement.java +++ b/server/data/data-library/src/main/java/org/apache/james/sieverepository/lib/SieveRepositoryManagement.java @@ -23,6 +23,7 @@ package org.apache.james.sieverepository.lib; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; +import java.nio.charset.StandardCharsets; import javax.inject.Inject; import javax.management.NotCompliantMBeanException; @@ -93,7 +94,7 @@ public class SieveRepositoryManagement extends StandardMBean implements SieveRep @Override public void addActiveSieveScriptFromFile(String userName, String scriptName, String scriptPath) throws SieveRepositoryException { try (InputStream scriptFileAsStream = new FileInputStream(scriptPath)) { - addActiveSieveScript(userName, scriptName, IOUtils.toString(scriptFileAsStream)); + addActiveSieveScript(userName, scriptName, IOUtils.toString(scriptFileAsStream, StandardCharsets.UTF_8)); } catch (IOException e) { LOGGER.error("Error while reading sieve script from file {}", scriptPath, e); } http://git-wip-us.apache.org/repos/asf/james-project/blob/e53eb321/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/SieveRepositoryManagementTest.java ---------------------------------------------------------------------- diff --git a/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/SieveRepositoryManagementTest.java b/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/SieveRepositoryManagementTest.java index 3711d95..e74b660 100644 --- a/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/SieveRepositoryManagementTest.java +++ b/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/SieveRepositoryManagementTest.java @@ -1,3 +1,21 @@ +/**************************************************************** + * Licensed to the Apache Software Foundation (ASF) under one * + * or more contributor license agreements. See the NOTICE file * + * distributed with this work for additional information * + * regarding copyright ownership. The ASF licenses this file * + * to you under the Apache License, Version 2.0 (the * + * "License"); you may not use this file except in compliance * + * with the License. You may obtain a copy of the License at * + * * + * http://www.apache.org/licenses/LICENSE-2.0 * + * * + * Unless required by applicable law or agreed to in writing, * + * software distributed under the License is distributed on an * + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * + * KIND, either express or implied. See the License for the * + * specific language governing permissions and limitations * + * under the License. * + ****************************************************************/ package org.apache.james.sieverepository.lib; import org.apache.commons.io.IOUtils; @@ -11,6 +29,7 @@ import org.mockito.Mock; import org.mockito.MockitoAnnotations; import java.net.URL; +import java.nio.charset.StandardCharsets; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; @@ -38,7 +57,7 @@ public class SieveRepositoryManagementTest { User user = User.fromUsername(userName); ScriptName scriptName = new ScriptName(script); - String sieveContent = IOUtils.toString(sieveResource); + String sieveContent = IOUtils.toString(sieveResource, StandardCharsets.UTF_8); ScriptContent scriptContent = new ScriptContent(sieveContent); sieveRepositoryManagement.addActiveSieveScriptFromFile(userName, script, sieveResource.getFile()); @@ -55,7 +74,7 @@ public class SieveRepositoryManagementTest { User user = User.fromUsername(userName); ScriptName scriptName = new ScriptName(script); - String sieveContent = IOUtils.toString(sieveResource); + String sieveContent = IOUtils.toString(sieveResource, StandardCharsets.UTF_8); ScriptContent scriptContent = new ScriptContent(sieveContent); sieveRepositoryManagement.addActiveSieveScriptFromFile(userName, script, "wrong_path/" + sieveResource.getFile()); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
