mirror of
https://github.com/google/nomulus.git
synced 2025-07-19 17:26:09 +02:00
Inject RDAP help information in ConfigModule
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=140849879
This commit is contained in:
parent
3740171bbf
commit
c59b738b5b
57 changed files with 436 additions and 306 deletions
|
@ -16,6 +16,7 @@ java_library(
|
|||
"//java/com/google/common/collect",
|
||||
"//java/com/google/common/io",
|
||||
"//java/com/google/common/net",
|
||||
"//java/google/registry/config",
|
||||
"//java/google/registry/model",
|
||||
"//java/google/registry/rdap",
|
||||
"//java/google/registry/request",
|
||||
|
|
|
@ -80,12 +80,12 @@ public class RdapActionBaseTest {
|
|||
}
|
||||
ImmutableMap.Builder<String, Object> builder = new ImmutableMap.Builder<>();
|
||||
builder.put("key", "value");
|
||||
RdapJsonFormatter.addTopLevelEntries(
|
||||
rdapJsonFormatter.addTopLevelEntries(
|
||||
builder,
|
||||
BoilerplateType.OTHER,
|
||||
ImmutableList.<ImmutableMap<String, Object>>of(),
|
||||
ImmutableList.<ImmutableMap<String, Object>>of(),
|
||||
"http://myserver.google.com/");
|
||||
"http://myserver.example.com/");
|
||||
return builder.build();
|
||||
}
|
||||
}
|
||||
|
@ -98,12 +98,13 @@ public class RdapActionBaseTest {
|
|||
inject.setStaticField(Ofy.class, "clock", clock);
|
||||
action = new RdapTestAction();
|
||||
action.response = response;
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
}
|
||||
|
||||
private Object generateActualJson(String domainName) {
|
||||
action.requestPath = RdapTestAction.PATH + domainName;
|
||||
action.requestMethod = GET;
|
||||
action.rdapLinkBase = "http://myserver.google.com/";
|
||||
action.rdapLinkBase = "http://myserver.example.com/";
|
||||
action.run();
|
||||
return JSONValue.parse(response.getPayload());
|
||||
}
|
||||
|
@ -111,7 +112,7 @@ public class RdapActionBaseTest {
|
|||
private String generateHeadPayload(String domainName) {
|
||||
action.requestPath = RdapTestAction.PATH + domainName;
|
||||
action.requestMethod = HEAD;
|
||||
action.rdapLinkBase = "http://myserver.google.com/";
|
||||
action.rdapLinkBase = "http://myserver.example.com/";
|
||||
action.run();
|
||||
return response.getPayload();
|
||||
}
|
||||
|
|
|
@ -123,6 +123,7 @@ public class RdapDomainActionTest {
|
|||
action = new RdapDomainAction();
|
||||
action.clock = clock;
|
||||
action.response = response;
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
action.rdapLinkBase = "https://example.com/rdap/";
|
||||
action.rdapWhoisServer = null;
|
||||
|
||||
|
|
|
@ -301,6 +301,7 @@ public class RdapDomainSearchActionTest {
|
|||
|
||||
action.clock = clock;
|
||||
action.response = response;
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
action.rdapLinkBase = "https://example.com/rdap/";
|
||||
action.rdapWhoisServer = null;
|
||||
}
|
||||
|
@ -552,7 +553,7 @@ public class RdapDomainSearchActionTest {
|
|||
}
|
||||
persistResources(domainsBuilder.build());
|
||||
}
|
||||
|
||||
|
||||
private Object readMultiDomainFile(
|
||||
String fileName,
|
||||
String domainName1,
|
||||
|
@ -988,7 +989,7 @@ public class RdapDomainSearchActionTest {
|
|||
.isEqualTo(generateExpectedJson("No domains found", null, null, "rdap_error_404.json"));
|
||||
assertThat(response.getStatus()).isEqualTo(404);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testAddressMatch_nontruncatedResultsSet() throws Exception {
|
||||
createManyDomainsAndHosts(4, 1, 2);
|
||||
|
|
|
@ -144,6 +144,7 @@ public class RdapEntityActionTest {
|
|||
action = new RdapEntityAction();
|
||||
action.clock = clock;
|
||||
action.response = response;
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
action.rdapLinkBase = "https://example.com/rdap/";
|
||||
action.rdapWhoisServer = null;
|
||||
}
|
||||
|
|
|
@ -124,6 +124,7 @@ public class RdapEntitySearchActionTest {
|
|||
action.clock = clock;
|
||||
action.requestPath = RdapEntitySearchAction.PATH;
|
||||
action.response = response;
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
action.rdapResultSetMaxSize = 4;
|
||||
action.rdapLinkBase = "https://example.com/rdap/";
|
||||
action.rdapWhoisServer = null;
|
||||
|
@ -444,7 +445,7 @@ public class RdapEntitySearchActionTest {
|
|||
generateActualJsonWithHandle("3test*");
|
||||
assertThat(response.getStatus()).isEqualTo(404);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testHandleMatch_truncatedEntities() throws Exception {
|
||||
createManyContactsAndRegistrars(300, 0);
|
||||
|
|
|
@ -49,6 +49,7 @@ public class RdapHelpActionTest {
|
|||
action = new RdapHelpAction();
|
||||
action.clock = clock;
|
||||
action.response = response;
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
action.rdapLinkBase = "https://example.tld/rdap/";
|
||||
action.rdapWhoisServer = null;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ import com.google.common.base.Optional;
|
|||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import google.registry.config.RdapNoticeDescriptor;
|
||||
import google.registry.model.contact.ContactResource;
|
||||
import google.registry.model.domain.DesignatedContact;
|
||||
import google.registry.model.domain.DomainResource;
|
||||
|
@ -40,7 +41,6 @@ import google.registry.model.registrar.Registrar;
|
|||
import google.registry.model.registrar.RegistrarContact;
|
||||
import google.registry.model.registry.Registry.TldState;
|
||||
import google.registry.model.reporting.HistoryEntry;
|
||||
import google.registry.rdap.RdapJsonFormatter.MakeRdapJsonNoticeParameters;
|
||||
import google.registry.rdap.RdapJsonFormatter.OutputDataType;
|
||||
import google.registry.testing.AppEngineRule;
|
||||
import google.registry.testing.FakeClock;
|
||||
|
@ -65,6 +65,8 @@ public class RdapJsonFormatterTest {
|
|||
|
||||
private final FakeClock clock = new FakeClock(DateTime.parse("1999-01-01T00:00:00Z"));
|
||||
|
||||
private RdapJsonFormatter rdapJsonFormatter;
|
||||
|
||||
private Registrar registrar;
|
||||
private DomainResource domainResourceFull;
|
||||
private DomainResource domainResourceNoNameservers;
|
||||
|
@ -76,8 +78,8 @@ public class RdapJsonFormatterTest {
|
|||
private ContactResource contactResourceAdmin;
|
||||
private ContactResource contactResourceTech;
|
||||
|
||||
private static final String LINK_BASE = "http://myserver.google.com/";
|
||||
private static final String LINK_BASE_NO_TRAILING_SLASH = "http://myserver.google.com";
|
||||
private static final String LINK_BASE = "http://myserver.example.com/";
|
||||
private static final String LINK_BASE_NO_TRAILING_SLASH = "http://myserver.example.com";
|
||||
// Do not set a port43 whois server, as per Gustavo Lozano.
|
||||
private static final String WHOIS_SERVER = null;
|
||||
|
||||
|
@ -85,6 +87,8 @@ public class RdapJsonFormatterTest {
|
|||
public void setUp() throws Exception {
|
||||
inject.setStaticField(Ofy.class, "clock", clock);
|
||||
|
||||
rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
|
||||
// Create the registrar in 1999, then update it in 2000.
|
||||
clock.setTo(DateTime.parse("1999-01-01T00:00:00Z"));
|
||||
createTld("xn--q9jyb4c", TldState.GENERAL_AVAILABILITY);
|
||||
|
@ -204,42 +208,42 @@ public class RdapJsonFormatterTest {
|
|||
|
||||
@Test
|
||||
public void testRegistrar() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForRegistrar(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForRegistrar(
|
||||
registrar, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc(), OutputDataType.FULL))
|
||||
.isEqualTo(loadJson("rdapjson_registrar.json"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRegistrar_summary() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForRegistrar(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForRegistrar(
|
||||
registrar, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc(), OutputDataType.SUMMARY))
|
||||
.isEqualTo(loadJson("rdapjson_registrar_summary.json"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHost_ipv4() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForHost(
|
||||
hostResourceIpv4, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc(), OutputDataType.FULL))
|
||||
.isEqualTo(loadJson("rdapjson_host_ipv4.json"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHost_ipv6() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForHost(
|
||||
hostResourceIpv6, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc(), OutputDataType.FULL))
|
||||
.isEqualTo(loadJson("rdapjson_host_ipv6.json"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHost_both() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForHost(
|
||||
hostResourceBoth, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc(), OutputDataType.FULL))
|
||||
.isEqualTo(loadJson("rdapjson_host_both.json"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHost_both_summary() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForHost(
|
||||
hostResourceBoth,
|
||||
false,
|
||||
LINK_BASE,
|
||||
|
@ -251,7 +255,7 @@ public class RdapJsonFormatterTest {
|
|||
|
||||
@Test
|
||||
public void testHost_noAddresses() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForHost(
|
||||
hostResourceNoAddresses,
|
||||
false,
|
||||
LINK_BASE,
|
||||
|
@ -264,7 +268,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testRegistrant() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter.makeRdapJsonForContact(
|
||||
rdapJsonFormatter.makeRdapJsonForContact(
|
||||
contactResourceRegistrant,
|
||||
false,
|
||||
Optional.of(DesignatedContact.Type.REGISTRANT),
|
||||
|
@ -278,7 +282,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testRegistrant_summary() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter.makeRdapJsonForContact(
|
||||
rdapJsonFormatter.makeRdapJsonForContact(
|
||||
contactResourceRegistrant,
|
||||
false,
|
||||
Optional.of(DesignatedContact.Type.REGISTRANT),
|
||||
|
@ -292,7 +296,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testRegistrant_baseHasNoTrailingSlash() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter.makeRdapJsonForContact(
|
||||
rdapJsonFormatter.makeRdapJsonForContact(
|
||||
contactResourceRegistrant,
|
||||
false,
|
||||
Optional.of(DesignatedContact.Type.REGISTRANT),
|
||||
|
@ -306,7 +310,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testRegistrant_noBase() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter.makeRdapJsonForContact(
|
||||
rdapJsonFormatter.makeRdapJsonForContact(
|
||||
contactResourceRegistrant,
|
||||
false,
|
||||
Optional.of(DesignatedContact.Type.REGISTRANT),
|
||||
|
@ -320,7 +324,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testAdmin() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter.makeRdapJsonForContact(
|
||||
rdapJsonFormatter.makeRdapJsonForContact(
|
||||
contactResourceAdmin,
|
||||
false,
|
||||
Optional.of(DesignatedContact.Type.ADMIN),
|
||||
|
@ -334,7 +338,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testTech() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter.makeRdapJsonForContact(
|
||||
rdapJsonFormatter.makeRdapJsonForContact(
|
||||
contactResourceTech,
|
||||
false,
|
||||
Optional.of(DesignatedContact.Type.TECH),
|
||||
|
@ -348,7 +352,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testRolelessContact() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter.makeRdapJsonForContact(
|
||||
rdapJsonFormatter.makeRdapJsonForContact(
|
||||
contactResourceTech,
|
||||
false,
|
||||
Optional.<DesignatedContact.Type>absent(),
|
||||
|
@ -361,7 +365,7 @@ public class RdapJsonFormatterTest {
|
|||
|
||||
@Test
|
||||
public void testDomain_full() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForDomain(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForDomain(
|
||||
domainResourceFull,
|
||||
false,
|
||||
LINK_BASE,
|
||||
|
@ -373,7 +377,7 @@ public class RdapJsonFormatterTest {
|
|||
|
||||
@Test
|
||||
public void testDomain_summary() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForDomain(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForDomain(
|
||||
domainResourceFull,
|
||||
false,
|
||||
LINK_BASE,
|
||||
|
@ -385,7 +389,7 @@ public class RdapJsonFormatterTest {
|
|||
|
||||
@Test
|
||||
public void testDomain_noNameservers() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonForDomain(
|
||||
assertThat(rdapJsonFormatter.makeRdapJsonForDomain(
|
||||
domainResourceNoNameservers,
|
||||
false,
|
||||
LINK_BASE,
|
||||
|
@ -398,7 +402,7 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testError() throws Exception {
|
||||
assertThat(
|
||||
RdapJsonFormatter
|
||||
rdapJsonFormatter
|
||||
.makeError(SC_BAD_REQUEST, "Invalid Domain Name", "Not a valid domain name"))
|
||||
.isEqualTo(loadJson("rdapjson_error.json"));
|
||||
}
|
||||
|
@ -406,14 +410,14 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testHelp_absoluteHtmlUrl() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonNotice(
|
||||
MakeRdapJsonNoticeParameters.builder()
|
||||
.title("RDAP Help")
|
||||
.description(ImmutableList.of(
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Help")
|
||||
.setDescription(ImmutableList.of(
|
||||
"RDAP Help Topics (use /help/topic for information)",
|
||||
"syntax",
|
||||
"tos (Terms of Service)"))
|
||||
.linkValueSuffix("help/index")
|
||||
.linkHrefUrlString(LINK_BASE + "about/rdap/index.html")
|
||||
.setLinkValueSuffix("help/index")
|
||||
.setLinkHrefUrlString(LINK_BASE + "about/rdap/index.html")
|
||||
.build(),
|
||||
LINK_BASE))
|
||||
.isEqualTo(loadJson("rdapjson_notice_alternate_link.json"));
|
||||
|
@ -422,14 +426,14 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testHelp_relativeHtmlUrlWithStartingSlash() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonNotice(
|
||||
MakeRdapJsonNoticeParameters.builder()
|
||||
.title("RDAP Help")
|
||||
.description(ImmutableList.of(
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Help")
|
||||
.setDescription(ImmutableList.of(
|
||||
"RDAP Help Topics (use /help/topic for information)",
|
||||
"syntax",
|
||||
"tos (Terms of Service)"))
|
||||
.linkValueSuffix("help/index")
|
||||
.linkHrefUrlString("/about/rdap/index.html")
|
||||
.setLinkValueSuffix("help/index")
|
||||
.setLinkHrefUrlString("/about/rdap/index.html")
|
||||
.build(),
|
||||
LINK_BASE))
|
||||
.isEqualTo(loadJson("rdapjson_notice_alternate_link.json"));
|
||||
|
@ -438,14 +442,14 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testHelp_relativeHtmlUrlWithoutStartingSlash() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonNotice(
|
||||
MakeRdapJsonNoticeParameters.builder()
|
||||
.title("RDAP Help")
|
||||
.description(ImmutableList.of(
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Help")
|
||||
.setDescription(ImmutableList.of(
|
||||
"RDAP Help Topics (use /help/topic for information)",
|
||||
"syntax",
|
||||
"tos (Terms of Service)"))
|
||||
.linkValueSuffix("help/index")
|
||||
.linkHrefUrlString("about/rdap/index.html")
|
||||
.setLinkValueSuffix("help/index")
|
||||
.setLinkHrefUrlString("about/rdap/index.html")
|
||||
.build(),
|
||||
LINK_BASE))
|
||||
.isEqualTo(loadJson("rdapjson_notice_alternate_link.json"));
|
||||
|
@ -454,13 +458,13 @@ public class RdapJsonFormatterTest {
|
|||
@Test
|
||||
public void testHelp_noHtmlUrl() throws Exception {
|
||||
assertThat(RdapJsonFormatter.makeRdapJsonNotice(
|
||||
MakeRdapJsonNoticeParameters.builder()
|
||||
.title("RDAP Help")
|
||||
.description(ImmutableList.of(
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Help")
|
||||
.setDescription(ImmutableList.of(
|
||||
"RDAP Help Topics (use /help/topic for information)",
|
||||
"syntax",
|
||||
"tos (Terms of Service)"))
|
||||
.linkValueSuffix("help/index")
|
||||
.setLinkValueSuffix("help/index")
|
||||
.build(),
|
||||
LINK_BASE))
|
||||
.isEqualTo(loadJson("rdapjson_notice_self_link.json"));
|
||||
|
@ -470,7 +474,7 @@ public class RdapJsonFormatterTest {
|
|||
public void testTopLevel() throws Exception {
|
||||
ImmutableMap.Builder<String, Object> builder = new ImmutableMap.Builder<>();
|
||||
builder.put("key", "value");
|
||||
RdapJsonFormatter.addTopLevelEntries(
|
||||
rdapJsonFormatter.addTopLevelEntries(
|
||||
builder,
|
||||
RdapJsonFormatter.BoilerplateType.OTHER,
|
||||
ImmutableList.<ImmutableMap<String, Object>>of(),
|
||||
|
@ -483,10 +487,10 @@ public class RdapJsonFormatterTest {
|
|||
public void testTopLevel_withTermsOfService() throws Exception {
|
||||
ImmutableMap.Builder<String, Object> builder = new ImmutableMap.Builder<>();
|
||||
builder.put("key", "value");
|
||||
RdapJsonFormatter.addTopLevelEntries(
|
||||
rdapJsonFormatter.addTopLevelEntries(
|
||||
builder,
|
||||
RdapJsonFormatter.BoilerplateType.OTHER,
|
||||
ImmutableList.of(RdapHelpAction.getJsonHelpNotice("/tos", LINK_BASE)),
|
||||
ImmutableList.of(rdapJsonFormatter.getJsonHelpNotice("/tos", LINK_BASE)),
|
||||
ImmutableList.<ImmutableMap<String, Object>>of(),
|
||||
LINK_BASE);
|
||||
assertThat(builder.build()).isEqualTo(loadJson("rdapjson_toplevel.json"));
|
||||
|
@ -496,7 +500,7 @@ public class RdapJsonFormatterTest {
|
|||
public void testTopLevel_domain() throws Exception {
|
||||
ImmutableMap.Builder<String, Object> builder = new ImmutableMap.Builder<>();
|
||||
builder.put("key", "value");
|
||||
RdapJsonFormatter.addTopLevelEntries(
|
||||
rdapJsonFormatter.addTopLevelEntries(
|
||||
builder,
|
||||
RdapJsonFormatter.BoilerplateType.DOMAIN,
|
||||
ImmutableList.<ImmutableMap<String, Object>>of(),
|
||||
|
@ -509,10 +513,10 @@ public class RdapJsonFormatterTest {
|
|||
public void testTopLevel_domainWithTermsOfService() throws Exception {
|
||||
ImmutableMap.Builder<String, Object> builder = new ImmutableMap.Builder<>();
|
||||
builder.put("key", "value");
|
||||
RdapJsonFormatter.addTopLevelEntries(
|
||||
rdapJsonFormatter.addTopLevelEntries(
|
||||
builder,
|
||||
RdapJsonFormatter.BoilerplateType.DOMAIN,
|
||||
ImmutableList.of(RdapHelpAction.getJsonHelpNotice("/tos", LINK_BASE)),
|
||||
ImmutableList.of(rdapJsonFormatter.getJsonHelpNotice("/tos", LINK_BASE)),
|
||||
ImmutableList.<ImmutableMap<String, Object>>of(),
|
||||
LINK_BASE);
|
||||
assertThat(builder.build()).isEqualTo(loadJson("rdapjson_toplevel_domain.json"));
|
||||
|
|
|
@ -75,6 +75,7 @@ public class RdapNameserverActionTest {
|
|||
action.clock = clock;
|
||||
action.response = response;
|
||||
action.requestPath = RdapNameserverAction.PATH.concat(input);
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
action.rdapLinkBase = "https://example.tld/rdap/";
|
||||
action.rdapWhoisServer = null;
|
||||
return action;
|
||||
|
|
|
@ -132,6 +132,7 @@ public class RdapNameserverSearchActionTest {
|
|||
action.clock = clock;
|
||||
action.requestPath = RdapNameserverSearchAction.PATH;
|
||||
action.response = response;
|
||||
action.rdapJsonFormatter = RdapTestHelper.getTestRdapJsonFormatter();
|
||||
action.rdapResultSetMaxSize = 4;
|
||||
action.rdapLinkBase = "https://example.tld/rdap/";
|
||||
action.rdapWhoisServer = null;
|
||||
|
@ -140,7 +141,7 @@ public class RdapNameserverSearchActionTest {
|
|||
}
|
||||
|
||||
private Object generateExpectedJson(String expectedOutputFile) {
|
||||
return generateExpectedJson(null, null, null, null, null, expectedOutputFile);
|
||||
return generateExpectedJson(null, null, null, null, null, expectedOutputFile);
|
||||
}
|
||||
|
||||
private Object generateExpectedJson(String name, String expectedOutputFile) {
|
||||
|
@ -207,7 +208,7 @@ public class RdapNameserverSearchActionTest {
|
|||
.setSubordinateHosts(subordinateHostsBuilder.build())
|
||||
.build());
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testInvalidPath_rejected() throws Exception {
|
||||
action.requestPath = RdapDomainSearchAction.PATH + "/path";
|
||||
|
@ -354,7 +355,7 @@ public class RdapNameserverSearchActionTest {
|
|||
generateActualJsonWithName("dog*");
|
||||
assertThat(response.getStatus()).isEqualTo(404);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testNameMatch_nontruncatedResultSet() throws Exception {
|
||||
createManyHosts(4);
|
||||
|
|
|
@ -16,6 +16,7 @@ package google.registry.rdap;
|
|||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import google.registry.config.RdapNoticeDescriptor;
|
||||
|
||||
public class RdapTestHelper {
|
||||
|
||||
|
@ -35,8 +36,8 @@ public class RdapTestHelper {
|
|||
+ " 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"
|
||||
+ " Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
+ " 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"
|
||||
|
@ -51,7 +52,7 @@ public class RdapTestHelper {
|
|||
ImmutableMap.of(
|
||||
"value", linkBase + "help/tos",
|
||||
"rel", "alternate",
|
||||
"href", "https://www.registry.google/about/rdap/tos.html",
|
||||
"href", "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type", "text/html")))));
|
||||
}
|
||||
|
||||
|
@ -99,5 +100,75 @@ public class RdapTestHelper {
|
|||
"href", "https://www.icann.org/wicf",
|
||||
"type", "text/html")))));
|
||||
}
|
||||
}
|
||||
|
||||
static RdapJsonFormatter getTestRdapJsonFormatter() {
|
||||
RdapJsonFormatter rdapJsonFormatter = new RdapJsonFormatter();
|
||||
rdapJsonFormatter.rdapTosPath = "/tos";
|
||||
rdapJsonFormatter.rdapHelpMap = ImmutableMap.of(
|
||||
"/",
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Help")
|
||||
.setDescription(ImmutableList.of(
|
||||
"RDAP Help Topics (use /help/topic for information)",
|
||||
"syntax",
|
||||
"tos (Terms of Service)"))
|
||||
.setLinkValueSuffix("help/")
|
||||
.build(),
|
||||
"/index",
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Help")
|
||||
.setDescription(ImmutableList.of(
|
||||
"RDAP Help Topics (use /help/topic for information)",
|
||||
"syntax",
|
||||
"tos (Terms of Service)"))
|
||||
.setLinkValueSuffix("help/index")
|
||||
.build(),
|
||||
"/syntax",
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Command Syntax")
|
||||
.setDescription(ImmutableList.of(
|
||||
"domain/XXXX",
|
||||
"nameserver/XXXX",
|
||||
"entity/XXXX",
|
||||
"domains?name=XXXX",
|
||||
"domains?nsLdhName=XXXX",
|
||||
"domains?nsIp=XXXX",
|
||||
"nameservers?name=XXXX",
|
||||
"nameservers?ip=XXXX",
|
||||
"entities?fn=XXXX",
|
||||
"entities?handle=XXXX",
|
||||
"help/XXXX"))
|
||||
.setLinkValueSuffix("help/syntax")
|
||||
.setLinkHrefUrlString("https://www.registry.tld/about/rdap/syntax.html")
|
||||
.build(),
|
||||
"/tos",
|
||||
RdapNoticeDescriptor.builder()
|
||||
.setTitle("RDAP Terms of Service")
|
||||
.setDescription(ImmutableList.of(
|
||||
"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."))
|
||||
.setLinkValueSuffix("help/tos")
|
||||
.setLinkHrefUrlString("https://www.registry.tld/about/rdap/tos.html")
|
||||
.build());
|
||||
return rdapJsonFormatter;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,9 +14,9 @@
|
|||
[
|
||||
{
|
||||
"value" : "https://example.tld/rdap/help/%NAME%",
|
||||
"rel" : "alternate",
|
||||
"type" : "text/html",
|
||||
"href" : "https://www.registry.google/about/rdap/index.html"
|
||||
"rel" : "self",
|
||||
"type" : "application/rdap+json",
|
||||
"href" : "https://example.tld/rdap/help/%NAME%"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -28,7 +28,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -40,7 +40,7 @@
|
|||
{
|
||||
"value" : "https://example.tld/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -22,7 +22,7 @@
|
|||
{
|
||||
"value" : "https://example.tld/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -112,7 +112,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -124,7 +124,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -105,7 +105,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -117,7 +117,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -82,7 +82,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -82,7 +82,7 @@
|
|||
{
|
||||
"value" : "https://example.tld/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -197,7 +197,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -209,7 +209,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -126,7 +126,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -138,7 +138,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -125,7 +125,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -137,7 +137,7 @@
|
|||
{
|
||||
"value" : "https://example.tld/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -225,7 +225,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -237,7 +237,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -205,7 +205,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -217,7 +217,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -134,7 +134,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -146,7 +146,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -133,7 +133,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -145,7 +145,7 @@
|
|||
{
|
||||
"value" : "https://example.tld/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -212,7 +212,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -224,7 +224,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -233,7 +233,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -245,7 +245,7 @@
|
|||
{
|
||||
"value" : "https://example.com/rdap/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/4-ROID",
|
||||
"value" : "http://myserver.example.com/entity/4-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/4-ROID",
|
||||
"href" : "http://myserver.example.com/entity/4-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -13,9 +13,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/domain/cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/domain/cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/domain/cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/domain/cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -49,9 +49,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -80,9 +80,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -113,9 +113,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/4-ROID",
|
||||
"value" : "http://myserver.example.com/entity/4-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/4-ROID",
|
||||
"href" : "http://myserver.example.com/entity/4-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -162,9 +162,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/6-ROID",
|
||||
"value" : "http://myserver.example.com/entity/6-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/6-ROID",
|
||||
"href" : "http://myserver.example.com/entity/6-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -211,9 +211,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/2-ROID",
|
||||
"value" : "http://myserver.example.com/entity/2-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/2-ROID",
|
||||
"href" : "http://myserver.example.com/entity/2-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -14,9 +14,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/domain/fish.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/domain/fish.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/domain/fish.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/domain/fish.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -49,9 +49,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/4-ROID",
|
||||
"value" : "http://myserver.example.com/entity/4-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/4-ROID",
|
||||
"href" : "http://myserver.example.com/entity/4-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -98,9 +98,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/6-ROID",
|
||||
"value" : "http://myserver.example.com/entity/6-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/6-ROID",
|
||||
"href" : "http://myserver.example.com/entity/6-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
@ -147,9 +147,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/2-ROID",
|
||||
"value" : "http://myserver.example.com/entity/2-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/2-ROID",
|
||||
"href" : "http://myserver.example.com/entity/2-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -13,9 +13,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/domain/cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/domain/cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/domain/cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/domain/cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/nameserver/ns3.cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/nameserver/ns1.cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/nameserver/ns2.cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/nameserver/ns4.cat.xn--q9jyb4c",
|
||||
"value" : "http://myserver.example.com/nameserver/ns4.cat.xn--q9jyb4c",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/nameserver/ns4.cat.xn--q9jyb4c",
|
||||
"href" : "http://myserver.example.com/nameserver/ns4.cat.xn--q9jyb4c",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -9,10 +9,10 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/help/index",
|
||||
"value" : "http://myserver.example.com/help/index",
|
||||
"rel" : "alternate",
|
||||
"type" : "text/html",
|
||||
"href" : "http://myserver.google.com/about/rdap/index.html"
|
||||
"href" : "http://myserver.example.com/about/rdap/index.html"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -9,10 +9,10 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/help/index",
|
||||
"value" : "http://myserver.example.com/help/index",
|
||||
"rel" : "self",
|
||||
"type" : "application/rdap+json",
|
||||
"href" : "http://myserver.google.com/help/index",
|
||||
"href" : "http://myserver.example.com/help/index",
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/2-ROID",
|
||||
"value" : "http://myserver.example.com/entity/2-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/2-ROID",
|
||||
"href" : "http://myserver.example.com/entity/2-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/2-ROID",
|
||||
"value" : "http://myserver.example.com/entity/2-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/2-ROID",
|
||||
"href" : "http://myserver.example.com/entity/2-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/1",
|
||||
"value" : "http://myserver.example.com/entity/1",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/1",
|
||||
"href" : "http://myserver.example.com/entity/1",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/1",
|
||||
"value" : "http://myserver.example.com/entity/1",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/1",
|
||||
"href" : "http://myserver.example.com/entity/1",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/6-ROID",
|
||||
"value" : "http://myserver.example.com/entity/6-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/6-ROID",
|
||||
"href" : "http://myserver.example.com/entity/6-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/entity/6-ROID",
|
||||
"value" : "http://myserver.example.com/entity/6-ROID",
|
||||
"rel" : "self",
|
||||
"href" : "http://myserver.google.com/entity/6-ROID",
|
||||
"href" : "http://myserver.example.com/entity/6-ROID",
|
||||
"type" : "application/rdap+json"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -24,9 +24,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/help/tos",
|
||||
"value" : "http://myserver.example.com/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
"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 Charleston Road Registry or any ICANN-accredited registrar.",
|
||||
"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.",
|
||||
|
@ -24,9 +24,9 @@
|
|||
"links" :
|
||||
[
|
||||
{
|
||||
"value" : "http://myserver.google.com/help/tos",
|
||||
"value" : "http://myserver.example.com/help/tos",
|
||||
"rel" : "alternate",
|
||||
"href" : "https://www.registry.google/about/rdap/tos.html",
|
||||
"href" : "https://www.registry.tld/about/rdap/tos.html",
|
||||
"type" : "text/html"
|
||||
}
|
||||
]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue