diff --git a/java/google/registry/BUILD b/java/google/registry/BUILD index a76e2bee2..c1ff37f8a 100644 --- a/java/google/registry/BUILD +++ b/java/google/registry/BUILD @@ -68,6 +68,7 @@ zip_file( name = "registry_default_war", srcs = [ "env/common/default/WEB-INF/datastore-indexes.xml", + "env/common/default/WEB-INF/dispatch.xml", "env/common/default/WEB-INF/dos.xml", "env/common/default/WEB-INF/logging.properties", "env/common/default/WEB-INF/queue.xml", diff --git a/java/google/registry/env/common/default/WEB-INF/dispatch.xml b/java/google/registry/env/common/default/WEB-INF/dispatch.xml new file mode 100644 index 000000000..2a80187bb --- /dev/null +++ b/java/google/registry/env/common/default/WEB-INF/dispatch.xml @@ -0,0 +1,20 @@ + + + + + */rdap/* + pubapi + + + */whois/* + pubapi + + + */_dr/whois + pubapi + + + */check + pubapi + + diff --git a/java/google/registry/env/common/default/WEB-INF/web.xml b/java/google/registry/env/common/default/WEB-INF/web.xml index c2e5ef808..fb123396e 100644 --- a/java/google/registry/env/common/default/WEB-INF/web.xml +++ b/java/google/registry/env/common/default/WEB-INF/web.xml @@ -49,39 +49,6 @@ /registrar-settings - - - frontend-servlet - /whois/* - - - - - frontend-servlet - /_dr/whois - - - - - frontend-servlet - /rdap/* - - - - - frontend-servlet - /check - - - - - frontend-servlet - /check2 - - diff --git a/java/google/registry/module/frontend/BUILD b/java/google/registry/module/frontend/BUILD index d3162f06d..b79a8db06 100644 --- a/java/google/registry/module/frontend/BUILD +++ b/java/google/registry/module/frontend/BUILD @@ -15,14 +15,12 @@ java_library( "//java/google/registry/keyring/api", "//java/google/registry/keyring/kms", "//java/google/registry/monitoring/whitebox", - "//java/google/registry/rdap", "//java/google/registry/request", "//java/google/registry/request:modules", "//java/google/registry/request/auth", "//java/google/registry/ui", "//java/google/registry/ui/server/registrar", "//java/google/registry/util", - "//java/google/registry/whois", "@com_google_appengine_api_1_0_sdk", "@com_google_code_findbugs_jsr305", "@com_google_dagger", diff --git a/java/google/registry/module/frontend/FrontendComponent.java b/java/google/registry/module/frontend/FrontendComponent.java index 9835b4c4a..93410de45 100644 --- a/java/google/registry/module/frontend/FrontendComponent.java +++ b/java/google/registry/module/frontend/FrontendComponent.java @@ -50,7 +50,6 @@ import javax.inject.Singleton; ConsoleConfigModule.class, CustomLogicFactoryModule.class, google.registry.keyring.api.DummyKeyringModule.class, - FrontendMetricsModule.class, FrontendRequestComponentModule.class, GoogleCredentialModule.class, Jackson2Module.class, diff --git a/java/google/registry/module/frontend/FrontendMetricsModule.java b/java/google/registry/module/frontend/FrontendMetricsModule.java deleted file mode 100644 index 3e77b87cb..000000000 --- a/java/google/registry/module/frontend/FrontendMetricsModule.java +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2017 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.module.frontend; - -import dagger.Module; -import javax.inject.Singleton; - -/** - * Dagger module for injecting metrics. All metrics should have {@link Singleton} scope to avoid - * being recreated per-request, as the metrics generally track cumulative values. - */ -@Module -public class FrontendMetricsModule {} diff --git a/java/google/registry/module/frontend/FrontendRequestComponent.java b/java/google/registry/module/frontend/FrontendRequestComponent.java index fe86a0ece..badeb2131 100644 --- a/java/google/registry/module/frontend/FrontendRequestComponent.java +++ b/java/google/registry/module/frontend/FrontendRequestComponent.java @@ -17,25 +17,11 @@ package google.registry.module.frontend; import dagger.Module; import dagger.Subcomponent; import google.registry.dns.DnsModule; -import google.registry.flows.CheckApi2Action; -import google.registry.flows.CheckApi2Action.CheckApi2Module; -import google.registry.flows.CheckApiAction; -import google.registry.flows.CheckApiAction.CheckApiModule; import google.registry.flows.EppConsoleAction; import google.registry.flows.EppTlsAction; import google.registry.flows.FlowComponent; import google.registry.flows.TlsCredentials.EppTlsModule; import google.registry.monitoring.whitebox.WhiteboxModule; -import google.registry.rdap.RdapAutnumAction; -import google.registry.rdap.RdapDomainAction; -import google.registry.rdap.RdapDomainSearchAction; -import google.registry.rdap.RdapEntityAction; -import google.registry.rdap.RdapEntitySearchAction; -import google.registry.rdap.RdapHelpAction; -import google.registry.rdap.RdapIpAction; -import google.registry.rdap.RdapModule; -import google.registry.rdap.RdapNameserverAction; -import google.registry.rdap.RdapNameserverSearchAction; import google.registry.request.RequestComponentBuilder; import google.registry.request.RequestModule; import google.registry.request.RequestScope; @@ -43,46 +29,24 @@ import google.registry.ui.server.registrar.ConsoleUiAction; import google.registry.ui.server.registrar.RegistrarPaymentAction; import google.registry.ui.server.registrar.RegistrarPaymentSetupAction; import google.registry.ui.server.registrar.RegistrarSettingsAction; -import google.registry.whois.WhoisAction; -import google.registry.whois.WhoisHttpAction; -import google.registry.whois.WhoisModule; /** Dagger component with per-request lifetime for "default" App Engine module. */ @RequestScope @Subcomponent( modules = { - CheckApiModule.class, - CheckApi2Module.class, DnsModule.class, EppTlsModule.class, - RdapModule.class, RequestModule.class, WhiteboxModule.class, - WhoisModule.class, }) interface FrontendRequestComponent { - CheckApiAction checkApiAction(); - CheckApi2Action checkApi2Action(); ConsoleUiAction consoleUiAction(); EppConsoleAction eppConsoleAction(); EppTlsAction eppTlsAction(); FlowComponent.Builder flowComponentBuilder(); - RdapAutnumAction rdapAutnumAction(); RegistrarPaymentAction registrarPaymentAction(); RegistrarPaymentSetupAction registrarPaymentSetupAction(); RegistrarSettingsAction registrarSettingsAction(); - RdapDomainAction rdapDomainAction(); - RdapDomainSearchAction rdapDomainSearchAction(); - RdapEntityAction rdapEntityAction(); - RdapEntitySearchAction rdapEntitySearchAction(); - RdapHelpAction rdapHelpAction(); - RdapIpAction rdapDefaultAction(); - RdapNameserverAction rdapNameserverAction(); - RdapNameserverSearchAction rdapNameserverSearchAction(); - - WhoisHttpAction whoisHttpAction(); - - WhoisAction whoisAction(); @Subcomponent.Builder abstract class Builder implements RequestComponentBuilder { diff --git a/java/google/registry/module/pubapi/PubApiComponent.java b/java/google/registry/module/pubapi/PubApiComponent.java index d1edf4172..608837997 100644 --- a/java/google/registry/module/pubapi/PubApiComponent.java +++ b/java/google/registry/module/pubapi/PubApiComponent.java @@ -47,7 +47,6 @@ import javax.inject.Singleton; ConfigModule.class, CustomLogicFactoryModule.class, google.registry.keyring.api.DummyKeyringModule.class, - PubApiMetricsModule.class, PubApiRequestComponentModule.class, GoogleCredentialModule.class, Jackson2Module.class, diff --git a/java/google/registry/module/pubapi/PubApiMetricsModule.java b/java/google/registry/module/pubapi/PubApiMetricsModule.java deleted file mode 100644 index d2e5b9cc2..000000000 --- a/java/google/registry/module/pubapi/PubApiMetricsModule.java +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2018 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.module.pubapi; - -import dagger.Module; -import javax.inject.Singleton; - -/** - * Dagger module for injecting metrics. All metrics should have {@link Singleton} scope to avoid - * being recreated per-request, as the metrics generally track cumulative values. - */ -@Module -public class PubApiMetricsModule {} diff --git a/javatests/google/registry/module/frontend/testdata/frontend_routing.txt b/javatests/google/registry/module/frontend/testdata/frontend_routing.txt index 9cb3fa248..44a7a46c7 100644 --- a/javatests/google/registry/module/frontend/testdata/frontend_routing.txt +++ b/javatests/google/registry/module/frontend/testdata/frontend_routing.txt @@ -1,20 +1,7 @@ -PATH CLASS METHODS OK AUTH_METHODS MIN USER_POLICY -/_dr/epp EppTlsAction POST n INTERNAL,API APP PUBLIC -/_dr/whois WhoisAction POST n INTERNAL,API APP PUBLIC -/check CheckApiAction GET n INTERNAL NONE PUBLIC -/check2 CheckApi2Action GET n INTERNAL NONE PUBLIC -/rdap/autnum/(*) RdapAutnumAction GET,HEAD n INTERNAL NONE PUBLIC -/rdap/domain/(*) RdapDomainAction GET,HEAD n INTERNAL,API,LEGACY NONE PUBLIC -/rdap/domains RdapDomainSearchAction GET,HEAD n INTERNAL,API,LEGACY NONE PUBLIC -/rdap/entities RdapEntitySearchAction GET,HEAD n INTERNAL,API,LEGACY NONE PUBLIC -/rdap/entity/(*) RdapEntityAction GET,HEAD n INTERNAL,API,LEGACY NONE PUBLIC -/rdap/help(*) RdapHelpAction GET,HEAD n INTERNAL NONE PUBLIC -/rdap/ip/(*) RdapIpAction GET,HEAD n INTERNAL NONE PUBLIC -/rdap/nameserver/(*) RdapNameserverAction GET,HEAD n INTERNAL NONE PUBLIC -/rdap/nameservers RdapNameserverSearchAction GET,HEAD n INTERNAL NONE PUBLIC -/registrar ConsoleUiAction GET n INTERNAL,API,LEGACY NONE PUBLIC -/registrar-payment RegistrarPaymentAction POST n API,LEGACY USER PUBLIC -/registrar-payment-setup RegistrarPaymentSetupAction POST n API,LEGACY USER PUBLIC -/registrar-settings RegistrarSettingsAction POST n API,LEGACY USER PUBLIC -/registrar-xhr EppConsoleAction POST n API,LEGACY USER PUBLIC -/whois/(*) WhoisHttpAction GET n INTERNAL NONE PUBLIC +PATH CLASS METHODS OK AUTH_METHODS MIN USER_POLICY +/_dr/epp EppTlsAction POST n INTERNAL,API APP PUBLIC +/registrar ConsoleUiAction GET n INTERNAL,API,LEGACY NONE PUBLIC +/registrar-payment RegistrarPaymentAction POST n API,LEGACY USER PUBLIC +/registrar-payment-setup RegistrarPaymentSetupAction POST n API,LEGACY USER PUBLIC +/registrar-settings RegistrarSettingsAction POST n API,LEGACY USER PUBLIC +/registrar-xhr EppConsoleAction POST n API,LEGACY USER PUBLIC