View Javadoc

1   /*
2    * $Id: SecurityFilter.java 21020 2011-01-14 08:13:37Z dirk.olmes $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  /*
12   * $Id: SecurityFilter.java 21020 2011-01-14 08:13:37Z dirk.olmes $
13   * --------------------------------------------------------------------------------------
14   * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
15   *
16   * The software in this package is published under the terms of the CPAL v1.0
17   * license, a copy of which has been included with this distribution in the
18   * LICENSE.txt file.
19   */
20  package org.mule.api.security;
21  
22  import org.mule.api.MuleEvent;
23  import org.mule.api.lifecycle.Initialisable;
24  import org.mule.api.lifecycle.InitialisationException;
25  
26  /**
27   * <code>SecurityFilter</code> is a base filter for secure filtering of
28   * inbound and outbound event flow.
29   */
30  public interface SecurityFilter extends Initialisable
31  {
32      /**
33       * @param manager
34       */
35      void setSecurityManager(SecurityManager manager);
36  
37      SecurityManager getSecurityManager();
38  
39      String getSecurityProviders();
40  
41      void setSecurityProviders(String providers);
42      
43      void doFilter(MuleEvent event)
44              throws SecurityException, UnknownAuthenticationTypeException, CryptoFailureException,
45              SecurityProviderNotFoundException, EncryptionStrategyNotFoundException, InitialisationException;
46  }