MCPcopy Create free account
hub / github.com/DeNA/PacketProxy / run

Method run

src/main/java/core/org/xbill/DNS/Lookup.java:536–585  ·  view source on GitHub ↗

Performs the lookup, using the specified Cache, Resolver, and search path. @return The answers, or null if none are found.

()

Source from the content-addressed store, hash-verified

534 * @return The answers, or null if none are found.
535 */
536public Record []
537run() {
538 if (done)
539 reset();
540 if (name.isAbsolute())
541 resolve(name, null);
542 else if (searchPath == null)
543 resolve(name, Name.root);
544 else {
545 if (name.labels() > defaultNdots)
546 resolve(name, Name.root);
547 if (done)
548 return answers;
549
550 for (int i = 0; i < searchPath.length; i++) {
551 resolve(name, searchPath[i]);
552 if (done)
553 return answers;
554 else if (foundAlias)
555 break;
556 }
557 }
558 if (!done) {
559 if (badresponse) {
560 result = TRY_AGAIN;
561 error = badresponse_error;
562 done = true;
563 } else if (timedout) {
564 result = TRY_AGAIN;
565 error = "timed out";
566 done = true;
567 } else if (networkerror) {
568 result = TRY_AGAIN;
569 error = "network error";
570 done = true;
571 } else if (nxdomain) {
572 result = HOST_NOT_FOUND;
573 done = true;
574 } else if (referral) {
575 result = UNRECOVERABLE;
576 error = "referral";
577 done = true;
578 } else if (nametoolong) {
579 result = UNRECOVERABLE;
580 error = "name too long";
581 done = true;
582 }
583 }
584 return answers;
585}
586
587private void
588checkDone() {

Callers 3

getByName6Method · 0.95
getHTTPSRecordMethod · 0.95
lookupHostNameMethod · 0.95

Calls 4

resetMethod · 0.95
resolveMethod · 0.95
isAbsoluteMethod · 0.80
labelsMethod · 0.80

Tested by

no test coverage detected