/* * Copyright (c) 2015 Brocade Communications Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.aaa.shiro.filters; import org.apache.shiro.web.servlet.ShiroFilter; import org.opendaylight.aaa.shiro.ServiceProxy; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * The RESTCONF AAA JAX-RS 1.X Web Filter. This class is also responsible for * delivering debug information; to enable these debug statements, please issue * the following in the karaf shell: * * log:set debug org.opendaylight.aaa.shiro.filters.AAAFilter * * @author Ryan Goulding (ryandgoulding@gmail.com) * @see javax.servlet.Filter * @see org.apache.shiro.web.servlet.ShiroFilter */ public class AAAFilter extends ShiroFilter { private static final Logger LOG = LoggerFactory.getLogger(AAAFilter.class); public AAAFilter() { super(); final String DEBUG_MESSAGE = "Creating the AAAFilter"; LOG.debug(DEBUG_MESSAGE); } /* * (non-Javadoc) * * Adds context clues that aid in debugging. Also initializes the enable * status to correspond with * ServiceProxy.getInstance.getEnabled(). * * @see org.apache.shiro.web.servlet.ShiroFilter#init() */ @Override public void init() throws Exception { super.init(); final String DEBUG_MESSAGE = "Initializing the AAAFilter"; LOG.debug(DEBUG_MESSAGE); // sets the filter to the startup value. Because of non-determinism in // bundle loading, this passes an instance of itself along so that if // the // enable status changes, then AAAFilter enable status is changed. setEnabled(ServiceProxy.getInstance().getEnabled(this)); } /* * (non-Javadoc) * * Adds context clues to aid in debugging whether the filter is enabled. * * @see * org.apache.shiro.web.servlet.OncePerRequestFilter#setEnabled(boolean) */ @Override public void setEnabled(boolean enabled) { super.setEnabled(enabled); final String DEBUG_MESSAGE = "Setting AAAFilter enabled to " + enabled; LOG.debug(DEBUG_MESSAGE); } }