View Javadoc

1   package com.atlassian.plugins.rest.common.sal.websudo;
2   
3   import static com.google.common.base.Preconditions.checkNotNull;
4   
5   import com.sun.jersey.api.model.AbstractMethod;
6   import com.sun.jersey.spi.container.ResourceFilter;
7   import com.sun.jersey.spi.container.ResourceFilterFactory;
8   
9   import javax.ws.rs.ext.Provider;
10  import java.util.Collections;
11  import java.util.List;
12  
13  /**
14   * A {@link com.sun.jersey.spi.container.ResourceFilterFactory} that checks whether the client is authenticated or not.
15   *
16   * @see WebSudoResourceFilter
17   */
18  @Provider
19  public class WebSudoResourceFilterFactory implements ResourceFilterFactory {
20      private final WebSudoResourceContext authenticationContext;
21  
22      public WebSudoResourceFilterFactory(final WebSudoResourceContext authenticationContext) {
23          this.authenticationContext = checkNotNull(authenticationContext);
24      }
25  
26      public List<ResourceFilter> create(final AbstractMethod abstractMethod) {
27          return Collections.<ResourceFilter>singletonList(new WebSudoResourceFilter(abstractMethod, authenticationContext));
28      }
29  }