private static void bindUri(BindingRepository<RequestHandler> bindings, List<String> uriPatterns, RequestHandler target) { for (String uri : uriPatterns) { bindings.bind(uri, target); } }
public Map<String, BindingSet<RequestHandler>> activateServerBindings() { Map<String, BindingSet<RequestHandler>> ret = new HashMap<>(); for (Map.Entry<String, BindingRepository<RequestHandler>> entry : serverBindings.entrySet()) { ret.put(entry.getKey(), entry.getValue().activate()); } return ImmutableMap.copyOf(ret); }
/** * <p>Convenient method for calling {@link #put(UriPattern, Object)} for all entries in a collection of * bindings.</p> * * @param bindings The collection of bindings to copy to this. * @throws NullPointerException If argument is null or contains null. */ public void putAll(Iterable<Map.Entry<UriPattern, T>> bindings) { for (Map.Entry<UriPattern, T> entry : bindings) { put(entry.getKey(), entry.getValue()); } }
public BindingRepository<RequestHandler> clientBindings(String setName) { BindingRepository<RequestHandler> ret = clientBindings.get(setName); if (ret == null) { ret = new BindingRepository<>(); clientBindings.put(setName, ret); } return ret; }
public BindingRepository<RequestHandler> serverBindings(String setName) { BindingRepository<RequestHandler> ret = serverBindings.get(setName); if (ret == null) { ret = new BindingRepository<>(); serverBindings.put(setName, ret); } return ret; }
/** * <p>Convenient method for calling {@link #bind(String, Object)} for all entries in a collection of bindings.</p> * * @param bindings The collection of bindings to copy to this. * @throws NullPointerException If argument is null or contains null. */ public void bindAll(Map<String, T> bindings) { for (Map.Entry<String, T> entry : bindings.entrySet()) { bind(entry.getKey(), entry.getValue()); } }
public Map<String, BindingSet<RequestHandler>> activateClientBindings() { Map<String, BindingSet<RequestHandler>> ret = new HashMap<>(); for (Map.Entry<String, BindingRepository<RequestHandler>> entry : clientBindings.entrySet()) { ret.put(entry.getKey(), entry.getValue().activate()); } return ImmutableMap.copyOf(ret); }
private void addFilter(Object filter, String binding) { if (filter instanceof RequestFilter && filter instanceof ResponseFilter) { throw new RuntimeException("The filter " + filter.getClass().getName() + " is unsupported since it's both a RequestFilter and a ResponseFilter."); } else if (filter instanceof RequestFilter) { requestFilters.put(new UriPattern(binding), (RequestFilter) filter); } else if (filter instanceof ResponseFilter) { responseFilters.put(new UriPattern(binding), (ResponseFilter) filter); } else { throw new RuntimeException("Unknown filter type " + filter.getClass().getName()); } }
public ContainerBuilder(Iterable<Module> guiceModules) { this.guiceModules.installAll(guiceModules); this.guiceModules.install(new AbstractModule() { @Override public void configure() { bind(ContainerBuilder.class).toInstance(ContainerBuilder.this); } }); this.serverBindings.put(BindingSet.DEFAULT, new BindingRepository<RequestHandler>()); this.clientBindings.put(BindingSet.DEFAULT, new BindingRepository<RequestHandler>()); }
private void configureLegacyFilters(ComponentId id, ComponentRegistry<SecurityRequestFilter> legacyRequestFilters) { ComponentId serverName = id.getNamespace(); if (SEARCH_SERVER_COMPONENT_ID.equals(serverName) && !legacyRequestFilters.allComponents().isEmpty()) { requestFilters.bind("http://*/*", SecurityRequestFilterChain.newInstance(legacyRequestFilters.allComponents())); } }
/** * <p>Creates a {@link UriPattern} from the given pattern string, and calls {@link #put(UriPattern, Object)}.</p> * * @param uriPattern The URI pattern to parse and bind to the target. * @param target The target to assign to the URI pattern. * @throws NullPointerException If any argument is null. * @throws IllegalArgumentException If the URI pattern string could not be parsed. */ public void bind(String uriPattern, T target) { put(new UriPattern(uriPattern), target); }
public RequestHandlerTestDriver(String binding, RequestHandler handler) { driver = TestDriver.newSimpleApplicationInstanceWithoutOsgi(); ContainerBuilder builder = driver.newContainerBuilder(); builder.serverBindings().bind(binding, handler); driver.activateContainer(builder); }
final TestDriver driver = TestDriver.newSimpleApplicationInstance(config); final ContainerBuilder builder = driver.newContainerBuilder(); builder.serverBindings().bind(builder.getInstance(Key.get(String.class, Names.named("serverBinding"))), requestHandler); final T serverProvider = builder.guiceModules().getInstance(adapter.getServerProviderClass());
private ClientTestDriver(RemoteServer server, Protocol protocol) { this.server = server; MessageBusParams mbusParams = new MessageBusParams().addProtocol(protocol); RPCNetworkParams netParams = new RPCNetworkParams().setSlobrokConfigId(server.slobrokId()); SharedMessageBus mbus = SharedMessageBus.newInstance(mbusParams, netParams); session = mbus.newSourceSession(new SourceSessionParams()); client = new MbusClient(session); client.start(); mbus.release(); driver = TestDriver.newSimpleApplicationInstanceWithoutOsgi(); ContainerBuilder builder = driver.newContainerBuilder(); builder.clientBindings().bind("mbus://*/*", client); driver.activateContainer(builder); }
private ServerTestDriver(RemoteClient client, boolean activateContainer, RequestHandler requestHandler, Protocol protocol, Module... guiceModules) { this.client = client; driver = TestDriver.newSimpleApplicationInstanceWithoutOsgi(guiceModules); if (activateContainer) { ContainerBuilder builder = driver.newContainerBuilder(); if (requestHandler != null) { builder.serverBindings().bind("mbus://*/*", requestHandler); } driver.activateContainer(builder); } MessageBusParams mbusParams = new MessageBusParams().addProtocol(protocol); RPCNetworkParams netParams = new RPCNetworkParams().setSlobrokConfigId(client.slobrokId()); SharedMessageBus mbus = SharedMessageBus.newInstance(mbusParams, netParams); ServerSession session = mbus.newDestinationSession(new DestinationSessionParams()); server = new MbusServer(driver, session); server.start(); session.release(); mbus.release(); }