@Deprecated
    public ZuulFilter<?, ?> getFilter(String sourceCode, String filterName) throws Exception {
        if (filterCheck.get(filterName) == null) {
            filterCheck.putIfAbsent(filterName, filterName);
            if (!sourceCode.equals(filterClassCode.get(filterName))) {
                if (filterRegistry.isMutable()) {
                    LOG.info("reloading code {}", filterName);
                    filterRegistry.remove(filterName);
                } else {
                    LOG.warn("Filter registry is not mutable, discarding {}", filterName);
                }
            }
        }
        ZuulFilter<?, ?> filter = filterRegistry.get(filterName);
        if (filter == null) {
            Class<?> clazz = compiler.compile(sourceCode, filterName);
            if (!Modifier.isAbstract(clazz.getModifiers())) {
                filter = filterFactory.newInstance(clazz);
            }
        }
        return filter;
    }
@Test
    void testGetFilterFromString() throws Exception {
        String string = "";
        doReturn(TestZuulFilter.class).when(compiler).compile(string, string);
        ZuulFilter filter = loader.getFilter(string, string);

        assertNotNull(filter);
        assertEquals(TestZuulFilter.class, filter.getClass());
        //            assertTrue(loader.filterInstanceMapSize() == 1);
    }