@Override
    public ExecuteContext before(ExecuteContext context) {
        init();
        Object[] arguments = context.getArguments();
        URI uri = (URI) context.getArguments()[1];
        if (!PlugEffectWhiteBlackUtils.isHostEqualRealmName(uri.getHost())) {
            return context;
        }
        Map<String, String> hostAndPath = RequestInterceptorUtils.recoverHostAndPath(uri.getPath());
        if (!PlugEffectWhiteBlackUtils.isPlugEffect(hostAndPath.get(HttpConstants.HTTP_URI_SERVICE))) {
            return context;
        }
        context.skip(new JettyClientWrapper((HttpClient) context.getObject(), (HttpConversation) arguments[0], uri));
        return context;
    }
@Test
    public void test() {
        // The domain name does not match
        arguments[1] = URI.create("http://www.domain1.com/foo/hello");
        interceptor.before(context);
        Assert.assertFalse(context.isSkip());

        // The name of the service does not match
        arguments[1] = URI.create("http://www.domain.com/bar/hello");
        interceptor.before(context);
        Assert.assertFalse(context.isSkip());

        arguments[1] = URI.create("http://www.domain.com/foo/hello");
        interceptor.before(context);
        Assert.assertTrue(context.isSkip());
        Assert.assertTrue(context.getResult() instanceof JettyClientWrapper);
    }