private static Collection<HTTPContext> getHTTPContext(ProtocolMetaData protocolMetaData) { Collection<HTTPContext> contexts = protocolMetaData.getContexts(HTTPContext.class); if (contexts != null && contexts.size() > 0) { return contexts; } else { return Collections.singleton(null); // push non-empty http contexts } }
public ModulesServletURIHandler(ModulesProtocolConfiguration config, ProtocolMetaData protocolMetaData) { super(config, getHTTPContext(protocolMetaData)); this.configuration = config; this.httpContexts = protocolMetaData.getContexts(HTTPContext.class); this.modules = protocolMetaData.getContexts(ModuleMetaData.class); }
public static DeploymentContext getDeploymentContext(ProtocolMetaData pmd) { return pmd.getContexts(DeploymentContext.class).iterator().next(); }
private HTTPContext locateNamedHttpContext(ProtocolMetaData metaData, String value) { for (HTTPContext context : metaData.getContexts(HTTPContext.class)) { if (value.equals(context.getName())) { return context; } } throw new IllegalArgumentException( "Could not find named context " + value + " in metadata. " + "Please verify your @" + TargetsContainer.class.getName() + " definition"); }
private HTTPContext locateNamedHttpContext(ProtocolMetaData metaData, String value) { for (HTTPContext context : metaData.getContexts(HTTPContext.class)) { if (value.equals(context.getName())) { return context; } } throw new IllegalArgumentException( "Could not find named context " + value + " in metadata. " + "Please verify your @" + TargetsContainer.class.getName() + " definition"); }
@Override public ServletMethodExecutor getExecutor(ServletProtocolConfiguration protocolConfiguration, ProtocolMetaData metaData, CommandCallback callback) { Collection<HTTPContext> contexts = metaData.getContexts(HTTPContext.class); if (contexts.size() == 0) { throw new IllegalArgumentException( "No " + HTTPContext.class.getName() + " found in " + ProtocolMetaData.class.getName() + ". " + "Servlet protocol can not be used"); } return new ServletMethodExecutor(protocolConfiguration, contexts, callback); }
/** * {@inheritDoc} * * @see org.jboss.arquillian.container.test.spi.client.protocol.Protocol#getExecutor(org.jboss.arquillian.container.test.spi.client.protocol.ProtocolConfiguration, * org.jboss.arquillian.container.spi.client.protocol.metadata.ProtocolMetaData, * org.jboss.arquillian.container.test.spi.command.CommandCallback) */ @Override public ContainerMethodExecutor getExecutor(final DaemonProtocolConfiguration protocolConfiguration, final ProtocolMetaData metaData, final CommandCallback callback) { final Collection<DeploymentContext> contexts = metaData.getContexts(DeploymentContext.class); assert contexts.size() == 1 : "Should be exactly one deployment context"; final DeploymentContext context = contexts.iterator().next(); return new DaemonMethodExecutor(context); }
/** * {@inheritDoc} * * @see org.jboss.arquillian.container.test.spi.client.protocol.Protocol#getExecutor(org.jboss.arquillian.container.test.spi.client.protocol.ProtocolConfiguration, * org.jboss.arquillian.container.spi.client.protocol.metadata.ProtocolMetaData, * org.jboss.arquillian.container.test.spi.command.CommandCallback) */ @Override public ContainerMethodExecutor getExecutor(final DaemonProtocolConfiguration protocolConfiguration, final ProtocolMetaData metaData, final CommandCallback callback) { final Collection<DeploymentContext> contexts = metaData.getContexts(DeploymentContext.class); assert contexts.size() == 1 : "Should be exactly one deployment context"; final DeploymentContext context = contexts.iterator().next(); return new DaemonMethodExecutor(context); }
@Override public ContainerMethodExecutor getExecutor(ForgeProtocolConfiguration protocolConfiguration, ProtocolMetaData metaData, CommandCallback callback) { if (metaData == null) { return new ContainerMethodExecutor() { @Override public TestResult invoke(TestMethodExecutor arg0) { return new TestResult(Status.SKIPPED); } }; } Collection<Forge> contexts = metaData.getContexts(Forge.class); if (contexts.size() == 0) { throw new IllegalArgumentException( "No " + Forge.class.getName() + " found in " + ProtocolMetaData.class.getName() + ". " + "Forge protocol can not be used"); } return new ForgeTestMethodExecutor(protocolConfiguration, contexts.iterator().next()); }
@Override public ContainerMethodExecutor getExecutor(ForgeProtocolConfiguration protocolConfiguration, ProtocolMetaData metaData, CommandCallback callback) { if (metaData == null) { return new ContainerMethodExecutor() { @Override public TestResult invoke(TestMethodExecutor arg0) { return new TestResult(Status.SKIPPED); } }; } Collection<Furnace> contexts = metaData.getContexts(Furnace.class); if (contexts.size() == 0) { throw new IllegalArgumentException( "No " + Furnace.class.getName() + " found in " + ProtocolMetaData.class.getName() + ". " + "Furnace protocol can not be used"); } return new ForgeTestMethodExecutor(protocolConfiguration, contexts.iterator().next()); }
public URL getContextRoot(Method testMethod) { ProtocolMetaData protocolMetadata = protocolMetadataInst.get(); if (protocolMetadata == null) { return null; } Collection<HTTPContext> contexts = protocolMetadata.getContexts(HTTPContext.class); HTTPContext context = locateHTTPContext(testMethod, contexts); URL servletURL = locateCommandEventBusURI(context); return servletURL; }
public URL getContextRoot(Method testMethod) { ProtocolMetaData protocolMetadata = protocolMetadataInst.get(); if (protocolMetadata == null) { return null; } Collection<HTTPContext> contexts = protocolMetadata.getContexts(HTTPContext.class); HTTPContext context = locateHTTPContext(testMethod, contexts); URL servletURL = locateCommandEventBusURI(context); return servletURL; }
private URI locateAuthURI(ProtocolMetaData data) { Collection<HTTPContext> contexts = data.getContexts(HTTPContext.class); if(contexts == null || contexts.size() == 0 || contexts.size() > 1) { throw new RuntimeException("Could not determine auth URL: " + contexts); } HTTPContext context = contexts.iterator().next(); return URI.create(context.getServlets().get(0).getBaseURI()+ "auth"); }
Collection<HTTPContext> contexts = protocolMetadata.get().getContexts(HTTPContext.class);
context = locateNamedHttpContext(metaData, targets.value()); } else { context = metaData.getContexts(HTTPContext.class).iterator().next();
context = locateNamedHttpContext(metaData, targets.value()); } else { context = metaData.getContexts(HTTPContext.class).iterator().next();
@Test // equal ports, different ip public void shouldUpdateWithIPFromDocker() throws Exception { Binding binding = new Binding(GATEWAY_IP); binding.addPortBinding(EXPOSED_PORT, EXPOSED_PORT); Mockito.when(cube.getMetadata(HasPortBindings.class)).thenReturn(new TestPortBindings(binding)); bind(ContainerScoped.class, Container.class, new ContainerImpl(CUBE_CONTAINER_NAME, deployableContainer, new ContainerDefImpl("arquillian.xml"))); ProtocolMetaData metadata = new ProtocolMetaData(); metadata.addContext(new HTTPContext(LOCALHOST, EXPOSED_PORT).add(new Servlet("A", "B"))); bind(DeploymentScoped.class, ProtocolMetaData.class, metadata); fire(metadata); ProtocolMetaData updated = getManager().getContext(DeploymentContext.class) .getObjectStore().get(ProtocolMetaData.class); Assert.assertEquals(EXPOSED_PORT.intValue(), updated.getContexts(HTTPContext.class).iterator().next().getPort()); Assert.assertEquals(GATEWAY_IP, updated.getContexts(HTTPContext.class).iterator().next().getHost()); assertEventFired(ProtocolMetaData.class, 1); // twice, but original fire is intercepted and never hit the Counter }
@Test public void shouldNotUpdateIfContainerNotMapped() throws Exception { Binding binding = new Binding(GATEWAY_IP); binding.addPortBinding(EXPOSED_PORT, EXPOSED_PORT); Mockito.when(cube.getMetadata(HasPortBindings.class)).thenReturn(new TestPortBindings(binding)); bind(ContainerScoped.class, Container.class, new ContainerImpl("_UNMAPPED_", deployableContainer, new ContainerDefImpl("arquillian.xml"))); ProtocolMetaData metadata = new ProtocolMetaData(); metadata.addContext(new HTTPContext(LOCALHOST, EXPOSED_PORT).add(new Servlet("A", "B"))); bind(DeploymentScoped.class, ProtocolMetaData.class, metadata); fire(metadata); ProtocolMetaData updated = getManager().getContext(DeploymentContext.class) .getObjectStore().get(ProtocolMetaData.class); Assert.assertEquals(metadata.getContexts(HTTPContext.class).iterator().next(), updated.getContexts(HTTPContext.class).iterator().next()); assertEventFired(ProtocolMetaData.class, 1); } }
@Test // equal ip, different ports public void shouldUpdateWithPortFromDocker() throws Exception { Binding binding = new Binding(LOCALHOST); binding.addPortBinding(EXPOSED_PORT, BOUND_PORT); Mockito.when(cube.getMetadata(HasPortBindings.class)).thenReturn(new TestPortBindings(binding)); bind(ContainerScoped.class, Container.class, new ContainerImpl(CUBE_CONTAINER_NAME, deployableContainer, new ContainerDefImpl("arquillian.xml"))); ProtocolMetaData metadata = new ProtocolMetaData(); metadata.addContext(new HTTPContext(LOCALHOST, EXPOSED_PORT).add(new Servlet("A", "B"))); bind(DeploymentScoped.class, ProtocolMetaData.class, metadata); fire(metadata); ProtocolMetaData updated = getManager().getContext(DeploymentContext.class) .getObjectStore().get(ProtocolMetaData.class); Assert.assertEquals(BOUND_PORT.intValue(), updated.getContexts(HTTPContext.class).iterator().next().getPort()); Assert.assertEquals(LOCALHOST, updated.getContexts(HTTPContext.class).iterator().next().getHost()); assertEventFired(ProtocolMetaData.class, 1); // twice, but original fire is intercepted and never hit the Counter }
return; for (Object contextObj : originalMetaData.getContexts()) { if (contextObj instanceof HTTPContext) { HTTPContext context = (HTTPContext) contextObj;