Search in sources :

Example 51 with Router

use of com.predic8.membrane.core.Router in project service-proxy by membrane.

the class OAuth2AuthorizationServerInterceptorBase method setUp.

@Before
public void setUp() throws Exception {
    router = new HttpRouter();
    initOasi();
    initMas();
    initLoginMockParametersForJohn();
}
Also used : HttpRouter(com.predic8.membrane.core.HttpRouter) Before(org.junit.Before)

Example 52 with Router

use of com.predic8.membrane.core.Router in project service-proxy by membrane.

the class OAuth2AuthorizationServerInterceptorBase method initMas.

private void initMas() throws Exception {
    mas = new MembraneAuthorizationService();
    mas.setClientId("abc");
    mas.setClientSecret("def");
    mas.setSrc(System.getProperty("user.dir") + "\\src\\test\\resources\\oauth2");
    mas.init(router);
}
Also used : MembraneAuthorizationService(com.predic8.membrane.core.interceptor.oauth2.authorizationservice.MembraneAuthorizationService)

Example 53 with Router

use of com.predic8.membrane.core.Router in project service-proxy by membrane.

the class AbortExchangeTest method setup.

@Before
public void setup() throws Exception {
    router = new HttpRouter();
    LimitedMemoryExchangeStore es = new LimitedMemoryExchangeStore();
    router.setExchangeStore(es);
    router.getTransport().getInterceptors().add(2, new ExchangeStoreInterceptor(es));
    ServiceProxy sp2 = new ServiceProxy(new ServiceProxyKey("*", "*", ".*", 3031), "", -1);
    sp2.getInterceptors().add(new AbstractInterceptor() {

        @Override
        public Outcome handleRequest(Exchange exc) throws Exception {
            exc.getRequest().readBody();
            exc.setResponse(Response.ok("").body(new InputStream() {

                int l = 0;

                @Override
                public int read() throws IOException {
                    if (l >= 2000000)
                        return -1;
                    return 0;
                }
            }, true).build());
            return Outcome.RETURN;
        }
    });
    router.getRuleManager().addProxyAndOpenPortIfNew(sp2);
    router.init();
}
Also used : AbstractExchange(com.predic8.membrane.core.exchange.AbstractExchange) Exchange(com.predic8.membrane.core.exchange.Exchange) ServiceProxyKey(com.predic8.membrane.core.rules.ServiceProxyKey) ServiceProxy(com.predic8.membrane.core.rules.ServiceProxy) Outcome(com.predic8.membrane.core.interceptor.Outcome) InputStream(java.io.InputStream) AbstractInterceptor(com.predic8.membrane.core.interceptor.AbstractInterceptor) ExchangeStoreInterceptor(com.predic8.membrane.core.interceptor.ExchangeStoreInterceptor) HttpRouter(com.predic8.membrane.core.HttpRouter) IOException(java.io.IOException) Before(org.junit.Before)

Example 54 with Router

use of com.predic8.membrane.core.Router in project service-proxy by membrane.

the class RuleManagerTest method setUp.

@Before
public void setUp() throws Exception {
    manager = new RuleManager();
    MockRouter router = new MockRouter();
    manager.setRouter(router);
    proxy3013 = new ProxyRule(new ProxyRuleKey(3013));
    manager.addProxyAndOpenPortIfNew(proxy3013);
    forwardBlz = new ServiceProxy(new ServiceProxyKey("localhost", "*", ".*", 3014), "thomas-bayer.com", 80);
    forwardBlz.init(router);
    forwardBlzPOST = new ServiceProxy(new ServiceProxyKey("localhost", "POST", ".*", 3015), "thomas-bayer.com", 80);
    forwardBlzPOST.init(router);
    manager.addProxyAndOpenPortIfNew(forwardBlz);
    manager.addProxyAndOpenPortIfNew(forwardBlzPOST);
}
Also used : ServiceProxyKey(com.predic8.membrane.core.rules.ServiceProxyKey) ServiceProxy(com.predic8.membrane.core.rules.ServiceProxy) ProxyRule(com.predic8.membrane.core.rules.ProxyRule) ProxyRuleKey(com.predic8.membrane.core.rules.ProxyRuleKey) Before(org.junit.Before)

Example 55 with Router

use of com.predic8.membrane.core.Router in project service-proxy by membrane.

the class DynamicAdminPageInterceptor method handleNodeShowRequest.

@Mapping("/admin/node/show/?(\\?.*)?")
public Response handleNodeShowRequest(final Map<String, String> params, String relativeRootPath) throws Exception {
    StringWriter writer = new StringWriter();
    return respond(new AdminPageBuilder(writer, router, relativeRootPath, params, readOnly) {

        @Override
        protected int getSelectedTab() {
            return TAB_ID_LOAD_BALANCING;
        }

        @Override
        protected void createTabContent() throws Exception {
            String balancer = getBalancerParam(params);
            h2().text("Node " + params.get("host") + ":" + params.get("port") + " (" + "Cluster " + params.get("cluster") + " of Balancer " + balancer + ")").end();
            h3().text("Status Codes").end();
            Node n = BalancerUtil.lookupBalancer(router, balancer).getNode(params.get("cluster"), params.get("host"), Integer.parseInt(params.get("port")));
            createStatusCodesTable(n.getStatisticsByStatusCodes());
            p().text("Total requests: " + n.getCounter()).end();
            p().text("Current threads: " + n.getThreads()).end();
            p().text("Requests without responses: " + n.getLost()).end();
            span().classAttr("mb-button");
            createLink("Reset Counter", "node", "reset", createQueryString("balancer", balancer, "cluster", params.get("cluster"), "host", n.getHost(), "port", "" + n.getPort()));
            end();
            span().classAttr("mb-button");
            createLink("Show Sessions", "node", "sessions", createQueryString("balancer", balancer, "cluster", params.get("cluster"), "host", n.getHost(), "port", "" + n.getPort()));
            end();
        }
    }.createPage());
}
Also used : StringWriter(java.io.StringWriter) Node(com.predic8.membrane.core.interceptor.balancer.Node) URLParamUtil.createQueryString(com.predic8.membrane.core.util.URLParamUtil.createQueryString)

Aggregations

HttpRouter (com.predic8.membrane.core.HttpRouter)24 ServiceProxy (com.predic8.membrane.core.rules.ServiceProxy)21 ServiceProxyKey (com.predic8.membrane.core.rules.ServiceProxyKey)19 Before (org.junit.Before)18 Rule (com.predic8.membrane.core.rules.Rule)16 IOException (java.io.IOException)9 Router (com.predic8.membrane.core.Router)8 Exchange (com.predic8.membrane.core.exchange.Exchange)6 AbstractInterceptor (com.predic8.membrane.core.interceptor.AbstractInterceptor)5 Outcome (com.predic8.membrane.core.interceptor.Outcome)5 ProxyRule (com.predic8.membrane.core.rules.ProxyRule)5 StringWriter (java.io.StringWriter)5 Test (org.junit.Test)5 Interceptor (com.predic8.membrane.core.interceptor.Interceptor)3 Node (com.predic8.membrane.core.interceptor.balancer.Node)3 Mapping (com.predic8.membrane.core.interceptor.rewrite.RewriteInterceptor.Mapping)3 AbstractServiceProxy (com.predic8.membrane.core.rules.AbstractServiceProxy)3 ProxyRuleKey (com.predic8.membrane.core.rules.ProxyRuleKey)3 HttpClientConfiguration (com.predic8.membrane.core.transport.http.client.HttpClientConfiguration)3 File (java.io.File)3