AbstractFilter implements Filter { @Override public final void init(FilterConfig config) throws ServletException { Preconditions.checkNotNull(config); disabled = Settings.get(boolean.class, DISABLE_FILTER_SETTING_PREFIX + getClass().getName()); filterConfig = config; servletContext = config.getServletContext(); try { doInit(); } catch (Exception error) { Throwables.propagateIfInstanceOf(error, ServletException.class); throw Throwables.propagate(error); } LOGGER.debug("Initialized [{}]", getClass().getName()); }  FilterConfig getFilterConfig(); ServletContext getServletContext(); @Override final void init(FilterConfig config); @Override final void destroy(); @Override final void doFilter(
            ServletRequest request,
            ServletResponse response,
            FilterChain chain); static final String DISABLE_FILTER_SETTING_PREFIX; }
@Test(expected = NullPointerException.class) public void initNull() throws ServletException { AbstractFilter filter = createNoOverridesFilter(); filter.init(null); }