aboutsummaryrefslogtreecommitdiff
path: root/juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2016-12-19 16:04:54 +0300
committerGravatar Vitaly Takmazov2016-12-19 16:04:54 +0300
commit953b84213a97f541b112b46b41afffae1b26e5e1 (patch)
treef2f42e6c00e17eee141dec8a75d9d903f1c44c9d /juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java
parent75cb488222629a36d20765f5dada5fea1c83b6cf (diff)
juick-xmpp: DNSQueries refactoring
Diffstat (limited to 'juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java')
-rw-r--r--juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java34
1 files changed, 14 insertions, 20 deletions
diff --git a/juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java b/juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java
index 6de9e15d..887dfc5c 100644
--- a/juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java
+++ b/juick-xmpp/src/main/java/com/juick/components/s2s/DNSQueries.java
@@ -1,5 +1,7 @@
package com.juick.components.s2s;
+import org.apache.commons.lang3.math.NumberUtils;
+
import java.net.InetSocketAddress;
import java.net.UnknownHostException;
import java.util.Hashtable;
@@ -17,31 +19,23 @@ public class DNSQueries {
private static Random rand = new Random();
- public static InetSocketAddress getServerAddress(String hostname) throws UnknownHostException {
+ public static InetSocketAddress getServerAddress(String hostname) throws UnknownHostException, NamingException {
String host = hostname;
int port = 5269;
- try {
- Hashtable<String, String> env = new Hashtable<String, String>(5);
- env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");
- DirContext ctx = new InitialDirContext(env);
- Attribute att = ctx.getAttributes("_xmpp-server._tcp." + hostname, new String[]{"SRV"}).get("SRV");
-
- if (att != null && att.size() > 0) {
- int i = rand.nextInt(att.size());
- try {
- String srv[] = att.get(i).toString().split(" ");
- port = Integer.parseInt(srv[2]);
- host = srv[3];
- } catch (Exception e) {
- }
- }
-
- ctx.close();
- } catch (NamingException e) {
- }
+ Hashtable<String, String> env = new Hashtable<>(5);
+ env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");
+ DirContext ctx = new InitialDirContext(env);
+ Attribute att = ctx.getAttributes("_xmpp-server._tcp." + hostname, new String[]{"SRV"}).get("SRV");
+ if (att != null && att.size() > 0) {
+ int i = rand.nextInt(att.size());
+ String srv[] = att.get(i).toString().split(" ");
+ port = NumberUtils.toInt(srv[2], 5269);
+ host = srv[3];
+ }
+ ctx.close();
return new InetSocketAddress(host, port);
}
}