1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.directwebremoting.guice;
17
18 import java.lang.annotation.ElementType;
19 import java.lang.annotation.Retention;
20 import java.lang.annotation.RetentionPolicy;
21 import java.lang.annotation.Target;
22 import com.google.inject.ScopeAnnotation;
23
24 /**
25 * Marks classes for which there should be one instance per web application
26 * (i.e., per servlet context) and these instances should be created eagerly
27 * at servlet {@code init()} and closed (when they implement {@code Closeable})
28 * at servlet {@code destroy()}.
29 * @author Tim Peierls [tim at peierls dot net]
30 */
31 @Target(ElementType.TYPE)
32 @Retention(RetentionPolicy.RUNTIME)
33 @ScopeAnnotation
34 public @interface ApplicationScoped
35 {
36 }