public static void remove() {
        final Map<String, RequestContext> contextMap = THREAD_LOCAL_CONTEXT_MAP.get();
        if (contextMap != null) {
            contextMap.clear();
            THREAD_LOCAL_CONTEXT_MAP.remove();
        }
    }
@Test
    public void remove() throws NoSuchFieldException, IllegalAccessException {
        ChainContext.getThreadLocalContext("test");
        ChainContext.remove();
        final Field mapField = ChainContext.class.getDeclaredField("THREAD_LOCAL_CONTEXT_MAP");
        mapField.setAccessible(true);
        final Object local = mapField.get(null);
        Assert.assertTrue(local instanceof ThreadLocal);
        assertNull(((ThreadLocal<?>) local).get());

    }