Skip to content

Commit 011de47

Browse files
committed
Cleanup and ensure domain is provided as string
1 parent d14f3e2 commit 011de47

File tree

1 file changed

+20
-11
lines changed

1 file changed

+20
-11
lines changed

src/main/java/org/buddycloud/channelserver/queue/FederatedQueueManager.java

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,11 @@
1919
import org.xmpp.packet.JID;
2020
import org.xmpp.packet.Packet;
2121
import org.xmpp.packet.PacketError;
22-
import org.xbill.DNS.*;
22+
import org.xbill.DNS.SRVRecord;
23+
import org.xbill.DNS.Record;
24+
import org.xbill.DNS.Type;
25+
import org.xbill.DNS.Lookup;
26+
import org.xbill.DNS.TextParseException;
2327

2428
public class FederatedQueueManager {
2529
private static final Logger logger = Logger
@@ -217,18 +221,23 @@ public void processDiscoInfoResponse(JID from, String id,
217221
}
218222
}
219223

220-
private boolean attemptDnsDiscovery(String originatingServer) {
221-
String query = SRV_PREFIX + originatingServer;
222-
Record [] records = new Lookup(query, Type.SRV).run();
223-
if ((null == records) || (0 == records.length)) {
224+
private boolean attemptDnsDiscovery(String originatingServer) throws ComponentException {
225+
try {
226+
String query = SRV_PREFIX + originatingServer;
227+
Record[] records = new Lookup(query, Type.SRV).run();
228+
if ((null == records) || (0 == records.length)) {
229+
return false;
230+
}
231+
SRVRecord record = (SRVRecord) records[0];
232+
setDiscoveredServer(originatingServer, record.getTarget().toString());
233+
sendFederatedRequests(originatingServer);
234+
logger.info("Used DNS fallback to discover buddycloud server for "
235+
+ originatingServer + " (" + record.getTarget().toString() + ")");
236+
return true;
237+
} catch (TextParseException e) {
238+
logger.error(e);
224239
return false;
225240
}
226-
SRVRecord record = (SRVRecord) records[0];
227-
setDiscoveredServer(originatingServer, record.getTarget());
228-
sendFederatedRequests(originatingServer);
229-
logger.info("Used DNS fallback to discover buddycloud server for "
230-
+ originatingServer + " (" + record.getTarget() ")");
231-
return true;
232241
}
233242

234243
private void sendFederatedRequests(String originatingServer)

0 commit comments

Comments
 (0)