From d4d9c2f002f78122d492c6f56dcdeba0e9bf200f Mon Sep 17 00:00:00 2001 From: gjoranv Date: Sat, 9 Jul 2022 23:43:40 +0200 Subject: Simplify by removing the not-so-useful generic param for Handler - Uust declare it as a Component with other Components as children. --- .../vespa/model/admin/LogserverContainerCluster.java | 2 +- .../clustercontroller/ClusterControllerContainer.java | 4 ++-- .../metricsproxy/MetricsProxyContainerCluster.java | 6 +++--- .../application/validation/UriBindingsValidator.java | 2 +- .../builder/xml/dom/DomClientProviderBuilder.java | 3 +-- .../model/builder/xml/dom/DomHandlerBuilder.java | 19 ++++++++----------- .../vespa/model/clients/ContainerDocumentApi.java | 15 +++++++-------- .../model/container/ApplicationContainerCluster.java | 2 +- .../com/yahoo/vespa/model/container/Container.java | 6 +++--- .../yahoo/vespa/model/container/ContainerCluster.java | 17 ++++++++--------- .../model/container/ContainerModelEvaluation.java | 4 ++-- .../component/DiscBindingsConfigGenerator.java | 6 +++--- .../vespa/model/container/component/Handler.java | 10 ++++------ .../container/component/chain/ProcessingHandler.java | 4 +--- .../vespa/model/container/docproc/MbusClient.java | 3 +-- .../vespa/model/container/http/AccessControl.java | 14 +++++++------- .../vespa/model/container/search/GUIHandler.java | 3 +-- .../model/container/xml/ContainerModelBuilder.java | 4 ++-- .../MetricsProxyContainerClusterTest.java | 2 +- .../xml/ContainerDocumentApiBuilderTest.java | 16 ++++++++-------- .../container/xml/ContainerModelBuilderTest.java | 4 ++-- .../container/xml/ContainerModelBuilderTestBase.java | 6 +++--- .../vespa/model/container/xml/HandlerBuilderTest.java | 2 +- .../vespa/model/container/xml/SearchBuilderTest.java | 4 ++-- 24 files changed, 73 insertions(+), 85 deletions(-) diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java index 75b13a89e83..c50b9b7f842 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java @@ -36,7 +36,7 @@ public class LogserverContainerCluster extends ContainerCluster logHandler = Handler.fromClassName(ContainerCluster.LOG_HANDLER_CLASS); + Handler logHandler = Handler.fromClassName(ContainerCluster.LOG_HANDLER_CLASS); logHandler.addServerBindings(SystemBindingPattern.fromHttpPath("/logs")); addComponent(logHandler); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java index 1da5e190c70..5d60cec0679 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java @@ -118,7 +118,7 @@ public class ClusterControllerContainer extends Container implements ZOOKEEPER_SERVER_BUNDLE); } - private void addHandler(Handler h, String path) { + private void addHandler(Handler h, String path) { h.addServerBindings(SystemBindingPattern.fromHttpPath(path)); super.addHandler(h); } @@ -138,7 +138,7 @@ public class ClusterControllerContainer extends Container implements } private void addHandler(String id, String className, String path, ComponentSpecification bundle) { - addHandler(new Handler<>(createComponentModel(id, className, bundle)), path); + addHandler(new Handler(createComponentModel(id, className, bundle)), path); } private ReindexingContext reindexingContext() { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java index a29647b062a..680a4b97f86 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerCluster.java @@ -119,12 +119,12 @@ public class MetricsProxyContainerCluster extends ContainerCluster clazz, String bindingPath) { - Handler> metricsHandler = createMetricsHandler(clazz, bindingPath); + Handler metricsHandler = createMetricsHandler(clazz, bindingPath); addComponent(metricsHandler); } - static Handler> createMetricsHandler(Class clazz, String bindingPath) { - Handler> metricsHandler = new Handler<>( + static Handler createMetricsHandler(Class clazz, String bindingPath) { + Handler metricsHandler = new Handler( new ComponentModel(clazz.getName(), null, METRICS_PROXY_BUNDLE_NAME, null)); metricsHandler.addServerBindings( SystemBindingPattern.fromHttpPath(bindingPath), diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java index 4f322578b1c..718f1646126 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java @@ -24,7 +24,7 @@ class UriBindingsValidator extends Validator { @Override public void validate(VespaModel model, DeployState deployState) { for (ApplicationContainerCluster cluster : model.getContainerClusters().values()) { - for (Handler handler : cluster.getHandlers()) { + for (Handler handler : cluster.getHandlers()) { for (BindingPattern binding : handler.getServerBindings()) { validateUserBinding(binding, model, deployState); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientProviderBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientProviderBuilder.java index 69613944e74..170e8940787 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientProviderBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientProviderBuilder.java @@ -5,7 +5,6 @@ import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.text.XML; import com.yahoo.vespa.model.container.ApplicationContainerCluster; -import com.yahoo.vespa.model.container.component.Component; import com.yahoo.vespa.model.container.component.Handler; import com.yahoo.vespa.model.container.component.UserBindingPattern; import org.w3c.dom.Element; @@ -22,7 +21,7 @@ public class DomClientProviderBuilder extends DomHandlerBuilder { @Override protected Handler doBuild(DeployState deployState, AbstractConfigProducer parent, Element clientElement) { - Handler> client = createHandler(clientElement); + Handler client = createHandler(clientElement); for (Element binding : XML.getChildren(clientElement, "binding")) client.addClientBindings(UserBindingPattern.fromPattern(XML.getValue(binding))); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomHandlerBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomHandlerBuilder.java index 025a6377b04..7bfe971981e 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomHandlerBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomHandlerBuilder.java @@ -9,15 +9,12 @@ import com.yahoo.osgi.provider.model.ComponentModel; import com.yahoo.text.XML; import com.yahoo.vespa.model.container.ApplicationContainerCluster; import com.yahoo.vespa.model.container.component.BindingPattern; -import com.yahoo.vespa.model.container.component.Component; import com.yahoo.vespa.model.container.component.Handler; import com.yahoo.vespa.model.container.component.UserBindingPattern; import com.yahoo.vespa.model.container.xml.BundleInstantiationSpecificationBuilder; import org.w3c.dom.Element; -import java.util.List; import java.util.Set; -import java.util.logging.Level; import static com.yahoo.vespa.model.container.ApplicationContainerCluster.METRICS_V2_HANDLER_BINDING_1; import static com.yahoo.vespa.model.container.ApplicationContainerCluster.METRICS_V2_HANDLER_BINDING_2; @@ -29,7 +26,7 @@ import static java.util.logging.Level.INFO; /** * @author gjoranv */ -public class DomHandlerBuilder extends VespaDomBuilder.DomConfigProducerBuilder> { +public class DomHandlerBuilder extends VespaDomBuilder.DomConfigProducerBuilder { private static final Set reservedBindings = Set.of(METRICS_V2_HANDLER_BINDING_1, @@ -45,8 +42,8 @@ public class DomHandlerBuilder extends VespaDomBuilder.DomConfigProducerBuilder< } @Override - protected Handler doBuild(DeployState deployState, AbstractConfigProducer parent, Element handlerElement) { - Handler> handler = createHandler(handlerElement); + protected Handler doBuild(DeployState deployState, AbstractConfigProducer parent, Element handlerElement) { + Handler handler = createHandler(handlerElement); for (Element binding : XML.getChildren(handlerElement, "binding")) addServerBinding(handler, UserBindingPattern.fromPattern(XML.getValue(binding)), deployState.getDeployLogger()); @@ -56,18 +53,18 @@ public class DomHandlerBuilder extends VespaDomBuilder.DomConfigProducerBuilder< return handler; } - Handler> createHandler(Element handlerElement) { + Handler createHandler(Element handlerElement) { BundleInstantiationSpecification bundleSpec = BundleInstantiationSpecificationBuilder.build(handlerElement); - return new Handler<>(new ComponentModel(bundleSpec)); + return new Handler(new ComponentModel(bundleSpec)); } - private void addServerBinding(Handler> handler, BindingPattern binding, DeployLogger log) { + private void addServerBinding(Handler handler, BindingPattern binding, DeployLogger log) { throwIfBindingIsReserved(binding, handler); handler.addServerBindings(binding); removeExistingServerBinding(binding, handler, log); } - private void throwIfBindingIsReserved(BindingPattern binding, Handler newHandler) { + private void throwIfBindingIsReserved(BindingPattern binding, Handler newHandler) { for (var reserved : reservedBindings) { if (binding.hasSamePattern(reserved)) { throw new IllegalArgumentException("Binding '" + binding.patternString() + "' is a reserved Vespa binding and " + @@ -76,7 +73,7 @@ public class DomHandlerBuilder extends VespaDomBuilder.DomConfigProducerBuilder< } } - private void removeExistingServerBinding(BindingPattern binding, Handler newHandler, DeployLogger log) { + private void removeExistingServerBinding(BindingPattern binding, Handler newHandler, DeployLogger log) { for (var handler : cluster.getHandlers()) { for (BindingPattern serverBinding : handler.getServerBindings()) { if (serverBinding.hasSamePattern(binding)) { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/clients/ContainerDocumentApi.java b/config-model/src/main/java/com/yahoo/vespa/model/clients/ContainerDocumentApi.java index 366592d98e6..d5f41353616 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/clients/ContainerDocumentApi.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/clients/ContainerDocumentApi.java @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.clients; -import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.container.handler.threadpool.ContainerThreadpoolConfig; import com.yahoo.osgi.provider.model.ComponentModel; import com.yahoo.vespa.model.container.ContainerCluster; @@ -60,11 +59,11 @@ public class ContainerDocumentApi { public boolean ignoreUndefinedFields() { return ignoreUndefinedFields; } - private static Handler> newVespaClientHandler(String componentId, - String bindingSuffix, - HandlerOptions handlerOptions, - Threadpool executor) { - Handler> handler = createHandler(componentId, executor); + private static Handler newVespaClientHandler(String componentId, + String bindingSuffix, + HandlerOptions handlerOptions, + Threadpool executor) { + Handler handler = createHandler(componentId, executor); if (handlerOptions.bindings.isEmpty()) { handler.addServerBindings( SystemBindingPattern.fromHttpPath(bindingSuffix), @@ -80,8 +79,8 @@ public class ContainerDocumentApi { return handler; } - private static Handler> createHandler(String className, Threadpool executor) { - return new Handler<>(new ComponentModel(className, null, "vespaclient-container-plugin"), + private static Handler createHandler(String className, Threadpool executor) { + return new Handler(new ComponentModel(className, null, "vespaclient-container-plugin"), executor); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java index 937d7cf58d3..e316f826ad6 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java @@ -147,7 +147,7 @@ public final class ApplicationContainerCluster extends ContainerCluster> handler = new Handler<>( + Handler handler = new Handler( new ComponentModel(handlerClass, null, null, null)); handler.addServerBindings(rootBinding, innerBinding); addComponent(handler); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java index 63c323bfdaf..3d6332a9773 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java @@ -76,7 +76,7 @@ public abstract class Container extends AbstractService implements private final boolean dumpHeapOnShutdownTimeout; private final double shutdownTimeoutS; - private final ComponentGroup> handlers = new ComponentGroup<>(this, "handler"); + private final ComponentGroup handlers = new ComponentGroup<>(this, "handler"); private final ComponentGroup> components = new ComponentGroup<>(this, "components"); private final JettyHttpServer defaultHttpServer; @@ -113,7 +113,7 @@ public abstract class Container extends AbstractService implements /** True if this container is retired (slated for removal) */ public boolean isRetired() { return retired; } - public ComponentGroup> getHandlers() { + public ComponentGroup getHandlers() { return handlers; } @@ -129,7 +129,7 @@ public abstract class Container extends AbstractService implements addComponent(new SimpleComponent(new ComponentModel(idSpec, classSpec, bundleSpec))); } - public final void addHandler(Handler h) { + public final void addHandler(Handler h) { handlers.addComponent(h); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java index d98f04e80ba..45fde57fcc7 100755 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java @@ -219,14 +219,14 @@ public abstract class ContainerCluster } public void addMetricStateHandler() { - Handler> stateHandler = new Handler<>( + Handler stateHandler = new Handler( new ComponentModel(STATE_HANDLER_CLASS, null, null, null)); stateHandler.addServerBindings(STATE_HANDLER_BINDING_1, STATE_HANDLER_BINDING_2); addComponent(stateHandler); } public void addDefaultRootHandler() { - Handler> handler = new Handler<>( + Handler handler = new Handler( new ComponentModel(BundleInstantiationSpecification.getFromStrings( BINDINGS_OVERVIEW_HANDLER_CLASS, null, null), null)); // null bundle, as the handler is in container-disc handler.addServerBindings(ROOT_HANDLER_BINDING); @@ -234,7 +234,7 @@ public abstract class ContainerCluster } public void addApplicationStatusHandler() { - Handler> statusHandler = new Handler<>( + Handler statusHandler = new Handler( new ComponentModel(BundleInstantiationSpecification.getFromStrings( APPLICATION_STATUS_HANDLER_CLASS, null, null), null)); // null bundle, as the handler is in container-disc statusHandler.addServerBindings(SystemBindingPattern.fromHttpPath("/ApplicationStatus")); @@ -242,19 +242,19 @@ public abstract class ContainerCluster } public void addVipHandler() { - Handler vipHandler = Handler.fromClassName(FileStatusHandlerComponent.CLASS); + Handler vipHandler = Handler.fromClassName(FileStatusHandlerComponent.CLASS); vipHandler.addServerBindings(VIP_HANDLER_BINDING); addComponent(vipHandler); } public final void addComponent(Component component) { componentGroup.addComponent(component); - if (component instanceof Handler handler) { + if (component instanceof Handler handler) { ensureHandlerHasThreadpool(handler); } } - private void ensureHandlerHasThreadpool(Handler handler) { + private void ensureHandlerHasThreadpool(Handler handler) { if (! handler.hasCustomThreadPool) { handler.inject(defaultHandlerThreadpool); } @@ -377,9 +377,8 @@ public abstract class ContainerCluster return containerDocproc.getChains(); } - @SuppressWarnings("unchecked") - public Collection> getHandlers() { - return (Collection>)(Collection)componentGroup.getComponents(Handler.class); + public Collection getHandlers() { + return componentGroup.getComponents(Handler.class); } public void setSecretStore(SecretStore secretStore) { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java index cb8e6ba85ff..088465f56b1 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java @@ -63,8 +63,8 @@ public class ContainerModelEvaluation implements rankProfileList.getConfig(builder); } - public static Handler getHandler() { - Handler handler = new Handler<>(new ComponentModel(REST_HANDLER_NAME, null, EVALUATION_BUNDLE_NAME)); + public static Handler getHandler() { + Handler handler = new Handler(new ComponentModel(REST_HANDLER_NAME, null, EVALUATION_BUNDLE_NAME)); handler.addServerBindings( SystemBindingPattern.fromHttpPath(REST_BINDING_PATH), SystemBindingPattern.fromHttpPath(REST_BINDING_PATH + "/*")); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java b/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java index 76124b14209..e4a5c2cd440 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java @@ -14,16 +14,16 @@ import static java.util.stream.Collectors.toList; */ public class DiscBindingsConfigGenerator { - public static Map generate(Collection> handlers) { + public static Map generate(Collection handlers) { Map handlerBuilders = new LinkedHashMap<>(); - for (Handler handler : handlers) { + for (Handler handler : handlers) { handlerBuilders.putAll(generate(handler)); } return handlerBuilders; } - public static > Map generate(T handler) { + public static Map generate(T handler) { if (handler.getServerBindings().isEmpty() && handler.getClientBindings().isEmpty()) return Collections.emptyMap(); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/component/Handler.java b/config-model/src/main/java/com/yahoo/vespa/model/container/component/Handler.java index bd6df70e6ef..9f2bfe9251b 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/component/Handler.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/component/Handler.java @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.container.component; -import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.container.handler.threadpool.ContainerThreadpoolConfig; import com.yahoo.osgi.provider.model.ComponentModel; import com.yahoo.vespa.model.container.ContainerThreadpool; @@ -20,7 +19,7 @@ import java.util.Set; * * @author gjoranv */ -public class Handler> extends Component { +public class Handler extends Component, ComponentModel> { private final Set serverBindings = new LinkedHashSet<>(); private final List clientBindings = new ArrayList<>(); @@ -31,22 +30,21 @@ public class Handler> extends Component< this(model, null); } - @SuppressWarnings("unchecked") public Handler(ComponentModel model, ContainerThreadpool threadpool) { super(model); // The default threadpool is always added to the cluster, so cannot be added here. if (threadpool != null) { hasCustomThreadPool = true; - addComponent((CHILD) threadpool); + addComponent(threadpool); inject(threadpool); } else { hasCustomThreadPool = false; } } - public static Handler> fromClassName(String className) { - return new Handler<>(new ComponentModel(className, null, null, null)); + public static Handler fromClassName(String className) { + return new Handler(new ComponentModel(className, null, null, null)); } public void addServerBindings(BindingPattern... bindings) { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/ProcessingHandler.java b/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/ProcessingHandler.java index 34531a655f7..e0bbc2d755d 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/ProcessingHandler.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/ProcessingHandler.java @@ -4,8 +4,6 @@ package com.yahoo.vespa.model.container.component.chain; import com.yahoo.container.bundle.BundleInstantiationSpecification; import com.yahoo.container.core.ChainsConfig; import com.yahoo.osgi.provider.model.ComponentModel; -import com.yahoo.config.model.producer.AbstractConfigProducer; -import com.yahoo.vespa.model.container.Container; import com.yahoo.vespa.model.container.ContainerThreadpool; import com.yahoo.vespa.model.container.component.Handler; @@ -16,7 +14,7 @@ import com.yahoo.vespa.model.container.component.Handler; * @author gjoranv */ public class ProcessingHandler> - extends Handler> + extends Handler implements ChainsConfig.Producer { protected final CHAINS chains; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/MbusClient.java b/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/MbusClient.java index 28a0748be26..0efcd8df37f 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/MbusClient.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/MbusClient.java @@ -6,13 +6,12 @@ import com.yahoo.component.ComponentSpecification; import com.yahoo.container.jdisc.config.SessionConfig; import com.yahoo.container.bundle.BundleInstantiationSpecification; import com.yahoo.osgi.provider.model.ComponentModel; -import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.vespa.model.container.component.Handler; /** * @author Einar M R Rosenvinge */ -public class MbusClient extends Handler> implements SessionConfig.Producer { +public class MbusClient extends Handler implements SessionConfig.Producer { private static final ComponentSpecification CLASSNAME = ComponentSpecification.fromString("com.yahoo.container.jdisc.messagebus.MbusClientProvider"); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java index d85f00a5bb2..3ee0414bf32 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/AccessControl.java @@ -51,7 +51,7 @@ public class AccessControl { private final String domain; private ClientAuthentication clientAuthentication = ClientAuthentication.need; private final Set excludeBindings = new LinkedHashSet<>(); - private Collection> handlers = Collections.emptyList(); + private Collection handlers = Collections.emptyList(); public Builder(String domain) { this.domain = domain; } @@ -79,12 +79,12 @@ public class AccessControl { public final String domain; public final ClientAuthentication clientAuthentication; private final Set excludedBindings; - private final Collection> handlers; + private final Collection handlers; private AccessControl(String domain, ClientAuthentication clientAuthentication, Set excludedBindings, - Collection> handlers) { + Collection handlers) { this.domain = domain; this.clientAuthentication = clientAuthentication; this.excludedBindings = Collections.unmodifiableSet(excludedBindings); @@ -119,7 +119,7 @@ public class AccessControl { public Set excludedBindings() { return excludedBindings; } /** all handlers (that are known by the access control components) **/ - public Collection> handlers() { return handlers; } + public Collection handlers() { return handlers; } public static boolean hasHandlerThatNeedsProtection(ApplicationContainerCluster cluster) { return cluster.getHandlers().stream() @@ -135,7 +135,7 @@ public class AccessControl { for (BindingPattern excludedBinding : excludedBindings) { http.getBindings().add(createAccessControlExcludedBinding(excludedBinding)); } - for (Handler handler : handlers) { + for (Handler handler : handlers) { if (isExcludedHandler(handler)) { for (BindingPattern binding : handler.getServerBindings()) { http.getBindings().add(createAccessControlExcludedBinding(binding)); @@ -188,9 +188,9 @@ public class AccessControl { private static Chain createChain(ComponentId id) { return new Chain<>(FilterChains.emptyChainSpec(id)); } - private static boolean isExcludedHandler(Handler handler) { return EXCLUDED_HANDLERS.contains(handler.getClassId().getName()); } + private static boolean isExcludedHandler(Handler handler) { return EXCLUDED_HANDLERS.contains(handler.getClassId().getName()); } - private static boolean hasNonMbusBinding(Handler handler) { + private static boolean hasNonMbusBinding(Handler handler) { return handler.getServerBindings().stream().anyMatch(binding -> ! binding.scheme().equals("mbus")); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/search/GUIHandler.java b/config-model/src/main/java/com/yahoo/vespa/model/container/search/GUIHandler.java index 7087cabafc1..c6b0eb28ed3 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/search/GUIHandler.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/search/GUIHandler.java @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.container.search; -import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.container.bundle.BundleInstantiationSpecification; import com.yahoo.osgi.provider.model.ComponentModel; import com.yahoo.vespa.model.container.component.Handler; @@ -10,7 +9,7 @@ import com.yahoo.vespa.model.container.component.Handler; /** * @author Henrik Høiness */ -public class GUIHandler extends Handler> { +public class GUIHandler extends Handler { public static final String BUNDLE = "container-search-gui"; public static final String CLASS = "com.yahoo.search.query.gui.GUIHandler"; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java index 1c47f1d7c9c..956d7e5c366 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java @@ -222,7 +222,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder { } if (deployState.zone().system().isPublic()) { BindingPattern bindingPattern = SystemBindingPattern.fromHttpPath("/validate-secret-store"); - Handler> handler = new Handler<>( + Handler handler = new Handler( new ComponentModel("com.yahoo.jdisc.cloud.aws.AwsParameterStoreValidationHandler", null, "jdisc-cloud-aws", null)); handler.addServerBindings(bindingPattern); cluster.addComponent(handler); @@ -897,7 +897,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder { } private void addGUIHandler(ApplicationContainerCluster cluster) { - Handler guiHandler = new GUIHandler(); + Handler guiHandler = new GUIHandler(); guiHandler.addServerBindings(SystemBindingPattern.fromHttpPath(GUIHandler.BINDING_PATH)); cluster.addComponent(guiHandler); } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java index 7bf08461df7..d50aedeafa0 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java @@ -70,7 +70,7 @@ public class MetricsProxyContainerClusterTest { @Test public void http_handlers_are_set_up() { VespaModel model = getModel(servicesWithAdminOnly(), self_hosted); - Collection> handlers = model.getAdmin().getMetricsProxyCluster().getHandlers(); + Collection handlers = model.getAdmin().getMetricsProxyCluster().getHandlers(); Collection handlerClasses = handlers.stream().map(Component::getClassId).collect(toList()); assertTrue(handlerClasses.contains(ComponentSpecification.fromString(MetricsV1Handler.class.getName()))); diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerDocumentApiBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerDocumentApiBuilderTest.java index ca0b4681e51..3cab01fd038 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerDocumentApiBuilderTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerDocumentApiBuilderTest.java @@ -30,11 +30,11 @@ import static org.junit.Assert.assertTrue; */ public class ContainerDocumentApiBuilderTest extends ContainerModelBuilderTestBase { - private Map> getHandlers(String clusterName) { + private Map getHandlers(String clusterName) { ContainerCluster cluster = (ContainerCluster) root.getChildren().get(clusterName); - Map> handlerMap = new HashMap<>(); - Collection> handlers = cluster.getHandlers(); - for (Handler handler : handlers) { + Map handlerMap = new HashMap<>(); + Collection handlers = cluster.getHandlers(); + for (Handler handler : handlers) { assertFalse(handlerMap.containsKey(handler.getComponentId().toString())); //die on overwrites handlerMap.put(handler.getComponentId().toString(), handler); } @@ -56,7 +56,7 @@ public class ContainerDocumentApiBuilderTest extends ContainerModelBuilderTestBa } private void verifyCustomBindings(String id) { - Handler handler = getHandlers("cluster1").get(id); + Handler handler = getHandlers("cluster1").get(id); assertTrue(handler.getServerBindings().contains(UserBindingPattern.fromHttpPath("/document-api/reserved-for-internal-use/feedapi"))); assertTrue(handler.getServerBindings().contains(UserBindingPattern.fromHttpPath("/document-api/reserved-for-internal-use/feedapi/"))); @@ -73,7 +73,7 @@ public class ContainerDocumentApiBuilderTest extends ContainerModelBuilderTestBa ""); createModel(root, elem); - Map> handlerMap = getHandlers("cluster1"); + Map handlerMap = getHandlers("cluster1"); assertNotNull(handlerMap.get("com.yahoo.container.handler.VipStatusHandler")); assertNotNull(handlerMap.get("com.yahoo.container.handler.observability.ApplicationStatusHandler")); @@ -110,8 +110,8 @@ public class ContainerDocumentApiBuilderTest extends ContainerModelBuilderTestBa ""); root = new MockRoot("root", new MockApplicationPackage.Builder().build()); createModel(root, elem); - Map> handlers = getHandlers("cluster1"); - Handler feedApiHandler = handlers.get("com.yahoo.vespa.http.server.FeedHandler"); + Map handlers = getHandlers("cluster1"); + Handler feedApiHandler = handlers.get("com.yahoo.vespa.http.server.FeedHandler"); Set injectedComponentIds = feedApiHandler.getInjectedComponentIds(); assertTrue(injectedComponentIds.contains("threadpool@feedapi-handler")); diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java index 4b666c87d7c..2ab81a7a4bb 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java @@ -196,10 +196,10 @@ public class ContainerModelBuilderTest extends ContainerModelBuilderTestBase { public void builtin_handlers_get_default_threadpool() { createBasicContainerModel(); - Handler h1 = getHandler("default", ApplicationStatusHandler.class.getName()); + Handler h1 = getHandler("default", ApplicationStatusHandler.class.getName()); assertTrue(h1.getInjectedComponentIds().contains("threadpool@default-handler-common")); - Handler h2 = getHandler("default", BindingsOverviewHandler.class.getName()); + Handler h2 = getHandler("default", BindingsOverviewHandler.class.getName()); assertTrue(h2.getInjectedComponentIds().contains("threadpool@default-handler-common")); } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java index aaab9118356..dc831ef863d 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java @@ -112,11 +112,11 @@ public abstract class ContainerModelBuilderTestBase { ComponentId.fromString(componentId)); } - public Handler getHandler(String clusterId, String componentId) { + public Handler getHandler(String clusterId, String componentId) { Component component = getComponent(clusterId, componentId); - if (! (component instanceof Handler)) + if (! (component instanceof Handler)) throw new RuntimeException("Component is not a handler: " + componentId); - return (Handler) component; + return (Handler) component; } void assertComponentConfigured(ApplicationContainerCluster cluster, String componentId) { diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/HandlerBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/HandlerBuilderTest.java index d450c9600ba..42cda0d8034 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/HandlerBuilderTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/HandlerBuilderTest.java @@ -96,7 +96,7 @@ public class HandlerBuilderTest extends ContainerModelBuilderTestBase { public void custom_handler_gets_default_threadpool() { createClusterWithJDiscHandler(); ApplicationContainerCluster cluster = (ApplicationContainerCluster)root.getChildren().get("default"); - Handler handler = cluster.getHandlers().stream() + Handler handler = cluster.getHandlers().stream() .filter(h -> h.getComponentId().toString().equals("discHandler")) .findAny().orElseThrow(); diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SearchBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SearchBuilderTest.java index a842431ff8b..c41373b9f85 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SearchBuilderTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/SearchBuilderTest.java @@ -53,7 +53,7 @@ public class SearchBuilderTest extends ContainerModelBuilderTestBase { ApplicationContainerCluster cluster = (ApplicationContainerCluster)root.getChildren().get("default"); GUIHandler guiHandler = null; - for (Handler handler : cluster.getHandlers()) { + for (Handler handler : cluster.getHandlers()) { if (handler instanceof GUIHandler) { guiHandler = (GUIHandler) handler; } @@ -230,7 +230,7 @@ public class SearchBuilderTest extends ContainerModelBuilderTestBase { createModel(root, clusterElem); - Handler searchHandler = getHandler("default", SearchHandler.HANDLER_CLASS); + Handler searchHandler = getHandler("default", SearchHandler.HANDLER_CLASS); assertTrue(searchHandler.getInjectedComponentIds().contains("threadpool@search-handler")); ContainerThreadpoolConfig config = root.getConfig( -- cgit v1.2.3