1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.neo4j.server.database;
21
22 import com.sun.jersey.core.spi.component.ComponentContext;
23 import com.sun.jersey.core.spi.component.ComponentScope;
24 import com.sun.jersey.server.impl.inject.AbstractHttpContextInjectable;
25 import com.sun.jersey.spi.inject.Injectable;
26 import com.sun.jersey.spi.inject.InjectableProvider;
27
28 import javax.ws.rs.core.Context;
29
30 public abstract class AbstractInjectableProvider<E>
31 extends AbstractHttpContextInjectable<E>
32 implements InjectableProvider<Context, Class<E>>
33 {
34 private final Class<E> t;
35
36 public AbstractInjectableProvider(Class<E> t) {
37 this.t = t;
38 }
39
40 public Injectable<E> getInjectable( ComponentContext ic, Context a, Class<E> c) {
41 if (c.equals(t)) {
42 return getInjectable( );
43 }
44
45 return null;
46 }
47
48 public Injectable<E> getInjectable( ) {
49 return this;
50 }
51
52 public ComponentScope getScope() {
53 return ComponentScope.PerRequest;
54 }
55 }