Repository: james-project Updated Branches: refs/heads/master 8164badea -> afe155866
MAILBOX-287 Allow to pass default port when parsing Host list string Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/afe15586 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/afe15586 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/afe15586 Branch: refs/heads/master Commit: afe155866aa249a2ab0670545769936ac5928c3c Parents: 5b89121 Author: benwa <[email protected]> Authored: Mon Feb 27 15:28:56 2017 +0700 Committer: benwa <[email protected]> Committed: Tue Feb 28 18:44:33 2017 +0700 ---------------------------------------------------------------------- .../src/main/java/org/apache/james/util/Host.java | 10 +++++++++- .../test/java/org/apache/james/util/HostTest.java | 17 +++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/afe15586/server/container/util-java8/src/main/java/org/apache/james/util/Host.java ---------------------------------------------------------------------- diff --git a/server/container/util-java8/src/main/java/org/apache/james/util/Host.java b/server/container/util-java8/src/main/java/org/apache/james/util/Host.java index f6b52e8..3927c73 100644 --- a/server/container/util-java8/src/main/java/org/apache/james/util/Host.java +++ b/server/container/util-java8/src/main/java/org/apache/james/util/Host.java @@ -33,11 +33,19 @@ import com.google.common.collect.ImmutableList; public class Host { public static ImmutableList<Host> parseHosts(String hostsString) { + return parseHosts(hostsString, Optional.empty()); + } + + public static ImmutableList<Host> parseHosts(String hostsString, int defaultPort) { + return parseHosts(hostsString, Optional.of(defaultPort)); + } + + private static ImmutableList<Host> parseHosts(String hostsString, Optional<Integer> defaultPort) { return Splitter.on(',') .omitEmptyStrings() .splitToList(hostsString) .stream() - .map(Host::parseConfString) + .map(string -> Host.parse(string, defaultPort)) .distinct() .collect(Guavate.toImmutableList()); } http://git-wip-us.apache.org/repos/asf/james-project/blob/afe15586/server/container/util-java8/src/test/java/org/apache/james/util/HostTest.java ---------------------------------------------------------------------- diff --git a/server/container/util-java8/src/test/java/org/apache/james/util/HostTest.java b/server/container/util-java8/src/test/java/org/apache/james/util/HostTest.java index aa4caad..3ebeaee 100644 --- a/server/container/util-java8/src/test/java/org/apache/james/util/HostTest.java +++ b/server/container/util-java8/src/test/java/org/apache/james/util/HostTest.java @@ -196,6 +196,23 @@ public class HostTest { } @Test + public void parseHostsShouldHandleDefaultPort() { + int defaultPort = 155; + + assertThat(Host.parseHosts("localhost:9200,abcd", defaultPort)) + .containsOnly( + new Host("localhost", 9200), + new Host("abcd", 155)); + } + + @Test + public void parseHostsShouldThrowOnAbsentPortWhenNoDefaultPort() { + expectedException.expect(IllegalArgumentException.class); + + Host.parseHosts("localhost:9200,abcd"); + } + + @Test public void hostShouldRespectBeanContract() { EqualsVerifier.forClass(Host.class).verify(); } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
