+ private Message resolve(Message query) {
+
+ try {
+ return resolver.send(query);
+ } catch (SocketTimeoutException e) {
+ System.err.println("Error: timed out querying " + server + " for " + queryToString(query));
+ } catch (IOException e) {
+ System.err.println("Error: error querying " + server + " for " + queryToString(query) + ":" + e.getMessage());
+ }
+ return null;
+ }
+
+ private String queryToString(Message query) {
+ if (query == null) return null;
+ Record question = query.getQuestion();
+ return question.getName() + "/" + Type.string(question.getType()) + "/" + DClass.string(question.getDClass());
+ }
+