mirror of
https://github.com/google/nomulus.git
synced 2025-05-13 07:57:13 +02:00
Revise RDAP domain action tests to check results more completely
Also fixed a bug discovered as a result of the more complete testing! ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=171156304
This commit is contained in:
parent
373e174deb
commit
07e5536988
18 changed files with 1920 additions and 279 deletions
|
@ -210,8 +210,10 @@ public class RdapDomainSearchAction extends RdapActionBase {
|
|||
}
|
||||
// Query the domains directly, rather than the foreign keys, because then we have an index on
|
||||
// TLD if we need it.
|
||||
int numFetched = 0;
|
||||
for (DomainResource domain :
|
||||
query.limit(RESULT_SET_SIZE_SCALING_FACTOR * rdapResultSetMaxSize)) {
|
||||
numFetched++;
|
||||
if (EppResourceUtils.isActive(domain, now)) {
|
||||
if (domainList.size() >= rdapResultSetMaxSize) {
|
||||
return makeSearchResults(
|
||||
|
@ -220,7 +222,13 @@ public class RdapDomainSearchAction extends RdapActionBase {
|
|||
domainList.add(domain);
|
||||
}
|
||||
}
|
||||
return makeSearchResults(domainList, now);
|
||||
return makeSearchResults(
|
||||
domainList,
|
||||
((numFetched == RESULT_SET_SIZE_SCALING_FACTOR * rdapResultSetMaxSize)
|
||||
&& (domainList.size() < rdapResultSetMaxSize))
|
||||
? IncompletenessWarningType.MIGHT_BE_INCOMPLETE
|
||||
: IncompletenessWarningType.NONE,
|
||||
now);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -18,6 +18,7 @@ java_library(
|
|||
"//java/google/registry/request",
|
||||
"//java/google/registry/request/auth",
|
||||
"//java/google/registry/ui/server/registrar",
|
||||
"//java/google/registry/util",
|
||||
"//javatests/google/registry/testing",
|
||||
"//third_party/java/objectify:objectify-v4_1",
|
||||
"@com_google_appengine_api_1_0_sdk//:testonly",
|
||||
|
|
|
@ -53,6 +53,7 @@ import java.util.Map;
|
|||
import javax.annotation.Nullable;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import org.joda.time.DateTime;
|
||||
import org.json.simple.JSONObject;
|
||||
import org.json.simple.JSONValue;
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
|
@ -264,6 +265,14 @@ public class RdapDomainActionTest {
|
|||
substitutionsBuilder.put("PUNYCODENAME", (punycodeName == null) ? name : punycodeName);
|
||||
substitutionsBuilder.put("HANDLE", handle);
|
||||
substitutionsBuilder.put("TYPE", "domain name");
|
||||
substitutionsBuilder.put("NAMESERVER1ROID", "8-ROID");
|
||||
substitutionsBuilder.put("NAMESERVER1NAME", "ns1.cat.lol");
|
||||
substitutionsBuilder.put("NAMESERVER1PUNYCODENAME", "ns1.cat.lol");
|
||||
substitutionsBuilder.put("NAMESERVER1ADDRESS", "1.2.3.4");
|
||||
substitutionsBuilder.put("NAMESERVER2ROID", "A-ROID");
|
||||
substitutionsBuilder.put("NAMESERVER2NAME", "ns2.cat.lol");
|
||||
substitutionsBuilder.put("NAMESERVER2PUNYCODENAME", "ns2.cat.lol");
|
||||
substitutionsBuilder.put("NAMESERVER2ADDRESS", "bad:f00d:cafe::15:beef");
|
||||
if (contactRoids != null) {
|
||||
for (int i = 0; i < contactRoids.size(); i++) {
|
||||
substitutionsBuilder.put("CONTACT" + (i + 1) + "ROID", contactRoids.get(i));
|
||||
|
@ -297,7 +306,7 @@ public class RdapDomainActionTest {
|
|||
: RdapTestHelper.ContactNoticeType.NONE,
|
||||
map.get("notices"));
|
||||
RdapTestHelper.addDomainBoilerplateRemarks(builder, false, map.get("remarks"));
|
||||
obj = builder.build();
|
||||
obj = new JSONObject(builder.build());
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
@ -471,7 +480,7 @@ public class RdapDomainActionTest {
|
|||
generateExpectedJsonWithTopLevelEntries(
|
||||
"cat.1.tld",
|
||||
null,
|
||||
"1D-1.TLD",
|
||||
"1D-1_TLD",
|
||||
ImmutableList.of("19-ROID", "1B-ROID", "17-ROID"),
|
||||
"rdap_domain.json"));
|
||||
assertThat(response.getStatus()).isEqualTo(200);
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -39,19 +39,19 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "8-ROID",
|
||||
"handle": "%NAMESERVER1ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns1.cat.lol",
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns1.cat.lol"
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns1.cat.lol",
|
||||
"ldhName": "%NAMESERVER1NAME%",
|
||||
"ipAddresses": {
|
||||
"v4": [
|
||||
"1.2.3.4"
|
||||
"%NAMESERVER1ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
@ -72,19 +72,19 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "A-ROID",
|
||||
"handle": "%NAMESERVER2ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns2.cat.lol",
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns2.cat.lol"
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns2.cat.lol",
|
||||
"ldhName": "%NAMESERVER2NAME%",
|
||||
"ipAddresses": {
|
||||
"v6": [
|
||||
"bad:f00d:cafe::15:beef"
|
||||
"%NAMESERVER2ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
|
387
javatests/google/registry/rdap/testdata/rdap_domain_cat2.json
vendored
Normal file
387
javatests/google/registry/rdap/testdata/rdap_domain_cat2.json
vendored
Normal file
|
@ -0,0 +1,387 @@
|
|||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%HANDLE%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%NAME%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "expiration",
|
||||
"eventDate": "2110-10-08T00:44:59.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last changed",
|
||||
"eventDate": "2009-05-29T20:13:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"nameservers": [
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%NAMESERVER1ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAMESERVER1NAME%",
|
||||
"ipAddresses": {
|
||||
"v4": [
|
||||
"%NAMESERVER1ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1999-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "nameserver"
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%NAMESERVER2ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAMESERVER2NAME%",
|
||||
"ipAddresses": {
|
||||
"v6": [
|
||||
"%NAMESERVER2ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1998-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "nameserver"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAME%",
|
||||
"entities": [
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%CONTACT1ROID%",
|
||||
"roles": [
|
||||
"administrative"
|
||||
],
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/entity/%CONTACT1ROID%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/entity/%CONTACT1ROID%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1998-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "entity",
|
||||
"vcardArray": [
|
||||
"vcard",
|
||||
[
|
||||
[
|
||||
"version",
|
||||
{},
|
||||
"text",
|
||||
"4.0"
|
||||
],
|
||||
[
|
||||
"fn",
|
||||
{},
|
||||
"text",
|
||||
"Sieglinde"
|
||||
],
|
||||
[
|
||||
"org",
|
||||
{},
|
||||
"text",
|
||||
"GOOGLE INCORPORATED <script>"
|
||||
],
|
||||
[
|
||||
"adr",
|
||||
{},
|
||||
"text",
|
||||
[
|
||||
"",
|
||||
"",
|
||||
"123 Example Boulevard <script>",
|
||||
"KOKOMO",
|
||||
"BM",
|
||||
"31337",
|
||||
"United States"
|
||||
]
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"voice"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"fax"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"email",
|
||||
{},
|
||||
"text",
|
||||
"sieglinde@cat2.lol"
|
||||
]
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%CONTACT2ROID%",
|
||||
"roles": [
|
||||
"technical"
|
||||
],
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/entity/%CONTACT2ROID%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/entity/%CONTACT2ROID%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1997-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "entity",
|
||||
"vcardArray": [
|
||||
"vcard",
|
||||
[
|
||||
[
|
||||
"version",
|
||||
{},
|
||||
"text",
|
||||
"4.0"
|
||||
],
|
||||
[
|
||||
"fn",
|
||||
{},
|
||||
"text",
|
||||
"Siegfried"
|
||||
],
|
||||
[
|
||||
"org",
|
||||
{},
|
||||
"text",
|
||||
"GOOGLE INCORPORATED <script>"
|
||||
],
|
||||
[
|
||||
"adr",
|
||||
{},
|
||||
"text",
|
||||
[
|
||||
"",
|
||||
"",
|
||||
"123 Example Boulevard <script>",
|
||||
"KOKOMO",
|
||||
"BM",
|
||||
"31337",
|
||||
"United States"
|
||||
]
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"voice"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"fax"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"email",
|
||||
{},
|
||||
"text",
|
||||
"siegfried@cat2.lol"
|
||||
]
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%CONTACT3ROID%",
|
||||
"roles": [
|
||||
"registrant"
|
||||
],
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/entity/%CONTACT3ROID%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/entity/%CONTACT3ROID%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1999-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "entity",
|
||||
"vcardArray": [
|
||||
"vcard",
|
||||
[
|
||||
[
|
||||
"version",
|
||||
{},
|
||||
"text",
|
||||
"4.0"
|
||||
],
|
||||
[
|
||||
"fn",
|
||||
{},
|
||||
"text",
|
||||
"Siegmund"
|
||||
],
|
||||
[
|
||||
"org",
|
||||
{},
|
||||
"text",
|
||||
"GOOGLE INCORPORATED <script>"
|
||||
],
|
||||
[
|
||||
"adr",
|
||||
{},
|
||||
"text",
|
||||
[
|
||||
"",
|
||||
"",
|
||||
"123 Example Boulevard <script>",
|
||||
"KOKOMO",
|
||||
"BM",
|
||||
"31337",
|
||||
"United States"
|
||||
]
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"voice"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"fax"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"email",
|
||||
{},
|
||||
"text",
|
||||
"siegmund@cat2.lol"
|
||||
]
|
||||
]
|
||||
]
|
||||
}
|
||||
],
|
||||
"objectClassName": "domain"
|
||||
}
|
393
javatests/google/registry/rdap/testdata/rdap_domain_deleted.json
vendored
Normal file
393
javatests/google/registry/rdap/testdata/rdap_domain_deleted.json
vendored
Normal file
|
@ -0,0 +1,393 @@
|
|||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"removed",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%HANDLE%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%NAME%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1999-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "deletion",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1999-07-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "expiration",
|
||||
"eventDate": "2110-10-08T00:44:59.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last changed",
|
||||
"eventDate": "2009-05-29T20:13:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"nameservers": [
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%NAMESERVER1ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAMESERVER1NAME%",
|
||||
"ipAddresses": {
|
||||
"v4": [
|
||||
"%NAMESERVER1ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1999-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "nameserver"
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%NAMESERVER2ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAMESERVER2NAME%",
|
||||
"ipAddresses": {
|
||||
"v6": [
|
||||
"%NAMESERVER2ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1998-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "nameserver"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAME%",
|
||||
"entities": [
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%CONTACT1ROID%",
|
||||
"roles": [
|
||||
"administrative"
|
||||
],
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/entity/%CONTACT1ROID%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/entity/%CONTACT1ROID%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1998-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "entity",
|
||||
"vcardArray": [
|
||||
"vcard",
|
||||
[
|
||||
[
|
||||
"version",
|
||||
{},
|
||||
"text",
|
||||
"4.0"
|
||||
],
|
||||
[
|
||||
"fn",
|
||||
{},
|
||||
"text",
|
||||
"Santa Claus"
|
||||
],
|
||||
[
|
||||
"org",
|
||||
{},
|
||||
"text",
|
||||
"GOOGLE INCORPORATED <script>"
|
||||
],
|
||||
[
|
||||
"adr",
|
||||
{},
|
||||
"text",
|
||||
[
|
||||
"",
|
||||
"",
|
||||
"123 Example Boulevard <script>",
|
||||
"KOKOMO",
|
||||
"BM",
|
||||
"31337",
|
||||
"United States"
|
||||
]
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"voice"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"fax"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"email",
|
||||
{},
|
||||
"text",
|
||||
"BOFH@cat.lol"
|
||||
]
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%CONTACT2ROID%",
|
||||
"roles": [
|
||||
"technical"
|
||||
],
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/entity/%CONTACT2ROID%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/entity/%CONTACT2ROID%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1997-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "entity",
|
||||
"vcardArray": [
|
||||
"vcard",
|
||||
[
|
||||
[
|
||||
"version",
|
||||
{},
|
||||
"text",
|
||||
"4.0"
|
||||
],
|
||||
[
|
||||
"fn",
|
||||
{},
|
||||
"text",
|
||||
"The Raven"
|
||||
],
|
||||
[
|
||||
"org",
|
||||
{},
|
||||
"text",
|
||||
"GOOGLE INCORPORATED <script>"
|
||||
],
|
||||
[
|
||||
"adr",
|
||||
{},
|
||||
"text",
|
||||
[
|
||||
"",
|
||||
"",
|
||||
"123 Example Boulevard <script>",
|
||||
"KOKOMO",
|
||||
"BM",
|
||||
"31337",
|
||||
"United States"
|
||||
]
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"voice"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"fax"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"email",
|
||||
{},
|
||||
"text",
|
||||
"bog@cat.lol"
|
||||
]
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%CONTACT3ROID%",
|
||||
"roles": [
|
||||
"registrant"
|
||||
],
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/entity/%CONTACT3ROID%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/entity/%CONTACT3ROID%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1999-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "entity",
|
||||
"vcardArray": [
|
||||
"vcard",
|
||||
[
|
||||
[
|
||||
"version",
|
||||
{},
|
||||
"text",
|
||||
"4.0"
|
||||
],
|
||||
[
|
||||
"fn",
|
||||
{},
|
||||
"text",
|
||||
"Goblin Market"
|
||||
],
|
||||
[
|
||||
"org",
|
||||
{},
|
||||
"text",
|
||||
"GOOGLE INCORPORATED <script>"
|
||||
],
|
||||
[
|
||||
"adr",
|
||||
{},
|
||||
"text",
|
||||
[
|
||||
"",
|
||||
"",
|
||||
"123 Example Boulevard <script>",
|
||||
"KOKOMO",
|
||||
"BM",
|
||||
"31337",
|
||||
"United States"
|
||||
]
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"voice"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"tel",
|
||||
{
|
||||
"type": [
|
||||
"fax"
|
||||
]
|
||||
},
|
||||
"uri",
|
||||
"tel:+1.2126660420"
|
||||
],
|
||||
[
|
||||
"email",
|
||||
{},
|
||||
"text",
|
||||
"lol@cat.lol"
|
||||
]
|
||||
]
|
||||
]
|
||||
}
|
||||
],
|
||||
"objectClassName": "domain"
|
||||
}
|
|
@ -39,19 +39,19 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "8-ROID",
|
||||
"handle": "%NAMESERVER1ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns1.cat.lol",
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns1.cat.lol"
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns1.cat.lol",
|
||||
"ldhName": "%NAMESERVER1NAME%",
|
||||
"ipAddresses": {
|
||||
"v4": [
|
||||
"1.2.3.4"
|
||||
"%NAMESERVER1ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
@ -72,19 +72,19 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "A-ROID",
|
||||
"handle": "%NAMESERVER2ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns2.cat.lol",
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns2.cat.lol"
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns2.cat.lol",
|
||||
"ldhName": "%NAMESERVER2NAME%",
|
||||
"ipAddresses": {
|
||||
"v6": [
|
||||
"bad:f00d:cafe::15:beef"
|
||||
"%NAMESERVER2ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
|
|
@ -39,19 +39,19 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "8-ROID",
|
||||
"handle": "%NAMESERVER1ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns1.cat.lol",
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns1.cat.lol"
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER1NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns1.cat.lol",
|
||||
"ldhName": "%NAMESERVER1NAME%",
|
||||
"ipAddresses": {
|
||||
"v4": [
|
||||
"1.2.3.4"
|
||||
"%NAMESERVER1ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
@ -72,19 +72,19 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "A-ROID",
|
||||
"handle": "%NAMESERVER2ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns2.cat.lol",
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns2.cat.lol"
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER2NAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns2.cat.lol",
|
||||
"ldhName": "%NAMESERVER2NAME%",
|
||||
"ipAddresses": {
|
||||
"v6": [
|
||||
"bad:f00d:cafe::15:beef"
|
||||
"%NAMESERVER2ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
|
|
@ -40,19 +40,21 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "8-ROID",
|
||||
"handle": "%NAMESERVER1ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns1.cat.lol",
|
||||
"href":
|
||||
"https://example.com/rdap/nameserver/%NAMESERVER1PUNYCODENAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns1.cat.lol"
|
||||
"value":
|
||||
"https://example.com/rdap/nameserver/%NAMESERVER1PUNYCODENAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns1.cat.lol",
|
||||
"ldhName": "%NAMESERVER1PUNYCODENAME%",
|
||||
"ipAddresses": {
|
||||
"v4": [
|
||||
"1.2.3.4"
|
||||
"%NAMESERVER1ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
@ -73,19 +75,21 @@
|
|||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "A-ROID",
|
||||
"handle": "%NAMESERVER2ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/ns2.cat.lol",
|
||||
"href":
|
||||
"https://example.com/rdap/nameserver/%NAMESERVER2PUNYCODENAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/ns2.cat.lol"
|
||||
"value":
|
||||
"https://example.com/rdap/nameserver/%NAMESERVER2PUNYCODENAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "ns2.cat.lol",
|
||||
"ldhName": "%NAMESERVER2PUNYCODENAME%",
|
||||
"ipAddresses": {
|
||||
"v6": [
|
||||
"bad:f00d:cafe::15:beef"
|
||||
"%NAMESERVER2ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
|
|
118
javatests/google/registry/rdap/testdata/rdap_domain_unicode_no_contacts_with_remark.json
vendored
Normal file
118
javatests/google/registry/rdap/testdata/rdap_domain_unicode_no_contacts_with_remark.json
vendored
Normal file
|
@ -0,0 +1,118 @@
|
|||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%HANDLE%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%PUNYCODENAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%PUNYCODENAME%"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "expiration",
|
||||
"eventDate": "2110-10-08T00:44:59.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last changed",
|
||||
"eventDate": "2009-05-29T20:13:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"nameservers": [
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%NAMESERVER1ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER1PUNYCODENAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER1PUNYCODENAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAMESERVER1PUNYCODENAME%",
|
||||
"unicodeName": "%NAMESERVER1NAME%",
|
||||
"ipAddresses": {
|
||||
"v4": [
|
||||
"%NAMESERVER1ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1999-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "nameserver"
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"active",
|
||||
"associated"
|
||||
],
|
||||
"handle": "%NAMESERVER2ROID%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/nameserver/%NAMESERVER2PUNYCODENAME%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/nameserver/%NAMESERVER2PUNYCODENAME%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%NAMESERVER2PUNYCODENAME%",
|
||||
"unicodeName": "%NAMESERVER2NAME%",
|
||||
"ipAddresses": {
|
||||
"v6": [
|
||||
"%NAMESERVER2ADDRESS%"
|
||||
]
|
||||
},
|
||||
"events": [
|
||||
{
|
||||
"eventAction": "registration",
|
||||
"eventActor": "foo",
|
||||
"eventDate": "1998-01-01T00:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"eventAction": "last update of RDAP database",
|
||||
"eventDate": "2000-01-01T00:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"objectClassName": "nameserver"
|
||||
}
|
||||
],
|
||||
"ldhName": "%PUNYCODENAME%",
|
||||
"unicodeName": "%NAME%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Contacts Hidden",
|
||||
"description": [
|
||||
"Domain contacts are visible only to the owning registrar."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
}
|
188
javatests/google/registry/rdap/testdata/rdap_domains_four_with_one_unicode.json
vendored
Normal file
188
javatests/google/registry/rdap/testdata/rdap_domains_four_with_one_unicode.json
vendored
Normal file
|
@ -0,0 +1,188 @@
|
|||
{
|
||||
"domainSearchResults": [
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE1%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINNAME1%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINNAME1%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINNAME1%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE2%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINNAME2%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINNAME2%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINNAME2%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE3%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINNAME3%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINNAME3%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINNAME3%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE4%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME4%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME4%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINPUNYCODENAME4%",
|
||||
"unicodeName": "%DOMAINNAME4%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"rdapConformance": [
|
||||
"rdap_level_0"
|
||||
],
|
||||
"notices" :
|
||||
[
|
||||
{
|
||||
"title" : "RDAP Terms of Service",
|
||||
"description" :
|
||||
[
|
||||
"By querying our Domain Database, you are agreeing to comply with these terms so please read them carefully.",
|
||||
"Any information provided is 'as is' without any guarantee of accuracy.",
|
||||
"Please do not misuse the Domain Database. It is intended solely for query-based access.",
|
||||
"Don't use the Domain Database to allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations.",
|
||||
"Don't access our Domain Database through the use of high volume, automated electronic processes that send queries or data to the systems of any ICANN-accredited registrar.",
|
||||
"You may only use the information contained in the Domain Database for lawful purposes.",
|
||||
"Do not compile, repackage, disseminate, or otherwise use the information contained in the Domain Database in its entirety, or in any substantial portion, without our prior written permission.",
|
||||
"We may retain certain details about queries to our Domain Database for the purposes of detecting and preventing misuse.",
|
||||
"We reserve the right to restrict or deny your access to the database if we suspect that you have failed to comply with these terms.",
|
||||
"We reserve the right to modify this agreement at any time."
|
||||
],
|
||||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"remarks" :
|
||||
[
|
||||
{
|
||||
"description" :
|
||||
[
|
||||
"This response conforms to the RDAP Operational Profile for gTLD Registries and Registrars version 1.0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title" : "EPP Status Codes",
|
||||
"description" :
|
||||
[
|
||||
"For more information on domain status codes, please visit https://icann.org/epp"
|
||||
],
|
||||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "https://icann.org/epp",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://icann.org/epp",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"description" :
|
||||
[
|
||||
"URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf"
|
||||
],
|
||||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "https://www.icann.org/wicf",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.icann.org/wicf",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
196
javatests/google/registry/rdap/testdata/rdap_domains_four_with_one_unicode_truncated.json
vendored
Normal file
196
javatests/google/registry/rdap/testdata/rdap_domains_four_with_one_unicode_truncated.json
vendored
Normal file
|
@ -0,0 +1,196 @@
|
|||
{
|
||||
"domainSearchResults": [
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE1%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME1%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME1%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINPUNYCODENAME1%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE2%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME2%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME2%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINPUNYCODENAME2%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE3%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME3%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME3%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINPUNYCODENAME3%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"status": [
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "%DOMAINHANDLE4%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME4%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/%DOMAINPUNYCODENAME4%"
|
||||
}
|
||||
],
|
||||
"ldhName": "%DOMAINPUNYCODENAME4%",
|
||||
"unicodeName": "%DOMAINNAME4%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
"title": "Incomplete Data",
|
||||
"description": [
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"type": "object truncated due to unexplainable reasons"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"rdapConformance": [
|
||||
"rdap_level_0"
|
||||
],
|
||||
"notices" :
|
||||
[
|
||||
{
|
||||
"title" : "Search Policy",
|
||||
"type" : "result set truncated due to unexplainable reasons",
|
||||
"description" :
|
||||
[
|
||||
"Search results per query are limited."
|
||||
]
|
||||
},
|
||||
{
|
||||
"title" : "RDAP Terms of Service",
|
||||
"description" :
|
||||
[
|
||||
"By querying our Domain Database, you are agreeing to comply with these terms so please read them carefully.",
|
||||
"Any information provided is 'as is' without any guarantee of accuracy.",
|
||||
"Please do not misuse the Domain Database. It is intended solely for query-based access.",
|
||||
"Don't use the Domain Database to allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations.",
|
||||
"Don't access our Domain Database through the use of high volume, automated electronic processes that send queries or data to the systems of any ICANN-accredited registrar.",
|
||||
"You may only use the information contained in the Domain Database for lawful purposes.",
|
||||
"Do not compile, repackage, disseminate, or otherwise use the information contained in the Domain Database in its entirety, or in any substantial portion, without our prior written permission.",
|
||||
"We may retain certain details about queries to our Domain Database for the purposes of detecting and preventing misuse.",
|
||||
"We reserve the right to restrict or deny your access to the database if we suspect that you have failed to comply with these terms.",
|
||||
"We reserve the right to modify this agreement at any time."
|
||||
],
|
||||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"remarks" :
|
||||
[
|
||||
{
|
||||
"description" :
|
||||
[
|
||||
"This response conforms to the RDAP Operational Profile for gTLD Registries and Registrars version 1.0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title" : "EPP Status Codes",
|
||||
"description" :
|
||||
[
|
||||
"For more information on domain status codes, please visit https://icann.org/epp"
|
||||
],
|
||||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "https://icann.org/epp",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://icann.org/epp",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"description" :
|
||||
[
|
||||
"URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf"
|
||||
],
|
||||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "https://www.icann.org/wicf",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.icann.org/wicf",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -7,16 +7,16 @@
|
|||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "21-EXAMPLE",
|
||||
"handle": "%DOMAINHANDLE1%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/cat.example",
|
||||
"href": "https://example.com/rdap/domain/%DOMAINNAME1%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/cat.example"
|
||||
"value": "https://example.com/rdap/domain/%DOMAINNAME1%"
|
||||
}
|
||||
],
|
||||
"ldhName": "cat.example",
|
||||
"ldhName": "%DOMAINNAME1%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
||||
|
@ -35,16 +35,16 @@
|
|||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"handle": "C-LOL",
|
||||
"handle": "%DOMAINHANDLE2%",
|
||||
"links": [
|
||||
{
|
||||
"href": "https://example.com/rdap/domain/cat.lol",
|
||||
"href": "https://example.com/rdap/domain/%DOMAINNAME2%",
|
||||
"type": "application/rdap+json",
|
||||
"rel": "self",
|
||||
"value": "https://example.com/rdap/domain/cat.lol"
|
||||
"value": "https://example.com/rdap/domain/%DOMAINNAME2%"
|
||||
}
|
||||
],
|
||||
"ldhName": "cat.lol",
|
||||
"ldhName": "%DOMAINNAME2%",
|
||||
"objectClassName": "domain",
|
||||
"remarks": [
|
||||
{
|
181
javatests/google/registry/rdap/testdata/rdap_incomplete_domain_result_set.json
vendored
Normal file
181
javatests/google/registry/rdap/testdata/rdap_incomplete_domain_result_set.json
vendored
Normal file
|
@ -0,0 +1,181 @@
|
|||
{
|
||||
"domainSearchResults":
|
||||
[
|
||||
{
|
||||
"handle":"%DOMAINHANDLE1%",
|
||||
"links":
|
||||
[
|
||||
{
|
||||
"rel":"self",
|
||||
"href":"https://example.com/rdap/domain/%DOMAINNAME1%",
|
||||
"value":"https://example.com/rdap/domain/%DOMAINNAME1%",
|
||||
"type":"application/rdap+json"
|
||||
}
|
||||
],
|
||||
"ldhName":"%DOMAINNAME1%",
|
||||
"status":
|
||||
[
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"remarks":
|
||||
[
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"title":"Incomplete Data",
|
||||
"type":"object truncated due to unexplainable reasons"
|
||||
}
|
||||
],
|
||||
"objectClassName":"domain"
|
||||
},
|
||||
{
|
||||
"handle":"%DOMAINHANDLE2%",
|
||||
"links":
|
||||
[
|
||||
{
|
||||
"rel":"self",
|
||||
"href":"https://example.com/rdap/domain/%DOMAINNAME2%",
|
||||
"value":"https://example.com/rdap/domain/%DOMAINNAME2%",
|
||||
"type":"application/rdap+json"
|
||||
}
|
||||
],
|
||||
"ldhName":"%DOMAINNAME2%",
|
||||
"status":
|
||||
[
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"remarks":
|
||||
[
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"title":"Incomplete Data",
|
||||
"type":"object truncated due to unexplainable reasons"
|
||||
}
|
||||
],
|
||||
"objectClassName":"domain"
|
||||
},
|
||||
{
|
||||
"handle":"%DOMAINHANDLE3%",
|
||||
"links":
|
||||
[
|
||||
{
|
||||
"rel":"self",
|
||||
"href":"https://example.com/rdap/domain/%DOMAINNAME3%",
|
||||
"value":"https://example.com/rdap/domain/%DOMAINNAME3%",
|
||||
"type":"application/rdap+json"
|
||||
}
|
||||
],
|
||||
"ldhName":"%DOMAINNAME3%",
|
||||
"status":
|
||||
[
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
"client transfer prohibited",
|
||||
"server update prohibited"
|
||||
],
|
||||
"remarks":
|
||||
[
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"Summary data only. For complete data, send a specific query for the object."
|
||||
],
|
||||
"title":"Incomplete Data",
|
||||
"type":"object truncated due to unexplainable reasons"
|
||||
}
|
||||
],
|
||||
"objectClassName":"domain"
|
||||
}
|
||||
],
|
||||
"remarks":
|
||||
[
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"This response conforms to the RDAP Operational Profile for gTLD Registries and Registrars version 1.0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"For more information on domain status codes, please visit https://icann.org/epp"
|
||||
],
|
||||
"links":
|
||||
[
|
||||
{
|
||||
"rel":"alternate",
|
||||
"href":"https://icann.org/epp",
|
||||
"value":"https://icann.org/epp",
|
||||
"type":"text/html"
|
||||
}
|
||||
],
|
||||
"title":"EPP Status Codes"
|
||||
},
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf"
|
||||
],
|
||||
"links":
|
||||
[
|
||||
{
|
||||
"rel":"alternate",
|
||||
"href":"https://www.icann.org/wicf",
|
||||
"value":"https://www.icann.org/wicf",
|
||||
"type":"text/html"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"notices":
|
||||
[
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"Search results may contain incomplete information due to first-stage query limits."
|
||||
],
|
||||
"title":"Search Policy",
|
||||
"type":"result set truncated due to unexplainable reasons"
|
||||
},
|
||||
{
|
||||
"description":
|
||||
[
|
||||
"By querying our Domain Database, you are agreeing to comply with these terms so please read them carefully.",
|
||||
"Any information provided is 'as is' without any guarantee of accuracy.",
|
||||
"Please do not misuse the Domain Database. It is intended solely for query-based access.",
|
||||
"Don't use the Domain Database to allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations.",
|
||||
"Don't access our Domain Database through the use of high volume, automated electronic processes that send queries or data to the systems of any ICANN-accredited registrar.",
|
||||
"You may only use the information contained in the Domain Database for lawful purposes.",
|
||||
"Do not compile, repackage, disseminate, or otherwise use the information contained in the Domain Database in its entirety, or in any substantial portion, without our prior written permission.",
|
||||
"We may retain certain details about queries to our Domain Database for the purposes of detecting and preventing misuse.",
|
||||
"We reserve the right to restrict or deny your access to the database if we suspect that you have failed to comply with these terms.",
|
||||
"We reserve the right to modify this agreement at any time."
|
||||
],
|
||||
"links":
|
||||
[
|
||||
{
|
||||
"rel":"alternate",
|
||||
"href":"https://www.registry.tld/about/rdap/tos.html",
|
||||
"value":"https://example.com/rdap/help/tos",
|
||||
"type":"text/html"
|
||||
}
|
||||
],
|
||||
"title":"RDAP Terms of Service"
|
||||
}
|
||||
],
|
||||
"rdapConformance":
|
||||
[
|
||||
"rdap_level_0"
|
||||
]
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"domainSearchResults":[
|
||||
{
|
||||
"ldhName":"domain1.lol",
|
||||
"ldhName":"%DOMAINNAME1%",
|
||||
"status":[
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
|
@ -17,19 +17,19 @@
|
|||
]
|
||||
}
|
||||
],
|
||||
"handle":"13C5-LOL",
|
||||
"handle":"%DOMAINHANDLE1%",
|
||||
"links":[
|
||||
{
|
||||
"value":"https://example.com/rdap/domain/domain1.lol",
|
||||
"value":"https://example.com/rdap/domain/%DOMAINNAME1%",
|
||||
"type":"application/rdap+json",
|
||||
"rel":"self",
|
||||
"href":"https://example.com/rdap/domain/domain1.lol"
|
||||
"href":"https://example.com/rdap/domain/%DOMAINNAME1%"
|
||||
}
|
||||
],
|
||||
"objectClassName":"domain"
|
||||
},
|
||||
{
|
||||
"ldhName":"domain2.lol",
|
||||
"ldhName":"%DOMAINNAME2%",
|
||||
"status":[
|
||||
"client delete prohibited",
|
||||
"client renew prohibited",
|
||||
|
@ -45,13 +45,13 @@
|
|||
]
|
||||
}
|
||||
],
|
||||
"handle":"13C6-LOL",
|
||||
"handle":"%DOMAINHANDLE2%",
|
||||
"links":[
|
||||
{
|
||||
"value":"https://example.com/rdap/domain/domain2.lol",
|
||||
"value":"https://example.com/rdap/domain/%DOMAINNAME2%",
|
||||
"type":"application/rdap+json",
|
||||
"rel":"self",
|
||||
"href":"https://example.com/rdap/domain/domain2.lol"
|
||||
"href":"https://example.com/rdap/domain/%DOMAINNAME2%"
|
||||
}
|
||||
],
|
||||
"objectClassName":"domain"
|
||||
|
|
|
@ -414,7 +414,10 @@ public class DatastoreHelper {
|
|||
}
|
||||
|
||||
public static void createTld(String tld, ImmutableSortedMap<DateTime, TldState> tldStates) {
|
||||
createTld(tld, Ascii.toUpperCase(tld.replaceFirst(ACE_PREFIX_REGEX, "")), tldStates);
|
||||
createTld(
|
||||
tld,
|
||||
Ascii.toUpperCase(tld.replaceFirst(ACE_PREFIX_REGEX, "").replace('.', '_')),
|
||||
tldStates);
|
||||
}
|
||||
|
||||
public static void createTld(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue