blob: 5874586477a9b7d7b32dcd1f9fc0de5ff66007f1 [file] [log] [blame]
limpbizkitad520b62009-05-20 00:10:03 +00001<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
2<!-- Generated by the JDiff Javadoc doclet -->
3<!-- (http://www.jdiff.org) -->
4<!-- on Tue May 19 17:01:51 PDT 2009 -->
5
6<api
7 xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
8 xsi:noNamespaceSchemaLocation='api.xsd'
9 name="1.0"
10 jdversion="1.1.1">
11
12<!-- Command line arguments = -doclet jdiff.JDiff -docletpath /Applications/bin/jdiff-1.1.1/jdiff.jar:/Applications/bin/jdiff-1.1.1/xerces.jar -d /Users/jessewilson/Guice/guice-everything/api-diffs -classpath /usr/share/ant/lib/ant-launcher.jar:/usr/share/ant/lib/ant-jai.jar:/usr/share/ant/lib/ant-jmf.jar:/usr/share/ant/lib/ant-junit.jar:/usr/share/ant/lib/ant-nodeps.jar:/usr/share/ant/lib/ant-swing.jar:/usr/share/ant/lib/ant-testutil.jar:/usr/share/ant/lib/ant-trax.jar:/usr/share/ant/lib/ant.jar:/usr/share/ant/lib/junit.jar:/usr/share/ant/lib/xercesImpl.jar:/usr/share/ant/lib/xml-apis.jar -sourcepath /Users/jessewilson/Guice/guice-everything/tags/1.0/src:/Users/jessewilson/Guice/guice-everything/tags/1.0/servlet/src:/Users/jessewilson/Guice/guice-everything/tags/1.0/spring/src:/Users/jessewilson/Guice/guice-everything/tags/1.0/struts2/plugin/src -apiname 1.0 -baseURI http://www.w3.org -apidir /Users/jessewilson/Guice/guice-everything/api-diffs -source 1.5 -->
13<package name="com.google.inject">
14 <!-- start class com.google.inject.AbstractModule -->
15 <class name="AbstractModule" extends="java.lang.Object"
16 abstract="true"
17 static="false" final="false" visibility="public"
18 deprecated="not deprecated">
19 <implements name="com.google.inject.Module"/>
20 <constructor name="AbstractModule"
21 static="false" final="false" visibility="public"
22 deprecated="not deprecated">
23 </constructor>
24 <method name="configure"
25 abstract="false" native="false" synchronized="true"
26 static="false" final="true" visibility="public"
27 deprecated="not deprecated">
28 <param name="builder" type="com.google.inject.Binder"/>
29 </method>
30 <method name="configure"
31 abstract="true" native="false" synchronized="false"
32 static="false" final="false" visibility="protected"
33 deprecated="not deprecated">
34 <doc>
35 <![CDATA[Configures a {@link Binder} via the exposed methods.]]>
36 </doc>
37 </method>
38 <method name="binder" return="com.google.inject.Binder"
39 abstract="false" native="false" synchronized="false"
40 static="false" final="false" visibility="protected"
41 deprecated="not deprecated">
42 <doc>
43 <![CDATA[Gets direct access to the underlying {@code Binder}.]]>
44 </doc>
45 </method>
46 <method name="bindScope"
47 abstract="false" native="false" synchronized="false"
48 static="false" final="false" visibility="protected"
49 deprecated="not deprecated">
50 <param name="scopeAnnotation" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
51 <param name="scope" type="com.google.inject.Scope"/>
52 <doc>
53 <![CDATA[@see Binder#bindScope(Class, Scope)]]>
54 </doc>
55 </method>
56 <method name="bind" return="com.google.inject.binder.LinkedBindingBuilder&lt;T&gt;"
57 abstract="false" native="false" synchronized="false"
58 static="false" final="false" visibility="protected"
59 deprecated="not deprecated">
60 <param name="key" type="com.google.inject.Key&lt;T&gt;"/>
61 <doc>
62 <![CDATA[@see Binder#bind(Key)]]>
63 </doc>
64 </method>
65 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder&lt;T&gt;"
66 abstract="false" native="false" synchronized="false"
67 static="false" final="false" visibility="protected"
68 deprecated="not deprecated">
69 <param name="typeLiteral" type="com.google.inject.TypeLiteral&lt;T&gt;"/>
70 <doc>
71 <![CDATA[@see Binder#bind(TypeLiteral)]]>
72 </doc>
73 </method>
74 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder&lt;T&gt;"
75 abstract="false" native="false" synchronized="false"
76 static="false" final="false" visibility="protected"
77 deprecated="not deprecated">
78 <param name="clazz" type="java.lang.Class&lt;T&gt;"/>
79 <doc>
80 <![CDATA[@see Binder#bind(Class)]]>
81 </doc>
82 </method>
83 <method name="bindConstant" return="com.google.inject.binder.AnnotatedConstantBindingBuilder"
84 abstract="false" native="false" synchronized="false"
85 static="false" final="false" visibility="protected"
86 deprecated="not deprecated">
87 <doc>
88 <![CDATA[@see Binder#bindConstant()]]>
89 </doc>
90 </method>
91 <method name="install"
92 abstract="false" native="false" synchronized="false"
93 static="false" final="false" visibility="protected"
94 deprecated="not deprecated">
95 <param name="module" type="com.google.inject.Module"/>
96 <doc>
97 <![CDATA[@see Binder#install(Module)]]>
98 </doc>
99 </method>
100 <method name="addError"
101 abstract="false" native="false" synchronized="false"
102 static="false" final="false" visibility="protected"
103 deprecated="not deprecated">
104 <param name="message" type="java.lang.String"/>
105 <param name="arguments" type="java.lang.Object[]"/>
106 <doc>
107 <![CDATA[@see Binder#addError(String, Object[])]]>
108 </doc>
109 </method>
110 <method name="addError"
111 abstract="false" native="false" synchronized="false"
112 static="false" final="false" visibility="protected"
113 deprecated="not deprecated">
114 <param name="t" type="java.lang.Throwable"/>
115 <doc>
116 <![CDATA[@see Binder#addError(Throwable)]]>
117 </doc>
118 </method>
119 <method name="requestStaticInjection"
120 abstract="false" native="false" synchronized="false"
121 static="false" final="false" visibility="protected"
122 deprecated="not deprecated">
123 <param name="types" type="java.lang.Class[]"/>
124 <doc>
125 <![CDATA[@see Binder#requestStaticInjection(Class[])]]>
126 </doc>
127 </method>
128 <method name="bindInterceptor"
129 abstract="false" native="false" synchronized="false"
130 static="false" final="false" visibility="protected"
131 deprecated="not deprecated">
132 <param name="classMatcher" type="com.google.inject.matcher.Matcher&lt;? super java.lang.Class&lt;?&gt;&gt;"/>
133 <param name="methodMatcher" type="com.google.inject.matcher.Matcher&lt;? super java.lang.reflect.Method&gt;"/>
134 <param name="interceptors" type="MethodInterceptor[]"/>
135 <doc>
136 <![CDATA[@see Binder#bindInterceptor(com.google.inject.matcher.Matcher,
137 com.google.inject.matcher.Matcher,
138 org.aopalliance.intercept.MethodInterceptor[])]]>
139 </doc>
140 </method>
141 <doc>
142 <![CDATA[A support class for {@link Module}s which reduces repetition and results in
143 a more readable configuration. Simply extend this class, implement {@link
144 #configure()}, and call the inherited methods which mirror those found in
145 {@link Binder}. For example:
146
147 <pre>
148 import static com.google.inject.Names.named;
149
150 public class MyModule extends AbstractModule {
151 protected void configure() {
152 bind(Foo.class).to(FooImpl.class).in(Scopes.SINGLETON);
153 bind(BarImpl.class);
154 link(Bar.class).to(BarImpl.class);
155 bindConstant(named("port")).to(8080);
156 }
157 }
158 </pre>
159
160 @author crazybob@google.com (Bob Lee)]]>
161 </doc>
162 </class>
163 <!-- end class com.google.inject.AbstractModule -->
164 <!-- start interface com.google.inject.Binder -->
165 <interface name="Binder" abstract="true"
166 static="false" final="false" visibility="public"
167 deprecated="not deprecated">
168 <method name="bindInterceptor"
169 abstract="false" native="false" synchronized="false"
170 static="false" final="false" visibility="public"
171 deprecated="not deprecated">
172 <param name="classMatcher" type="com.google.inject.matcher.Matcher&lt;? super java.lang.Class&lt;?&gt;&gt;"/>
173 <param name="methodMatcher" type="com.google.inject.matcher.Matcher&lt;? super java.lang.reflect.Method&gt;"/>
174 <param name="interceptors" type="MethodInterceptor[]"/>
175 <doc>
176 <![CDATA[Binds a method interceptor to methods matched by class and method
177 matchers.
178
179 @param classMatcher matches classes the interceptor should apply to. For
180 example: {@code only(Runnable.class)}.
181 @param methodMatcher matches methods the interceptor should apply to. For
182 example: {@code annotatedWith(Transactional.class)}.
183 @param interceptors to bind]]>
184 </doc>
185 </method>
186 <method name="bindScope"
187 abstract="false" native="false" synchronized="false"
188 static="false" final="false" visibility="public"
189 deprecated="not deprecated">
190 <param name="annotationType" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
191 <param name="scope" type="com.google.inject.Scope"/>
192 <doc>
193 <![CDATA[Binds a scope to an annotation.]]>
194 </doc>
195 </method>
196 <method name="bind" return="com.google.inject.binder.LinkedBindingBuilder&lt;T&gt;"
197 abstract="false" native="false" synchronized="false"
198 static="false" final="false" visibility="public"
199 deprecated="not deprecated">
200 <param name="key" type="com.google.inject.Key&lt;T&gt;"/>
201 <doc>
202 <![CDATA[Creates a binding to a key.]]>
203 </doc>
204 </method>
205 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder&lt;T&gt;"
206 abstract="false" native="false" synchronized="false"
207 static="false" final="false" visibility="public"
208 deprecated="not deprecated">
209 <param name="typeLiteral" type="com.google.inject.TypeLiteral&lt;T&gt;"/>
210 <doc>
211 <![CDATA[Creates a binding to a type.]]>
212 </doc>
213 </method>
214 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder&lt;T&gt;"
215 abstract="false" native="false" synchronized="false"
216 static="false" final="false" visibility="public"
217 deprecated="not deprecated">
218 <param name="type" type="java.lang.Class&lt;T&gt;"/>
219 <doc>
220 <![CDATA[Creates a binding to a type.]]>
221 </doc>
222 </method>
223 <method name="bindConstant" return="com.google.inject.binder.AnnotatedConstantBindingBuilder"
224 abstract="false" native="false" synchronized="false"
225 static="false" final="false" visibility="public"
226 deprecated="not deprecated">
227 <doc>
228 <![CDATA[Binds a constant value to an annotation.]]>
229 </doc>
230 </method>
231 <method name="requestStaticInjection"
232 abstract="false" native="false" synchronized="false"
233 static="false" final="false" visibility="public"
234 deprecated="not deprecated">
235 <param name="types" type="java.lang.Class[]"/>
236 <doc>
237 <![CDATA[Upon successful creation, the {@link Injector} will inject static fields
238 and methods in the given classes.
239
240 @param types for which static members will be injected]]>
241 </doc>
242 </method>
243 <method name="install"
244 abstract="false" native="false" synchronized="false"
245 static="false" final="false" visibility="public"
246 deprecated="not deprecated">
247 <param name="module" type="com.google.inject.Module"/>
248 <doc>
249 <![CDATA[Uses the given module to configure more bindings.]]>
250 </doc>
251 </method>
252 <method name="currentStage" return="com.google.inject.Stage"
253 abstract="false" native="false" synchronized="false"
254 static="false" final="false" visibility="public"
255 deprecated="not deprecated">
256 <doc>
257 <![CDATA[Gets the current stage.]]>
258 </doc>
259 </method>
260 <method name="addError"
261 abstract="false" native="false" synchronized="false"
262 static="false" final="false" visibility="public"
263 deprecated="not deprecated">
264 <param name="message" type="java.lang.String"/>
265 <param name="arguments" type="java.lang.Object[]"/>
266 <doc>
267 <![CDATA[Records an error message which will be presented to the user at a later
268 time. Unlike throwing an exception, this enable us to continue
269 configuring the Injector and discover more errors. Uses {@link
270 String#format(String, Object[])} to insert the arguments into the
271 message.]]>
272 </doc>
273 </method>
274 <method name="addError"
275 abstract="false" native="false" synchronized="false"
276 static="false" final="false" visibility="public"
277 deprecated="not deprecated">
278 <param name="t" type="java.lang.Throwable"/>
279 <doc>
280 <![CDATA[Records an exception, the full details of which will be logged, and the
281 message of which will be presented to the user at a later
282 time. If your Module calls something that you worry may fail, you should
283 catch the exception and pass it into this.]]>
284 </doc>
285 </method>
286 <doc>
287 <![CDATA[Collects configuration information (primarily <i>bindings</i>) which will be
288 used to create an {@link Injector}. Guice provides this object to your
289 application's {@link Module}s so they may each contribute
290 their own bindings.
291
292 <p>The bindings contributed by {@code Module}s define how the {@code
293 Injector} resolves dependencies. A {@link Key} consisting of a type
294 and optional annotation uniquely identifies a binding within an {@code
295 Injector}.
296
297 <p>You may bind from a key to:
298
299 <ul>
300 <li>Another binding, which this binding's key is now "aliased to"
301 <li>Another binding, which references a {@link Provider} for this key
302 <li>A preconstructed instance
303 <li>A preconstructed instance which should be used as the {@link Provider}
304 for this binding
305 </ul>
306
307 <p>In addition, a binding may have an associated scope, such as
308 {@link Scopes#SINGLETON}, and singleton bindings may specify eager or lazy
309 initialization.
310
311 <p>See the users' guide appendix, "How the Injector resolves injection
312 requests," to better understand binding resolution.
313
314 <p>After an {@code Injector} has been created, its bindings may be
315 examined using methods like {@link Injector#getBinding(Key)}, but this
316 read-only {@link Binding} type is not used when <i>creating</i> the
317 bindings.]]>
318 </doc>
319 </interface>
320 <!-- end interface com.google.inject.Binder -->
321 <!-- start interface com.google.inject.Binding -->
322 <interface name="Binding" abstract="true"
323 static="false" final="false" visibility="public"
324 deprecated="not deprecated">
325 <method name="getKey" return="com.google.inject.Key&lt;T&gt;"
326 abstract="false" native="false" synchronized="false"
327 static="false" final="false" visibility="public"
328 deprecated="not deprecated">
329 <doc>
330 <![CDATA[Returns the key for this binding.]]>
331 </doc>
332 </method>
333 <method name="getSource" return="java.lang.Object"
334 abstract="false" native="false" synchronized="false"
335 static="false" final="false" visibility="public"
336 deprecated="not deprecated">
337 <doc>
338 <![CDATA[Returns an arbitrary object containing information about the "place"
339 where this binding was configured. Used by Guice in the production of
340 descriptive error messages.]]>
341 </doc>
342 </method>
343 <method name="getProvider" return="com.google.inject.Provider&lt;T&gt;"
344 abstract="false" native="false" synchronized="false"
345 static="false" final="false" visibility="public"
346 deprecated="not deprecated">
347 <doc>
348 <![CDATA[Returns the provider guice uses to fulfill requests for this binding.]]>
349 </doc>
350 </method>
351 <doc>
352 <![CDATA[A mapping from a key (type and optional annotation) to a provider of
353 instances of that type. This interface is part of the {@link Injector}
354 introspection API and is intended primary for use by tools.
355
356 @author crazybob@google.com (Bob Lee)]]>
357 </doc>
358 </interface>
359 <!-- end interface com.google.inject.Binding -->
360 <!-- start class com.google.inject.BindingAnnotation -->
361 <class name="BindingAnnotation" abstract="true"
362 static="false" final="false" visibility="public"
363 deprecated="not deprecated">
364 <implements name="java.lang.annotation.Annotation"/>
365 <doc>
366 <![CDATA[Annotates annotations which are used for binding. Only one such annotation
367 may apply to a single injection point. You must also annotate binder
368 annotations with {@code @Retention(RUNTIME)}. For example:
369
370 <pre>
371 {@code @}Retention(RUNTIME)
372 {@code @}Target({ FIELD, PARAMETER })
373 {@code @}BindingAnnotation
374 public {@code @}interface Transactional {}
375 </pre>
376
377 @author crazybob@google.com (Bob Lee)]]>
378 </doc>
379 </class>
380 <!-- end class com.google.inject.BindingAnnotation -->
381 <!-- start class com.google.inject.CreationException -->
382 <class name="CreationException" extends="java.lang.RuntimeException"
383 abstract="false"
384 static="false" final="false" visibility="public"
385 deprecated="not deprecated">
386 <constructor name="CreationException" type="java.util.Collection&lt;com.google.inject.spi.Message&gt;"
387 static="false" final="false" visibility="public"
388 deprecated="not deprecated">
389 <doc>
390 <![CDATA[Constructs a new exception for the given errors.]]>
391 </doc>
392 </constructor>
393 <method name="getMessage" return="java.lang.String"
394 abstract="false" native="false" synchronized="false"
395 static="false" final="false" visibility="public"
396 deprecated="not deprecated">
397 </method>
398 <method name="getErrorMessages" return="java.util.Collection&lt;com.google.inject.spi.Message&gt;"
399 abstract="false" native="false" synchronized="false"
400 static="false" final="false" visibility="public"
401 deprecated="not deprecated">
402 <doc>
403 <![CDATA[Gets the error messages which resulted in this exception.]]>
404 </doc>
405 </method>
406 <doc>
407 <![CDATA[Thrown when errors occur while creating a {@link Injector}. Includes a list
408 of encountered errors. Typically, a client should catch this exception, log
409 it, and stop execution.
410
411 @author crazybob@google.com (Bob Lee)]]>
412 </doc>
413 </class>
414 <!-- end class com.google.inject.CreationException -->
415 <!-- start class com.google.inject.Guice -->
416 <class name="Guice" extends="java.lang.Object"
417 abstract="false"
418 static="false" final="true" visibility="public"
419 deprecated="not deprecated">
420 <method name="createInjector" return="com.google.inject.Injector"
421 abstract="false" native="false" synchronized="false"
422 static="true" final="false" visibility="public"
423 deprecated="not deprecated">
424 <param name="modules" type="com.google.inject.Module[]"/>
425 <doc>
426 <![CDATA[Creates an injector for the given set of modules.
427
428 @throws CreationException from which you can retrieve the individual error
429 messages]]>
430 </doc>
431 </method>
432 <method name="createInjector" return="com.google.inject.Injector"
433 abstract="false" native="false" synchronized="false"
434 static="true" final="false" visibility="public"
435 deprecated="not deprecated">
436 <param name="modules" type="java.lang.Iterable&lt;com.google.inject.Module&gt;"/>
437 <doc>
438 <![CDATA[Creates an injector for the given set of modules.
439
440 @throws CreationException from which you can retrieve the individual error
441 messages]]>
442 </doc>
443 </method>
444 <method name="createInjector" return="com.google.inject.Injector"
445 abstract="false" native="false" synchronized="false"
446 static="true" final="false" visibility="public"
447 deprecated="not deprecated">
448 <param name="stage" type="com.google.inject.Stage"/>
449 <param name="modules" type="com.google.inject.Module[]"/>
450 <doc>
451 <![CDATA[Creates an injector for the given set of modules, in a given development
452 stage.
453
454 @throws CreationException from which you can retrieve the individual error
455 messages.]]>
456 </doc>
457 </method>
458 <method name="createInjector" return="com.google.inject.Injector"
459 abstract="false" native="false" synchronized="false"
460 static="true" final="false" visibility="public"
461 deprecated="not deprecated">
462 <param name="stage" type="com.google.inject.Stage"/>
463 <param name="modules" type="java.lang.Iterable&lt;com.google.inject.Module&gt;"/>
464 <doc>
465 <![CDATA[Creates an injector for the given set of modules, in a given development
466 stage.
467
468 @throws CreationException from which you can retrieve the individual error
469 messages.]]>
470 </doc>
471 </method>
472 <doc>
473 <![CDATA[The entry point to the Guice framework. Creates {@link Injector}s from
474 {@link Module}s.]]>
475 </doc>
476 </class>
477 <!-- end class com.google.inject.Guice -->
478 <!-- start class com.google.inject.ImplementedBy -->
479 <class name="ImplementedBy" abstract="true"
480 static="false" final="false" visibility="public"
481 deprecated="not deprecated">
482 <implements name="java.lang.annotation.Annotation"/>
483 <doc>
484 <![CDATA[A pointer to the default implementation of a type.
485
486 @author crazybob@google.com (Bob Lee)]]>
487 </doc>
488 </class>
489 <!-- end class com.google.inject.ImplementedBy -->
490 <!-- start class com.google.inject.Inject -->
491 <class name="Inject" abstract="true"
492 static="false" final="false" visibility="public"
493 deprecated="not deprecated">
494 <implements name="java.lang.annotation.Annotation"/>
495 <doc>
496 <![CDATA[Annotates members of your implementation class (constructors, methods
497 and fields) into which the {@link Injector} should inject values.
498 The Injector fulfills injection requests for:
499
500 <ul>
501 <li>Every instance it constructs. The class being constructed must have
502 exactly one of its constructors marked with {@code @Inject} or must have a
503 constructor taking no parameters. The Injector then proceeds to perform
504 method and field injections.
505
506 <li>Pre-constructed instances passed to {@link Injector#injectMembers},
507 {@link com.google.inject.binder.LinkedBindingBuilder#toInstance(Object)} and
508 {@link com.google.inject.binder.LinkedBindingBuilder#toProvider(Provider)}.
509 In this case all constructors are, of course, ignored.
510
511 <li>Static fields and methods of classes which any {@link Module} has
512 specifically requested static injection for, using
513 {@link Binder#requestStaticInjection}.
514 </ul>
515
516 In all cases, a member can be injected regardless of its Java access
517 specifier (private, default, protected, public).
518
519 @author crazybob@google.com (Bob Lee)]]>
520 </doc>
521 </class>
522 <!-- end class com.google.inject.Inject -->
523 <!-- start interface com.google.inject.Injector -->
524 <interface name="Injector" abstract="true"
525 static="false" final="false" visibility="public"
526 deprecated="not deprecated">
527 <method name="injectMembers"
528 abstract="false" native="false" synchronized="false"
529 static="false" final="false" visibility="public"
530 deprecated="not deprecated">
531 <param name="o" type="java.lang.Object"/>
532 <doc>
533 <![CDATA[Injects dependencies into the fields and methods of an existing object.
534 Does not inject the constructor.]]>
535 </doc>
536 </method>
537 <method name="getBindings" return="java.util.Map&lt;com.google.inject.Key&lt;?&gt;, com.google.inject.Binding&lt;?&gt;&gt;"
538 abstract="false" native="false" synchronized="false"
539 static="false" final="false" visibility="public"
540 deprecated="not deprecated">
541 <doc>
542 <![CDATA[Gets all explicit bindings.]]>
543 </doc>
544 </method>
545 <method name="getBinding" return="com.google.inject.Binding&lt;T&gt;"
546 abstract="false" native="false" synchronized="false"
547 static="false" final="false" visibility="public"
548 deprecated="not deprecated">
549 <param name="key" type="com.google.inject.Key&lt;T&gt;"/>
550 <doc>
551 <![CDATA[Gets a binding for the given key.]]>
552 </doc>
553 </method>
554 <method name="findBindingsByType" return="java.util.List&lt;com.google.inject.Binding&lt;T&gt;&gt;"
555 abstract="false" native="false" synchronized="false"
556 static="false" final="false" visibility="public"
557 deprecated="not deprecated">
558 <param name="type" type="com.google.inject.TypeLiteral&lt;T&gt;"/>
559 <doc>
560 <![CDATA[Finds all bindings to the given type.]]>
561 </doc>
562 </method>
563 <method name="getProvider" return="com.google.inject.Provider&lt;T&gt;"
564 abstract="false" native="false" synchronized="false"
565 static="false" final="false" visibility="public"
566 deprecated="not deprecated">
567 <param name="key" type="com.google.inject.Key&lt;T&gt;"/>
568 <doc>
569 <![CDATA[Gets the provider bound to the given key.]]>
570 </doc>
571 </method>
572 <method name="getProvider" return="com.google.inject.Provider&lt;T&gt;"
573 abstract="false" native="false" synchronized="false"
574 static="false" final="false" visibility="public"
575 deprecated="not deprecated">
576 <param name="type" type="java.lang.Class&lt;T&gt;"/>
577 <doc>
578 <![CDATA[Gets the provider bound to the given type.]]>
579 </doc>
580 </method>
581 <method name="getInstance" return="T"
582 abstract="false" native="false" synchronized="false"
583 static="false" final="false" visibility="public"
584 deprecated="not deprecated">
585 <param name="key" type="com.google.inject.Key&lt;T&gt;"/>
586 <doc>
587 <![CDATA[Gets an instance bound to the given key; equivalent to
588 {@code getProvider(key).get()}.]]>
589 </doc>
590 </method>
591 <method name="getInstance" return="T"
592 abstract="false" native="false" synchronized="false"
593 static="false" final="false" visibility="public"
594 deprecated="not deprecated">
595 <param name="type" type="java.lang.Class&lt;T&gt;"/>
596 <doc>
597 <![CDATA[Gets an instance bound to the given type; equivalent to
598 {@code getProvider(type).get()}.]]>
599 </doc>
600 </method>
601 <doc>
602 <![CDATA[Fulfills requests for the object instances that make up your application,
603 always ensuring that these instances are properly injected before they are
604 returned. The {@code Injector} is the heart of the Guice framework,
605 although you don't typically interact with it directly very often. This
606 "behind-the-scenes" operation is what distinguishes the dependency
607 injection pattern from its cousin, service locator.
608
609 <p>The {@code Injector} API has a few additional features: it allows
610 pre-constructed instances to have their fields and methods injected and
611 offers programmatic introspection to support tool development.
612
613 <p>Contains several default bindings:
614
615 <ul>
616 <li>This {@link Injector} instance itself
617 <li>A {@code Provider<T>} for each binding of type {@code T}
618 <li>The {@link java.util.logging.Logger} for the class being injected
619 <li>The {@link Stage} in which the Injector was created
620 </ul>
621
622 Injectors are created using the facade class {@link Guice}.
623
624 @author crazybob@google.com (Bob Lee)]]>
625 </doc>
626 </interface>
627 <!-- end interface com.google.inject.Injector -->
628 <!-- start class com.google.inject.Key -->
629 <class name="Key" extends="java.lang.Object"
630 abstract="true"
631 static="false" final="false" visibility="public"
632 deprecated="not deprecated">
633 <constructor name="Key" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"
634 static="false" final="false" visibility="protected"
635 deprecated="not deprecated">
636 <doc>
637 <![CDATA[Constructs a new key. Derives the type from this class's type parameter.
638
639 <p>Clients create an empty anonymous subclass. Doing so embeds the type
640 parameter in the anonymous class's type hierarchy so we can reconstitute it
641 at runtime despite erasure.
642
643 <p>Example usage for a binding of type {@code Foo} annotated with
644 {@code @Bar}:
645
646 <p>{@code new Key<Foo>(Bar.class) {}}.]]>
647 </doc>
648 </constructor>
649 <constructor name="Key" type="java.lang.annotation.Annotation"
650 static="false" final="false" visibility="protected"
651 deprecated="not deprecated">
652 <doc>
653 <![CDATA[Constructs a new key. Derives the type from this class's type parameter.
654
655 <p>Clients create an empty anonymous subclass. Doing so embeds the type
656 parameter in the anonymous class's type hierarchy so we can reconstitute it
657 at runtime despite erasure.
658
659 <p>Example usage for a binding of type {@code Foo} annotated with
660 {@code @Bar}:
661
662 <p>{@code new Key<Foo>(new Bar()) {}}.]]>
663 </doc>
664 </constructor>
665 <constructor name="Key"
666 static="false" final="false" visibility="protected"
667 deprecated="not deprecated">
668 <doc>
669 <![CDATA[Constructs a new key. Derives the type from this class's type parameter.
670
671 <p>Clients create an empty anonymous subclass. Doing so embeds the type
672 parameter in the anonymous class's type hierarchy so we can reconstitute it
673 at runtime despite erasure.
674
675 <p>Example usage for a binding of type {@code Foo}:
676
677 <p>{@code new Key<Foo>() {}}.]]>
678 </doc>
679 </constructor>
680 <method name="getTypeLiteral" return="com.google.inject.TypeLiteral&lt;T&gt;"
681 abstract="false" native="false" synchronized="false"
682 static="false" final="false" visibility="public"
683 deprecated="not deprecated">
684 <doc>
685 <![CDATA[Gets the key type.]]>
686 </doc>
687 </method>
688 <method name="getAnnotationType" return="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"
689 abstract="false" native="false" synchronized="false"
690 static="false" final="false" visibility="public"
691 deprecated="not deprecated">
692 <doc>
693 <![CDATA[Gets the annotation type.]]>
694 </doc>
695 </method>
696 <method name="getAnnotation" return="java.lang.annotation.Annotation"
697 abstract="false" native="false" synchronized="false"
698 static="false" final="false" visibility="public"
699 deprecated="not deprecated">
700 <doc>
701 <![CDATA[Gets the annotation.]]>
702 </doc>
703 </method>
704 <method name="hashCode" return="int"
705 abstract="false" native="false" synchronized="false"
706 static="false" final="false" visibility="public"
707 deprecated="not deprecated">
708 </method>
709 <method name="equals" return="boolean"
710 abstract="false" native="false" synchronized="false"
711 static="false" final="false" visibility="public"
712 deprecated="not deprecated">
713 <param name="o" type="java.lang.Object"/>
714 </method>
715 <method name="toString" return="java.lang.String"
716 abstract="false" native="false" synchronized="false"
717 static="false" final="false" visibility="public"
718 deprecated="not deprecated">
719 </method>
720 <method name="get" return="com.google.inject.Key&lt;T&gt;"
721 abstract="false" native="false" synchronized="false"
722 static="true" final="false" visibility="public"
723 deprecated="not deprecated">
724 <param name="type" type="java.lang.Class&lt;T&gt;"/>
725 <doc>
726 <![CDATA[Gets a key for an injection type.]]>
727 </doc>
728 </method>
729 <method name="get" return="com.google.inject.Key&lt;T&gt;"
730 abstract="false" native="false" synchronized="false"
731 static="true" final="false" visibility="public"
732 deprecated="not deprecated">
733 <param name="type" type="java.lang.Class&lt;T&gt;"/>
734 <param name="annotationType" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
735 <doc>
736 <![CDATA[Gets a key for an injection type and an annotation type.]]>
737 </doc>
738 </method>
739 <method name="get" return="com.google.inject.Key&lt;T&gt;"
740 abstract="false" native="false" synchronized="false"
741 static="true" final="false" visibility="public"
742 deprecated="not deprecated">
743 <param name="type" type="java.lang.Class&lt;T&gt;"/>
744 <param name="annotation" type="java.lang.annotation.Annotation"/>
745 <doc>
746 <![CDATA[Gets a key for an injection type and an annotation.]]>
747 </doc>
748 </method>
749 <method name="get" return="com.google.inject.Key&lt;?&gt;"
750 abstract="false" native="false" synchronized="false"
751 static="true" final="false" visibility="public"
752 deprecated="not deprecated">
753 <param name="type" type="java.lang.reflect.Type"/>
754 <doc>
755 <![CDATA[Gets a key for an injection type.]]>
756 </doc>
757 </method>
758 <method name="get" return="com.google.inject.Key&lt;?&gt;"
759 abstract="false" native="false" synchronized="false"
760 static="true" final="false" visibility="public"
761 deprecated="not deprecated">
762 <param name="type" type="java.lang.reflect.Type"/>
763 <param name="annotationType" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
764 <doc>
765 <![CDATA[Gets a key for an injection type and an annotation type.]]>
766 </doc>
767 </method>
768 <method name="get" return="com.google.inject.Key&lt;?&gt;"
769 abstract="false" native="false" synchronized="false"
770 static="true" final="false" visibility="public"
771 deprecated="not deprecated">
772 <param name="type" type="java.lang.reflect.Type"/>
773 <param name="annotation" type="java.lang.annotation.Annotation"/>
774 <doc>
775 <![CDATA[Gets a key for an injection type and an annotation.]]>
776 </doc>
777 </method>
778 <method name="get" return="com.google.inject.Key&lt;T&gt;"
779 abstract="false" native="false" synchronized="false"
780 static="true" final="false" visibility="public"
781 deprecated="not deprecated">
782 <param name="typeLiteral" type="com.google.inject.TypeLiteral&lt;T&gt;"/>
783 <doc>
784 <![CDATA[Gets a key for an injection type.]]>
785 </doc>
786 </method>
787 <method name="get" return="com.google.inject.Key&lt;T&gt;"
788 abstract="false" native="false" synchronized="false"
789 static="true" final="false" visibility="public"
790 deprecated="not deprecated">
791 <param name="typeLiteral" type="com.google.inject.TypeLiteral&lt;T&gt;"/>
792 <param name="annotationType" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
793 <doc>
794 <![CDATA[Gets a key for an injection type and an annotation type.]]>
795 </doc>
796 </method>
797 <method name="get" return="com.google.inject.Key&lt;T&gt;"
798 abstract="false" native="false" synchronized="false"
799 static="true" final="false" visibility="public"
800 deprecated="not deprecated">
801 <param name="typeLiteral" type="com.google.inject.TypeLiteral&lt;T&gt;"/>
802 <param name="annotation" type="java.lang.annotation.Annotation"/>
803 <doc>
804 <![CDATA[Gets a key for an injection type and an annotation.]]>
805 </doc>
806 </method>
807 <doc>
808 <![CDATA[Binding key consisting of an injection type and an optional annotation.
809 Matches the type and annotation at a point of injection.
810
811 <p>For example, {@code Key.get(Service.class, Transactional.class)} will
812 match:
813
814 <pre>
815 {@literal @}Inject
816 public void setService({@literal @}Transactional Service service) {
817 ...
818 }
819 </pre>
820
821 <p>{@code Key} supports generic types via subclassing just like {@link
822 TypeLiteral}.
823
824 @author crazybob@google.com (Bob Lee)]]>
825 </doc>
826 </class>
827 <!-- end class com.google.inject.Key -->
828 <!-- start interface com.google.inject.Module -->
829 <interface name="Module" abstract="true"
830 static="false" final="false" visibility="public"
831 deprecated="not deprecated">
832 <method name="configure"
833 abstract="false" native="false" synchronized="false"
834 static="false" final="false" visibility="public"
835 deprecated="not deprecated">
836 <param name="binder" type="com.google.inject.Binder"/>
837 <doc>
838 <![CDATA[Contributes bindings and other configurations to a {@code Binder}.]]>
839 </doc>
840 </method>
841 <doc>
842 <![CDATA[A module contributes configuration information, typically interface
843 bindings, which will be used to create an {@link Injector}. A guice-based
844 application is ultimately composed of little more than a set of
845 {@code Module}s and some bootstrapping code.
846
847 <p>Your Module classes can use a more streamlined syntax by extending
848 {@link AbstractModule} rather than implementing this interface directly.]]>
849 </doc>
850 </interface>
851 <!-- end interface com.google.inject.Module -->
852 <!-- start class com.google.inject.ProvidedBy -->
853 <class name="ProvidedBy" abstract="true"
854 static="false" final="false" visibility="public"
855 deprecated="not deprecated">
856 <implements name="java.lang.annotation.Annotation"/>
857 <doc>
858 <![CDATA[A pointer to the default provider type for a type.
859
860 @author crazybob@google.com (Bob Lee)]]>
861 </doc>
862 </class>
863 <!-- end class com.google.inject.ProvidedBy -->
864 <!-- start interface com.google.inject.Provider -->
865 <interface name="Provider" abstract="true"
866 static="false" final="false" visibility="public"
867 deprecated="not deprecated">
868 <method name="get" return="T"
869 abstract="false" native="false" synchronized="false"
870 static="false" final="false" visibility="public"
871 deprecated="not deprecated">
872 <doc>
873 <![CDATA[Provides an instance of {@code T}. Must never return {@code null}.]]>
874 </doc>
875 </method>
876 <doc>
877 <![CDATA[Simply, any object capable of providing instances of type {@code T}.
878 Providers are used in numerous ways by the Guice framework:
879
880 <ul>
881 <li>When the default means for obtaining instances (an injectable or
882 parameterless constructor) is insufficient for a particular binding, the
883 module can specify a custom {@code Provider} instead, to control exactly how
884 Guice creates or obtains instances for the binding.
885
886 <li>An implementation class may always choose to have a {@code Provider<T>}
887 instance injected, rather than having a {@code T} injected directly. This
888 may give you access to multiple instances, instances you wish to safely
889 mutate and discard, instances which are out of scope (e.g. using a
890 {@code @RequestScoped} object from within a {@code @SessionScoped} object),
891 or instances you don't want to initialize until they are absolutely needed.
892
893 <li>A custom {@link Scope} is implemented as a decorator of
894 {@code Provider<T>}, which decides when to delegate to the backing provider
895 and when to provide the instance some other way.
896
897 <li>The {@link Injector} offers access to the {@code Provider<T>} it uses
898 to fulfill requests for a given key, via the {@link Injector#getProvider}
899 methods.
900 </ul>
901
902 @param <T> the type of object this provider provides
903
904 @author crazybob@google.com (Bob Lee)]]>
905 </doc>
906 </interface>
907 <!-- end interface com.google.inject.Provider -->
908 <!-- start interface com.google.inject.Scope -->
909 <interface name="Scope" abstract="true"
910 static="false" final="false" visibility="public"
911 deprecated="not deprecated">
912 <method name="scope" return="com.google.inject.Provider&lt;T&gt;"
913 abstract="false" native="false" synchronized="false"
914 static="false" final="false" visibility="public"
915 deprecated="not deprecated">
916 <param name="key" type="com.google.inject.Key&lt;T&gt;"/>
917 <param name="unscoped" type="com.google.inject.Provider&lt;T&gt;"/>
918 <doc>
919 <![CDATA[Scopes a provider. The returned locator returns objects from this scope. If
920 an object does not exist in this scope, the provider can use the given
921 unscoped provider to retrieve one.
922
923 <p>Scope implementations are strongly encouraged to override
924 {@link Object#toString} in the returned provider and include the backing
925 provider's {@code toString()} output.
926
927 @param key binding key
928 @param unscoped locates an instance when one doesn't already exist in this
929 scope.
930 @return a new provider which only delegates to the given unscoped provider
931 when an instance of the requested object doesn't already exist in this
932 scope]]>
933 </doc>
934 </method>
935 <method name="toString" return="java.lang.String"
936 abstract="false" native="false" synchronized="false"
937 static="false" final="false" visibility="public"
938 deprecated="not deprecated">
939 <doc>
940 <![CDATA[A short but useful description of this scope. For comparison, the standard
941 scopes that ship with guice use the descriptions
942 {@code "Scopes.SINGLETON"}, {@code "ServletScopes.SESSION"} and
943 {@code "ServletScopes.REQUEST"}.]]>
944 </doc>
945 </method>
946 <doc>
947 <![CDATA[A scope is a level of visibility that instances provided by Guice may have.
948 By default, an instance created by the {@link Injector} has <i>no
949 scope</i>, meaning it has no state from the framework's perspective -- the
950 {@code Injector} creates it, injects it once into the class that required it,
951 and then immediately forgets it. Associating a scope with a particular binding
952 allows the created instance to be "remembered" and possibly used again for
953 other injections.
954
955 @see Scopes#SINGLETON
956
957 @author crazybob@google.com (Bob Lee)]]>
958 </doc>
959 </interface>
960 <!-- end interface com.google.inject.Scope -->
961 <!-- start class com.google.inject.ScopeAnnotation -->
962 <class name="ScopeAnnotation" abstract="true"
963 static="false" final="false" visibility="public"
964 deprecated="not deprecated">
965 <implements name="java.lang.annotation.Annotation"/>
966 <doc>
967 <![CDATA[Annotates annotations which are used for scoping. Only one such annotation
968 may apply to a single implementation class. You must also annotate scope
969 annotations with {@code @Retention(RUNTIME)}. For example:
970
971 <pre>
972 {@code @}Retention(RUNTIME)
973 {@code @}Target(TYPE)
974 {@code @}ScopeAnnotation
975 public {@code @}interface SessionScoped {}
976 </pre>
977
978 @author crazybob@google.com (Bob Lee)]]>
979 </doc>
980 </class>
981 <!-- end class com.google.inject.ScopeAnnotation -->
982 <!-- start class com.google.inject.Scopes -->
983 <class name="Scopes" extends="java.lang.Object"
984 abstract="false"
985 static="false" final="false" visibility="public"
986 deprecated="not deprecated">
987 <field name="SINGLETON" type="com.google.inject.Scope"
988 transient="false" volatile="false"
989 static="true" final="true" visibility="public"
990 deprecated="not deprecated">
991 <doc>
992 <![CDATA[One instance per {@link Injector}. Also see {@code @}{@link Singleton}.]]>
993 </doc>
994 </field>
995 <doc>
996 <![CDATA[Built in scope implementations.
997
998 @author crazybob@google.com (Bob Lee)]]>
999 </doc>
1000 </class>
1001 <!-- end class com.google.inject.Scopes -->
1002 <!-- start class com.google.inject.Singleton -->
1003 <class name="Singleton" abstract="true"
1004 static="false" final="false" visibility="public"
1005 deprecated="not deprecated">
1006 <implements name="java.lang.annotation.Annotation"/>
1007 <doc>
1008 <![CDATA[Apply this to implementation classes when you want only one instance
1009 (per {@link Injector}) to be reused for all injections for that binding.
1010
1011 @author crazybob@google.com (Bob Lee)]]>
1012 </doc>
1013 </class>
1014 <!-- end class com.google.inject.Singleton -->
1015 <!-- start class com.google.inject.Stage -->
1016 <class name="Stage" extends="java.lang.Enum&lt;com.google.inject.Stage&gt;"
1017 abstract="false"
1018 static="false" final="true" visibility="public"
1019 deprecated="not deprecated">
1020 <method name="values" return="com.google.inject.Stage[]"
1021 abstract="false" native="false" synchronized="false"
1022 static="true" final="false" visibility="public"
1023 deprecated="not deprecated">
1024 </method>
1025 <method name="valueOf" return="com.google.inject.Stage"
1026 abstract="false" native="false" synchronized="false"
1027 static="true" final="false" visibility="public"
1028 deprecated="not deprecated">
1029 <param name="name" type="java.lang.String"/>
1030 </method>
1031 <doc>
1032 <![CDATA[The stage we're running in.
1033
1034 @author crazybob@google.com (Bob Lee)]]>
1035 </doc>
1036 </class>
1037 <!-- end class com.google.inject.Stage -->
1038 <!-- start class com.google.inject.TypeLiteral -->
1039 <class name="TypeLiteral" extends="java.lang.Object"
1040 abstract="true"
1041 static="false" final="false" visibility="public"
1042 deprecated="not deprecated">
1043 <constructor name="TypeLiteral"
1044 static="false" final="false" visibility="protected"
1045 deprecated="not deprecated">
1046 <doc>
1047 <![CDATA[Constructs a new type literal. Derives represented class from type
1048 parameter.
1049
1050 <p>Clients create an empty anonymous subclass. Doing so embeds the type
1051 parameter in the anonymous class's type hierarchy so we can reconstitute it
1052 at runtime despite erasure.]]>
1053 </doc>
1054 </constructor>
1055 <method name="getType" return="java.lang.reflect.Type"
1056 abstract="false" native="false" synchronized="false"
1057 static="false" final="false" visibility="public"
1058 deprecated="not deprecated">
1059 <doc>
1060 <![CDATA[Gets underlying {@code Type} instance.]]>
1061 </doc>
1062 </method>
1063 <method name="hashCode" return="int"
1064 abstract="false" native="false" synchronized="false"
1065 static="false" final="false" visibility="public"
1066 deprecated="not deprecated">
1067 </method>
1068 <method name="equals" return="boolean"
1069 abstract="false" native="false" synchronized="false"
1070 static="false" final="false" visibility="public"
1071 deprecated="not deprecated">
1072 <param name="o" type="java.lang.Object"/>
1073 </method>
1074 <method name="toString" return="java.lang.String"
1075 abstract="false" native="false" synchronized="false"
1076 static="false" final="false" visibility="public"
1077 deprecated="not deprecated">
1078 </method>
1079 <method name="get" return="com.google.inject.TypeLiteral&lt;?&gt;"
1080 abstract="false" native="false" synchronized="false"
1081 static="true" final="false" visibility="public"
1082 deprecated="not deprecated">
1083 <param name="type" type="java.lang.reflect.Type"/>
1084 <doc>
1085 <![CDATA[Gets type literal for the given {@code Type} instance.]]>
1086 </doc>
1087 </method>
1088 <method name="get" return="com.google.inject.TypeLiteral&lt;T&gt;"
1089 abstract="false" native="false" synchronized="false"
1090 static="true" final="false" visibility="public"
1091 deprecated="not deprecated">
1092 <param name="type" type="java.lang.Class&lt;T&gt;"/>
1093 <doc>
1094 <![CDATA[Gets type literal for the given {@code Class} instance.]]>
1095 </doc>
1096 </method>
1097 <doc>
1098 <![CDATA[Represents a generic type {@code T}. Java doesn't yet provide a way to
1099 represent generic types, so this class does. Forces clients to create a
1100 subclass of this class which enables retrieval the type information even at
1101 runtime.
1102
1103 <p>For example, to create a type literal for {@code List<String>}, you can
1104 create an empty anonymous inner class:
1105
1106 <p>
1107 {@code TypeLiteral<List<String>> list = new TypeLiteral<List<String>>() {};}
1108
1109 <p>Assumes that type {@code T} implements {@link Object#equals} and
1110 {@link Object#hashCode()} as value (as opposed to identity) comparison.
1111
1112 @author crazybob@google.com (Bob Lee)]]>
1113 </doc>
1114 </class>
1115 <!-- end class com.google.inject.TypeLiteral -->
1116</package>
1117<package name="com.google.inject.binder">
1118 <!-- start interface com.google.inject.binder.AnnotatedBindingBuilder -->
1119 <interface name="AnnotatedBindingBuilder" abstract="true"
1120 static="false" final="false" visibility="public"
1121 deprecated="not deprecated">
1122 <implements name="com.google.inject.binder.LinkedBindingBuilder&lt;T&gt;"/>
1123 <method name="annotatedWith" return="com.google.inject.binder.LinkedBindingBuilder&lt;T&gt;"
1124 abstract="false" native="false" synchronized="false"
1125 static="false" final="false" visibility="public"
1126 deprecated="not deprecated">
1127 <param name="annotationType" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
1128 <doc>
1129 <![CDATA[Specifies an annotation type for this binding.]]>
1130 </doc>
1131 </method>
1132 <method name="annotatedWith" return="com.google.inject.binder.LinkedBindingBuilder&lt;T&gt;"
1133 abstract="false" native="false" synchronized="false"
1134 static="false" final="false" visibility="public"
1135 deprecated="not deprecated">
1136 <param name="annotation" type="java.lang.annotation.Annotation"/>
1137 <doc>
1138 <![CDATA[Specifies an annotation value for this binding.]]>
1139 </doc>
1140 </method>
1141 <doc>
1142 <![CDATA[Specifies the annotation for a binding.
1143
1144 @author crazybob@google.com (Bob Lee)]]>
1145 </doc>
1146 </interface>
1147 <!-- end interface com.google.inject.binder.AnnotatedBindingBuilder -->
1148 <!-- start interface com.google.inject.binder.AnnotatedConstantBindingBuilder -->
1149 <interface name="AnnotatedConstantBindingBuilder" abstract="true"
1150 static="false" final="false" visibility="public"
1151 deprecated="not deprecated">
1152 <method name="annotatedWith" return="com.google.inject.binder.ConstantBindingBuilder"
1153 abstract="false" native="false" synchronized="false"
1154 static="false" final="false" visibility="public"
1155 deprecated="not deprecated">
1156 <param name="annotationType" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
1157 <doc>
1158 <![CDATA[Specifies an annotation type for this binding.]]>
1159 </doc>
1160 </method>
1161 <method name="annotatedWith" return="com.google.inject.binder.ConstantBindingBuilder"
1162 abstract="false" native="false" synchronized="false"
1163 static="false" final="false" visibility="public"
1164 deprecated="not deprecated">
1165 <param name="annotation" type="java.lang.annotation.Annotation"/>
1166 <doc>
1167 <![CDATA[Specifies an annotation value for this binding.]]>
1168 </doc>
1169 </method>
1170 <doc>
1171 <![CDATA[Specifies the annotation for a constant binding.
1172
1173 @author crazybob@google.com (Bob Lee)]]>
1174 </doc>
1175 </interface>
1176 <!-- end interface com.google.inject.binder.AnnotatedConstantBindingBuilder -->
1177 <!-- start interface com.google.inject.binder.ConstantBindingBuilder -->
1178 <interface name="ConstantBindingBuilder" abstract="true"
1179 static="false" final="false" visibility="public"
1180 deprecated="not deprecated">
1181 <method name="to"
1182 abstract="false" native="false" synchronized="false"
1183 static="false" final="false" visibility="public"
1184 deprecated="not deprecated">
1185 <param name="value" type="java.lang.String"/>
1186 <doc>
1187 <![CDATA[Binds constant to the given value.]]>
1188 </doc>
1189 </method>
1190 <method name="to"
1191 abstract="false" native="false" synchronized="false"
1192 static="false" final="false" visibility="public"
1193 deprecated="not deprecated">
1194 <param name="value" type="int"/>
1195 <doc>
1196 <![CDATA[Binds constant to the given value.]]>
1197 </doc>
1198 </method>
1199 <method name="to"
1200 abstract="false" native="false" synchronized="false"
1201 static="false" final="false" visibility="public"
1202 deprecated="not deprecated">
1203 <param name="value" type="long"/>
1204 <doc>
1205 <![CDATA[Binds constant to the given value.]]>
1206 </doc>
1207 </method>
1208 <method name="to"
1209 abstract="false" native="false" synchronized="false"
1210 static="false" final="false" visibility="public"
1211 deprecated="not deprecated">
1212 <param name="value" type="boolean"/>
1213 <doc>
1214 <![CDATA[Binds constant to the given value.]]>
1215 </doc>
1216 </method>
1217 <method name="to"
1218 abstract="false" native="false" synchronized="false"
1219 static="false" final="false" visibility="public"
1220 deprecated="not deprecated">
1221 <param name="value" type="double"/>
1222 <doc>
1223 <![CDATA[Binds constant to the given value.]]>
1224 </doc>
1225 </method>
1226 <method name="to"
1227 abstract="false" native="false" synchronized="false"
1228 static="false" final="false" visibility="public"
1229 deprecated="not deprecated">
1230 <param name="value" type="float"/>
1231 <doc>
1232 <![CDATA[Binds constant to the given value.]]>
1233 </doc>
1234 </method>
1235 <method name="to"
1236 abstract="false" native="false" synchronized="false"
1237 static="false" final="false" visibility="public"
1238 deprecated="not deprecated">
1239 <param name="value" type="short"/>
1240 <doc>
1241 <![CDATA[Binds constant to the given value.]]>
1242 </doc>
1243 </method>
1244 <method name="to"
1245 abstract="false" native="false" synchronized="false"
1246 static="false" final="false" visibility="public"
1247 deprecated="not deprecated">
1248 <param name="value" type="char"/>
1249 <doc>
1250 <![CDATA[Binds constant to the given value.]]>
1251 </doc>
1252 </method>
1253 <method name="to"
1254 abstract="false" native="false" synchronized="false"
1255 static="false" final="false" visibility="public"
1256 deprecated="not deprecated">
1257 <param name="value" type="java.lang.Class&lt;?&gt;"/>
1258 <doc>
1259 <![CDATA[Binds constant to the given value.]]>
1260 </doc>
1261 </method>
1262 <method name="to"
1263 abstract="false" native="false" synchronized="false"
1264 static="false" final="false" visibility="public"
1265 deprecated="not deprecated">
1266 <param name="value" type="E extends java.lang.Enum&lt;E&gt;"/>
1267 <doc>
1268 <![CDATA[Binds constant to the given value.]]>
1269 </doc>
1270 </method>
1271 <doc>
1272 <![CDATA[Binds to a constant value.]]>
1273 </doc>
1274 </interface>
1275 <!-- end interface com.google.inject.binder.ConstantBindingBuilder -->
1276 <!-- start interface com.google.inject.binder.LinkedBindingBuilder -->
1277 <interface name="LinkedBindingBuilder" abstract="true"
1278 static="false" final="false" visibility="public"
1279 deprecated="not deprecated">
1280 <implements name="com.google.inject.binder.ScopedBindingBuilder"/>
1281 <method name="to" return="com.google.inject.binder.ScopedBindingBuilder"
1282 abstract="false" native="false" synchronized="false"
1283 static="false" final="false" visibility="public"
1284 deprecated="not deprecated">
1285 <param name="implementation" type="java.lang.Class&lt;? extends T&gt;"/>
1286 <doc>
1287 <![CDATA[Binds to another binding with the specified type.]]>
1288 </doc>
1289 </method>
1290 <method name="to" return="com.google.inject.binder.ScopedBindingBuilder"
1291 abstract="false" native="false" synchronized="false"
1292 static="false" final="false" visibility="public"
1293 deprecated="not deprecated">
1294 <param name="implementation" type="com.google.inject.TypeLiteral&lt;? extends T&gt;"/>
1295 <doc>
1296 <![CDATA[Binds to another binding with the specified type.]]>
1297 </doc>
1298 </method>
1299 <method name="to" return="com.google.inject.binder.ScopedBindingBuilder"
1300 abstract="false" native="false" synchronized="false"
1301 static="false" final="false" visibility="public"
1302 deprecated="not deprecated">
1303 <param name="targetKey" type="com.google.inject.Key&lt;? extends T&gt;"/>
1304 <doc>
1305 <![CDATA[Binds to another binding with the specified key.]]>
1306 </doc>
1307 </method>
1308 <method name="toInstance"
1309 abstract="false" native="false" synchronized="false"
1310 static="false" final="false" visibility="public"
1311 deprecated="not deprecated">
1312 <param name="instance" type="T"/>
1313 <doc>
1314 <![CDATA[Binds to the given instance. The Injector will automatically inject the
1315 members of this instance when it is first created. See {@link
1316 com.google.inject.Injector#injectMembers(Object)}.]]>
1317 </doc>
1318 </method>
1319 <method name="toProvider" return="com.google.inject.binder.ScopedBindingBuilder"
1320 abstract="false" native="false" synchronized="false"
1321 static="false" final="false" visibility="public"
1322 deprecated="not deprecated">
1323 <param name="provider" type="com.google.inject.Provider&lt;? extends T&gt;"/>
1324 <doc>
1325 <![CDATA[Binds to instances generated by the given Provider. The Injector will
1326 automatically inject the members of this provider instance when it is first
1327 created. See {@link com.google.inject.Injector#injectMembers(Object)}.]]>
1328 </doc>
1329 </method>
1330 <method name="toProvider" return="com.google.inject.binder.ScopedBindingBuilder"
1331 abstract="false" native="false" synchronized="false"
1332 static="false" final="false" visibility="public"
1333 deprecated="not deprecated">
1334 <param name="providerType" type="java.lang.Class&lt;? extends com.google.inject.Provider&lt;? extends T&gt;&gt;"/>
1335 <doc>
1336 <![CDATA[Binds to instances from the provider bound to the given provider type.]]>
1337 </doc>
1338 </method>
1339 <method name="toProvider" return="com.google.inject.binder.ScopedBindingBuilder"
1340 abstract="false" native="false" synchronized="false"
1341 static="false" final="false" visibility="public"
1342 deprecated="not deprecated">
1343 <param name="providerKey" type="com.google.inject.Key&lt;? extends com.google.inject.Provider&lt;? extends T&gt;&gt;"/>
1344 <doc>
1345 <![CDATA[Binds to instances from the provider bound to the given key.]]>
1346 </doc>
1347 </method>
1348 <doc>
1349 <![CDATA[Links a binding to another binding or an instance.
1350
1351 @author crazybob@google.com (Bob Lee)]]>
1352 </doc>
1353 </interface>
1354 <!-- end interface com.google.inject.binder.LinkedBindingBuilder -->
1355 <!-- start interface com.google.inject.binder.ScopedBindingBuilder -->
1356 <interface name="ScopedBindingBuilder" abstract="true"
1357 static="false" final="false" visibility="public"
1358 deprecated="not deprecated">
1359 <method name="in"
1360 abstract="false" native="false" synchronized="false"
1361 static="false" final="false" visibility="public"
1362 deprecated="not deprecated">
1363 <param name="scopeAnnotation" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
1364 <doc>
1365 <![CDATA[Specifies the scope. References the annotation passed to {@link
1366 com.google.inject.Binder#bindScope(Class, com.google.inject.Scope)}.]]>
1367 </doc>
1368 </method>
1369 <method name="in"
1370 abstract="false" native="false" synchronized="false"
1371 static="false" final="false" visibility="public"
1372 deprecated="not deprecated">
1373 <param name="scope" type="com.google.inject.Scope"/>
1374 <doc>
1375 <![CDATA[Specifies the scope.]]>
1376 </doc>
1377 </method>
1378 <method name="asEagerSingleton"
1379 abstract="false" native="false" synchronized="false"
1380 static="false" final="false" visibility="public"
1381 deprecated="not deprecated">
1382 <doc>
1383 <![CDATA[Instructs the {@link com.google.inject.Injector} to eagerly initialize this
1384 singleton-scoped binding upon creation. Useful for application
1385 initialization logic.]]>
1386 </doc>
1387 </method>
1388 <doc>
1389 <![CDATA[Specifies the scope for a binding.
1390
1391 @author crazybob@google.com (Bob Lee)]]>
1392 </doc>
1393 </interface>
1394 <!-- end interface com.google.inject.binder.ScopedBindingBuilder -->
1395</package>
1396<package name="com.google.inject.jndi">
1397 <!-- start class com.google.inject.jndi.JndiIntegration -->
1398 <class name="JndiIntegration" extends="java.lang.Object"
1399 abstract="false"
1400 static="false" final="false" visibility="public"
1401 deprecated="not deprecated">
1402 <method name="fromJndi" return="com.google.inject.Provider&lt;T&gt;"
1403 abstract="false" native="false" synchronized="false"
1404 static="true" final="false" visibility="public"
1405 deprecated="not deprecated">
1406 <param name="type" type="java.lang.Class&lt;T&gt;"/>
1407 <param name="name" type="java.lang.String"/>
1408 <doc>
1409 <![CDATA[Creates a provider which looks up objects in JNDI using the given name.
1410 Example usage:
1411
1412 <pre>
1413 bind(DataSource.class).toProvider(fromJndi(DataSource.class, "java:..."));
1414 </pre>]]>
1415 </doc>
1416 </method>
1417 <doc>
1418 <![CDATA[Integrates Guice with JNDI. Requires a binding to
1419 {@link javax.naming.Context}.
1420
1421 @author crazybob@google.com (Bob Lee)]]>
1422 </doc>
1423 </class>
1424 <!-- end class com.google.inject.jndi.JndiIntegration -->
1425</package>
1426<package name="com.google.inject.matcher">
1427 <!-- start class com.google.inject.matcher.AbstractMatcher -->
1428 <class name="AbstractMatcher" extends="java.lang.Object"
1429 abstract="true"
1430 static="false" final="false" visibility="public"
1431 deprecated="not deprecated">
1432 <implements name="com.google.inject.matcher.Matcher&lt;T&gt;"/>
1433 <constructor name="AbstractMatcher"
1434 static="false" final="false" visibility="public"
1435 deprecated="not deprecated">
1436 </constructor>
1437 <method name="and" return="com.google.inject.matcher.Matcher&lt;T&gt;"
1438 abstract="false" native="false" synchronized="false"
1439 static="false" final="false" visibility="public"
1440 deprecated="not deprecated">
1441 <param name="other" type="com.google.inject.matcher.Matcher&lt;? super T&gt;"/>
1442 </method>
1443 <method name="or" return="com.google.inject.matcher.Matcher&lt;T&gt;"
1444 abstract="false" native="false" synchronized="false"
1445 static="false" final="false" visibility="public"
1446 deprecated="not deprecated">
1447 <param name="other" type="com.google.inject.matcher.Matcher&lt;? super T&gt;"/>
1448 </method>
1449 <doc>
1450 <![CDATA[Implements {@code and()} and {@code or()}.
1451
1452 @author crazybob@google.com (Bob Lee)]]>
1453 </doc>
1454 </class>
1455 <!-- end class com.google.inject.matcher.AbstractMatcher -->
1456 <!-- start interface com.google.inject.matcher.Matcher -->
1457 <interface name="Matcher" abstract="true"
1458 static="false" final="false" visibility="public"
1459 deprecated="not deprecated">
1460 <method name="matches" return="boolean"
1461 abstract="false" native="false" synchronized="false"
1462 static="false" final="false" visibility="public"
1463 deprecated="not deprecated">
1464 <param name="t" type="T"/>
1465 <doc>
1466 <![CDATA[Returns {@code true} if this matches {@code t}, {@code false} otherwise.]]>
1467 </doc>
1468 </method>
1469 <method name="and" return="com.google.inject.matcher.Matcher&lt;T&gt;"
1470 abstract="false" native="false" synchronized="false"
1471 static="false" final="false" visibility="public"
1472 deprecated="not deprecated">
1473 <param name="other" type="com.google.inject.matcher.Matcher&lt;? super T&gt;"/>
1474 <doc>
1475 <![CDATA[Returns a new matcher which returns {@code true} if both this and the
1476 given matcher return {@code true}.]]>
1477 </doc>
1478 </method>
1479 <method name="or" return="com.google.inject.matcher.Matcher&lt;T&gt;"
1480 abstract="false" native="false" synchronized="false"
1481 static="false" final="false" visibility="public"
1482 deprecated="not deprecated">
1483 <param name="other" type="com.google.inject.matcher.Matcher&lt;? super T&gt;"/>
1484 <doc>
1485 <![CDATA[Returns a new matcher which returns {@code true} if either this or the
1486 given matcher return {@code true}.]]>
1487 </doc>
1488 </method>
1489 <doc>
1490 <![CDATA[Returns {@code true} or {@code false} for a given input.
1491
1492 @author crazybob@google.com (Bob Lee)]]>
1493 </doc>
1494 </interface>
1495 <!-- end interface com.google.inject.matcher.Matcher -->
1496 <!-- start class com.google.inject.matcher.Matchers -->
1497 <class name="Matchers" extends="java.lang.Object"
1498 abstract="false"
1499 static="false" final="false" visibility="public"
1500 deprecated="not deprecated">
1501 <method name="any" return="com.google.inject.matcher.Matcher&lt;java.lang.Object&gt;"
1502 abstract="false" native="false" synchronized="false"
1503 static="true" final="false" visibility="public"
1504 deprecated="not deprecated">
1505 <doc>
1506 <![CDATA[Returns a matcher which matches any input.]]>
1507 </doc>
1508 </method>
1509 <method name="not" return="com.google.inject.matcher.Matcher&lt;T&gt;"
1510 abstract="false" native="false" synchronized="false"
1511 static="true" final="false" visibility="public"
1512 deprecated="not deprecated">
1513 <param name="p" type="com.google.inject.matcher.Matcher&lt;? super T&gt;"/>
1514 <doc>
1515 <![CDATA[Inverts the given matcher.]]>
1516 </doc>
1517 </method>
1518 <method name="annotatedWith" return="com.google.inject.matcher.Matcher&lt;java.lang.reflect.AnnotatedElement&gt;"
1519 abstract="false" native="false" synchronized="false"
1520 static="true" final="false" visibility="public"
1521 deprecated="not deprecated">
1522 <param name="annotationType" type="java.lang.Class&lt;? extends java.lang.annotation.Annotation&gt;"/>
1523 <doc>
1524 <![CDATA[Returns a matcher which matches elements (methods, classes, etc.)
1525 with a given annotation.]]>
1526 </doc>
1527 </method>
1528 <method name="annotatedWith" return="com.google.inject.matcher.Matcher&lt;java.lang.reflect.AnnotatedElement&gt;"
1529 abstract="false" native="false" synchronized="false"
1530 static="true" final="false" visibility="public"
1531 deprecated="not deprecated">
1532 <param name="annotation" type="java.lang.annotation.Annotation"/>
1533 <doc>
1534 <![CDATA[Returns a matcher which matches elements (methods, classes, etc.)
1535 with a given annotation.]]>
1536 </doc>
1537 </method>
1538 <method name="subclassesOf" return="com.google.inject.matcher.Matcher&lt;java.lang.Class&gt;"
1539 abstract="false" native="false" synchronized="false"
1540 static="true" final="false" visibility="public"
1541 deprecated="not deprecated">
1542 <param name="superclass" type="java.lang.Class&lt;?&gt;"/>
1543 <doc>
1544 <![CDATA[Returns a matcher which matches subclasses of the given type (as well as
1545 the given type).]]>
1546 </doc>
1547 </method>
1548 <method name="only" return="com.google.inject.matcher.Matcher&lt;java.lang.Object&gt;"
1549 abstract="false" native="false" synchronized="false"
1550 static="true" final="false" visibility="public"
1551 deprecated="not deprecated">
1552 <param name="o" type="java.lang.Object"/>
1553 <doc>
1554 <![CDATA[Returns a matcher which matches objects equal to the given object.]]>
1555 </doc>
1556 </method>
1557 <method name="identicalTo" return="com.google.inject.matcher.Matcher&lt;java.lang.Object&gt;"
1558 abstract="false" native="false" synchronized="false"
1559 static="true" final="false" visibility="public"
1560 deprecated="not deprecated">
1561 <param name="o" type="java.lang.Object"/>
1562 <doc>
1563 <![CDATA[Returns a matcher which matches only the given object.]]>
1564 </doc>
1565 </method>
1566 <method name="inPackage" return="com.google.inject.matcher.Matcher&lt;java.lang.Class&gt;"
1567 abstract="false" native="false" synchronized="false"
1568 static="true" final="false" visibility="public"
1569 deprecated="not deprecated">
1570 <param name="p" type="java.lang.Package"/>
1571 <doc>
1572 <![CDATA[Returns a matcher which matches classes in the given package.]]>
1573 </doc>
1574 </method>
1575 <method name="returns" return="com.google.inject.matcher.Matcher&lt;java.lang.reflect.Method&gt;"
1576 abstract="false" native="false" synchronized="false"
1577 static="true" final="false" visibility="public"
1578 deprecated="not deprecated">
1579 <param name="returnType" type="com.google.inject.matcher.Matcher&lt;? super java.lang.Class&lt;?&gt;&gt;"/>
1580 <doc>
1581 <![CDATA[Returns a matcher which matches methods with matching return types.]]>
1582 </doc>
1583 </method>
1584 <doc>
1585 <![CDATA[Matcher implementations. Supports matching classes and methods.
1586
1587 @author crazybob@google.com (Bob Lee)]]>
1588 </doc>
1589 </class>
1590 <!-- end class com.google.inject.matcher.Matchers -->
1591</package>
1592<package name="com.google.inject.name">
1593 <!-- start class com.google.inject.name.Named -->
1594 <class name="Named" abstract="true"
1595 static="false" final="false" visibility="public"
1596 deprecated="not deprecated">
1597 <implements name="java.lang.annotation.Annotation"/>
1598 <doc>
1599 <![CDATA[Annotates named things.
1600
1601 @author crazybob@google.com (Bob Lee)]]>
1602 </doc>
1603 </class>
1604 <!-- end class com.google.inject.name.Named -->
1605 <!-- start class com.google.inject.name.Names -->
1606 <class name="Names" extends="java.lang.Object"
1607 abstract="false"
1608 static="false" final="false" visibility="public"
1609 deprecated="not deprecated">
1610 <method name="named" return="com.google.inject.name.Named"
1611 abstract="false" native="false" synchronized="false"
1612 static="true" final="false" visibility="public"
1613 deprecated="not deprecated">
1614 <param name="name" type="java.lang.String"/>
1615 <doc>
1616 <![CDATA[Creates a {@link Named} annotation with {@code name} as the value.]]>
1617 </doc>
1618 </method>
1619 <method name="bindProperties"
1620 abstract="false" native="false" synchronized="false"
1621 static="true" final="false" visibility="public"
1622 deprecated="not deprecated">
1623 <param name="binder" type="com.google.inject.Binder"/>
1624 <param name="properties" type="java.util.Map&lt;java.lang.String, java.lang.String&gt;"/>
1625 <doc>
1626 <![CDATA[Creates a constant binding to {@code @Named(key)} for each property.]]>
1627 </doc>
1628 </method>
1629 <method name="bindProperties"
1630 abstract="false" native="false" synchronized="false"
1631 static="true" final="false" visibility="public"
1632 deprecated="not deprecated">
1633 <param name="binder" type="com.google.inject.Binder"/>
1634 <param name="properties" type="java.util.Properties"/>
1635 <doc>
1636 <![CDATA[Creates a constant binding to {@code @Named(key)} for each property.]]>
1637 </doc>
1638 </method>
1639 <doc>
1640 <![CDATA[Utility methods for use with {@code @}{@link Named}.
1641
1642 @author crazybob@google.com (Bob Lee)]]>
1643 </doc>
1644 </class>
1645 <!-- end class com.google.inject.name.Names -->
1646</package>
1647<package name="com.google.inject.servlet">
1648 <!-- start class com.google.inject.servlet.GuiceFilter -->
1649 <class name="GuiceFilter" extends="java.lang.Object"
1650 abstract="false"
1651 static="false" final="false" visibility="public"
1652 deprecated="not deprecated">
1653 <constructor name="GuiceFilter"
1654 static="false" final="false" visibility="public"
1655 deprecated="not deprecated">
1656 </constructor>
1657 <method name="doFilter"
1658 abstract="false" native="false" synchronized="false"
1659 static="false" final="false" visibility="public"
1660 deprecated="not deprecated">
1661 <param name="servletRequest" type="ServletRequest"/>
1662 <param name="servletResponse" type="ServletResponse"/>
1663 <param name="filterChain" type="FilterChain"/>
1664 <exception name="IOException" type="java.io.IOException"/>
1665 <exception name="ServletException" type="ServletException"/>
1666 </method>
1667 <method name="init"
1668 abstract="false" native="false" synchronized="false"
1669 static="false" final="false" visibility="public"
1670 deprecated="not deprecated">
1671 <param name="filterConfig" type="FilterConfig"/>
1672 <exception name="ServletException" type="ServletException"/>
1673 </method>
1674 <method name="destroy"
1675 abstract="false" native="false" synchronized="false"
1676 static="false" final="false" visibility="public"
1677 deprecated="not deprecated">
1678 </method>
1679 <doc>
1680 <![CDATA[Apply this filter to all requests where you plan to use servlet scopes.
1681
1682 @author crazybob@google.com (Bob Lee)]]>
1683 </doc>
1684 </class>
1685 <!-- end class com.google.inject.servlet.GuiceFilter -->
1686 <!-- start class com.google.inject.servlet.RequestParameters -->
1687 <class name="RequestParameters" abstract="true"
1688 static="false" final="false" visibility="public"
1689 deprecated="not deprecated">
1690 <implements name="java.lang.annotation.Annotation"/>
1691 <doc>
1692 <![CDATA[Apply this to field or parameters of type {@code Map<String, String[]>}
1693 when you want the HTTP request parameter map to be injected.
1694
1695 @author crazybob@google.com (Bob Lee)]]>
1696 </doc>
1697 </class>
1698 <!-- end class com.google.inject.servlet.RequestParameters -->
1699 <!-- start class com.google.inject.servlet.RequestScoped -->
1700 <class name="RequestScoped" abstract="true"
1701 static="false" final="false" visibility="public"
1702 deprecated="not deprecated">
1703 <implements name="java.lang.annotation.Annotation"/>
1704 <doc>
1705 <![CDATA[Apply this to implementation classes when you want one instance per request.
1706
1707 @author crazybob@google.com (Bob Lee)]]>
1708 </doc>
1709 </class>
1710 <!-- end class com.google.inject.servlet.RequestScoped -->
1711 <!-- start class com.google.inject.servlet.ServletModule -->
1712 <class name="ServletModule" extends="com.google.inject.AbstractModule"
1713 abstract="false"
1714 static="false" final="false" visibility="public"
1715 deprecated="not deprecated">
1716 <constructor name="ServletModule"
1717 static="false" final="false" visibility="public"
1718 deprecated="not deprecated">
1719 </constructor>
1720 <method name="configure"
1721 abstract="false" native="false" synchronized="false"
1722 static="false" final="false" visibility="protected"
1723 deprecated="not deprecated">
1724 </method>
1725 <doc>
1726 <![CDATA[Configures the servlet scopes and creates bindings for the servlet API
1727 objects so you can inject the request, response, session, etc.
1728
1729 @author crazybob@google.com (Bob Lee)]]>
1730 </doc>
1731 </class>
1732 <!-- end class com.google.inject.servlet.ServletModule -->
1733 <!-- start class com.google.inject.servlet.ServletScopes -->
1734 <class name="ServletScopes" extends="java.lang.Object"
1735 abstract="false"
1736 static="false" final="false" visibility="public"
1737 deprecated="not deprecated">
1738 <field name="REQUEST" type="com.google.inject.Scope"
1739 transient="false" volatile="false"
1740 static="true" final="true" visibility="public"
1741 deprecated="not deprecated">
1742 <doc>
1743 <![CDATA[HTTP servlet request scope.]]>
1744 </doc>
1745 </field>
1746 <field name="SESSION" type="com.google.inject.Scope"
1747 transient="false" volatile="false"
1748 static="true" final="true" visibility="public"
1749 deprecated="not deprecated">
1750 <doc>
1751 <![CDATA[HTTP session scope.]]>
1752 </doc>
1753 </field>
1754 <doc>
1755 <![CDATA[Servlet scopes.
1756
1757 @author crazybob@google.com (Bob Lee)]]>
1758 </doc>
1759 </class>
1760 <!-- end class com.google.inject.servlet.ServletScopes -->
1761 <!-- start class com.google.inject.servlet.SessionScoped -->
1762 <class name="SessionScoped" abstract="true"
1763 static="false" final="false" visibility="public"
1764 deprecated="not deprecated">
1765 <implements name="java.lang.annotation.Annotation"/>
1766 <doc>
1767 <![CDATA[Apply this to implementation classes when you want one instance per session.
1768
1769 @see com.google.inject.Scopes#SINGLETON
1770 @author crazybob@google.com (Bob Lee)]]>
1771 </doc>
1772 </class>
1773 <!-- end class com.google.inject.servlet.SessionScoped -->
1774</package>
1775<package name="com.google.inject.spi">
1776 <!-- start class com.google.inject.spi.Message -->
1777 <class name="Message" extends="java.lang.Object"
1778 abstract="false"
1779 static="false" final="false" visibility="public"
1780 deprecated="not deprecated">
1781 <constructor name="Message" type="java.lang.Object, java.lang.String"
1782 static="false" final="false" visibility="public"
1783 deprecated="not deprecated">
1784 </constructor>
1785 <constructor name="Message" type="java.lang.String"
1786 static="false" final="false" visibility="public"
1787 deprecated="not deprecated">
1788 </constructor>
1789 <method name="getSource" return="java.lang.Object"
1790 abstract="false" native="false" synchronized="false"
1791 static="false" final="false" visibility="public"
1792 deprecated="not deprecated">
1793 <doc>
1794 <![CDATA[Gets the source of the configuration which resulted in this error message.]]>
1795 </doc>
1796 </method>
1797 <method name="getSourceString" return="java.lang.String"
1798 abstract="false" native="false" synchronized="false"
1799 static="false" final="false" visibility="public"
1800 deprecated="not deprecated">
1801 <doc>
1802 <![CDATA[Returns a string representation of the source object.]]>
1803 </doc>
1804 </method>
1805 <method name="getMessage" return="java.lang.String"
1806 abstract="false" native="false" synchronized="false"
1807 static="false" final="false" visibility="public"
1808 deprecated="not deprecated">
1809 <doc>
1810 <![CDATA[Gets the error message text.]]>
1811 </doc>
1812 </method>
1813 <method name="toString" return="java.lang.String"
1814 abstract="false" native="false" synchronized="false"
1815 static="false" final="false" visibility="public"
1816 deprecated="not deprecated">
1817 </method>
1818 <method name="hashCode" return="int"
1819 abstract="false" native="false" synchronized="false"
1820 static="false" final="false" visibility="public"
1821 deprecated="not deprecated">
1822 </method>
1823 <method name="equals" return="boolean"
1824 abstract="false" native="false" synchronized="false"
1825 static="false" final="false" visibility="public"
1826 deprecated="not deprecated">
1827 <param name="o" type="java.lang.Object"/>
1828 </method>
1829 <doc>
1830 <![CDATA[A message. Contains a source pointing to the code which resulted
1831 in this message and a text message.
1832
1833 @author crazybob@google.com (Bob Lee)]]>
1834 </doc>
1835 </class>
1836 <!-- end class com.google.inject.spi.Message -->
1837 <!-- start interface com.google.inject.spi.SourceProvider -->
1838 <interface name="SourceProvider" abstract="true"
1839 static="false" final="false" visibility="public"
1840 deprecated="not deprecated">
1841 <method name="source" return="java.lang.Object"
1842 abstract="false" native="false" synchronized="false"
1843 static="false" final="false" visibility="public"
1844 deprecated="not deprecated">
1845 <doc>
1846 <![CDATA[Creates an object pointing to the current location within the
1847 configuration. If we run into a problem later, we'll be able to trace it
1848 back to the original source. Useful for debugging.]]>
1849 </doc>
1850 </method>
1851 <doc>
1852 <![CDATA[Provides source objects to the {@link com.google.inject.Binder}.
1853 A source object is any object which points back to the current location
1854 within the configuration. Guice uses source objects in error messages
1855 and associates them with bindings.
1856
1857 @author crazybob@google.com (Bob Lee)]]>
1858 </doc>
1859 </interface>
1860 <!-- end interface com.google.inject.spi.SourceProvider -->
1861 <!-- start class com.google.inject.spi.SourceProviders -->
1862 <class name="SourceProviders" extends="java.lang.Object"
1863 abstract="false"
1864 static="false" final="false" visibility="public"
1865 deprecated="not deprecated">
1866 <method name="skip"
1867 abstract="false" native="false" synchronized="true"
1868 static="true" final="false" visibility="public"
1869 deprecated="not deprecated">
1870 <param name="clazz" type="java.lang.Class&lt;?&gt;"/>
1871 <doc>
1872 <![CDATA[Instructs stacktrace-based providers to skip the given class in the stack
1873 trace when determining the source. Use this to keep the binder from
1874 logging utility methods as the sources of bindings (i.e. it will skip to
1875 the utility methods' callers instead).
1876
1877 <p>Skipping only takes place after this method is called.]]>
1878 </doc>
1879 </method>
1880 <method name="getSkippedClassNames" return="java.util.Set&lt;java.lang.String&gt;"
1881 abstract="false" native="false" synchronized="true"
1882 static="true" final="false" visibility="public"
1883 deprecated="not deprecated">
1884 <doc>
1885 <![CDATA[Gets the set of class names which should be skipped by stacktrace-based
1886 providers.]]>
1887 </doc>
1888 </method>
1889 <method name="defaultSource" return="java.lang.Object"
1890 abstract="false" native="false" synchronized="false"
1891 static="true" final="false" visibility="public"
1892 deprecated="not deprecated">
1893 <doc>
1894 <![CDATA[Returns the current source obtained from the default provider.]]>
1895 </doc>
1896 </method>
1897 <method name="withDefault"
1898 abstract="false" native="false" synchronized="false"
1899 static="true" final="false" visibility="public"
1900 deprecated="not deprecated">
1901 <param name="sourceProvider" type="com.google.inject.spi.SourceProvider"/>
1902 <param name="r" type="java.lang.Runnable"/>
1903 <doc>
1904 <![CDATA[Sets the default source provider, runs the given command, and then
1905 restores the previous default source provider.]]>
1906 </doc>
1907 </method>
1908 <field name="UNKNOWN_SOURCE" type="java.lang.Object"
1909 transient="false" volatile="false"
1910 static="true" final="true" visibility="public"
1911 deprecated="not deprecated">
1912 </field>
1913 <doc>
1914 <![CDATA[Provides access to the default {@link SourceProvider} implementation and
1915 common controls for certain implementations.
1916
1917 @author crazybob@google.com (Bob Lee)]]>
1918 </doc>
1919 </class>
1920 <!-- end class com.google.inject.spi.SourceProviders -->
1921</package>
1922<package name="com.google.inject.spring">
1923 <!-- start class com.google.inject.spring.SpringIntegration -->
1924 <class name="SpringIntegration" extends="java.lang.Object"
1925 abstract="false"
1926 static="false" final="false" visibility="public"
1927 deprecated="not deprecated">
1928 <method name="fromSpring" return="com.google.inject.Provider&lt;T&gt;"
1929 abstract="false" native="false" synchronized="false"
1930 static="true" final="false" visibility="public"
1931 deprecated="not deprecated">
1932 <param name="type" type="java.lang.Class&lt;T&gt;"/>
1933 <param name="name" type="java.lang.String"/>
1934 <doc>
1935 <![CDATA[Creates a provider which looks up objects from Spring using the given name.
1936 Expects a binding to {@link
1937 org.springframework.beans.factory.BeanFactory}. Example usage:
1938
1939 <pre>
1940 bind(DataSource.class)
1941 .toProvider(fromSpring(DataSource.class, "dataSource"));
1942 </pre>]]>
1943 </doc>
1944 </method>
1945 <method name="bindAll"
1946 abstract="false" native="false" synchronized="false"
1947 static="true" final="false" visibility="public"
1948 deprecated="not deprecated">
1949 <param name="binder" type="com.google.inject.Binder"/>
1950 <param name="beanFactory" type="ListableBeanFactory"/>
1951 <doc>
1952 <![CDATA[Binds all Spring beans from the given factory by name. For a Spring bean
1953 named "foo", this method creates a binding to the bean's type and
1954 {@code @Named("foo")}.
1955
1956 @see com.google.inject.name.Named
1957 @see com.google.inject.name.Names#named(String)]]>
1958 </doc>
1959 </method>
1960 <doc>
1961 <![CDATA[Integrates Guice with Spring.
1962
1963 @author crazybob@google.com (Bob Lee)]]>
1964 </doc>
1965 </class>
1966 <!-- end class com.google.inject.spring.SpringIntegration -->
1967</package>
1968<package name="com.google.inject.struts2">
1969 <!-- start class com.google.inject.struts2.GuiceObjectFactory -->
1970 <class name="GuiceObjectFactory" extends="ObjectFactory"
1971 abstract="false"
1972 static="false" final="false" visibility="public"
1973 deprecated="not deprecated">
1974 <constructor name="GuiceObjectFactory"
1975 static="false" final="false" visibility="public"
1976 deprecated="not deprecated">
1977 </constructor>
1978 <method name="isNoArgConstructorRequired" return="boolean"
1979 abstract="false" native="false" synchronized="false"
1980 static="false" final="false" visibility="public"
1981 deprecated="not deprecated">
1982 </method>
1983 <method name="getClassInstance" return="java.lang.Class"
1984 abstract="false" native="false" synchronized="false"
1985 static="false" final="false" visibility="public"
1986 deprecated="not deprecated">
1987 <param name="name" type="java.lang.String"/>
1988 <exception name="ClassNotFoundException" type="java.lang.ClassNotFoundException"/>
1989 </method>
1990 <method name="buildBean" return="java.lang.Object"
1991 abstract="false" native="false" synchronized="false"
1992 static="false" final="false" visibility="public"
1993 deprecated="not deprecated">
1994 <param name="clazz" type="java.lang.Class"/>
1995 <param name="extraContext" type="java.util.Map"/>
1996 </method>
1997 <method name="buildInterceptor" return="Interceptor"
1998 abstract="false" native="false" synchronized="false"
1999 static="false" final="false" visibility="public"
2000 deprecated="not deprecated">
2001 <param name="interceptorConfig" type="InterceptorConfig"/>
2002 <param name="interceptorRefParams" type="java.util.Map"/>
2003 <exception name="ConfigurationException" type="ConfigurationException"/>
2004 </method>
2005 </class>
2006 <!-- end class com.google.inject.struts2.GuiceObjectFactory -->
2007</package>
2008<package name="com.google.inject.tools.jmx">
2009 <!-- start interface com.google.inject.tools.jmx.ManagedBindingMBean -->
2010 <interface name="ManagedBindingMBean" abstract="true"
2011 static="false" final="false" visibility="public"
2012 deprecated="not deprecated">
2013 <method name="getSource" return="java.lang.String"
2014 abstract="false" native="false" synchronized="false"
2015 static="false" final="false" visibility="public"
2016 deprecated="not deprecated">
2017 <doc>
2018 <![CDATA[Gets the source of this binding.]]>
2019 </doc>
2020 </method>
2021 <method name="getProvider" return="java.lang.String"
2022 abstract="false" native="false" synchronized="false"
2023 static="false" final="false" visibility="public"
2024 deprecated="not deprecated">
2025 <doc>
2026 <![CDATA[Gets the provider to which this binding is bound.]]>
2027 </doc>
2028 </method>
2029 <method name="getKey" return="java.lang.String"
2030 abstract="false" native="false" synchronized="false"
2031 static="false" final="false" visibility="public"
2032 deprecated="not deprecated">
2033 <doc>
2034 <![CDATA[Gets the binding key.]]>
2035 </doc>
2036 </method>
2037 <doc>
2038 <![CDATA[JMX interface to bindings.
2039
2040 @author crazybob@google.com (Bob Lee)]]>
2041 </doc>
2042 </interface>
2043 <!-- end interface com.google.inject.tools.jmx.ManagedBindingMBean -->
2044 <!-- start class com.google.inject.tools.jmx.Manager -->
2045 <class name="Manager" extends="java.lang.Object"
2046 abstract="false"
2047 static="false" final="false" visibility="public"
2048 deprecated="not deprecated">
2049 <constructor name="Manager"
2050 static="false" final="false" visibility="public"
2051 deprecated="not deprecated">
2052 </constructor>
2053 <method name="manage"
2054 abstract="false" native="false" synchronized="false"
2055 static="true" final="false" visibility="public"
2056 deprecated="not deprecated">
2057 <param name="domain" type="java.lang.String"/>
2058 <param name="injector" type="com.google.inject.Injector"/>
2059 <doc>
2060 <![CDATA[Registers all the bindings of an Injector with the platform MBean server.
2061 Consider using the name of your root {@link Module} class as the domain.]]>
2062 </doc>
2063 </method>
2064 <method name="manage"
2065 abstract="false" native="false" synchronized="false"
2066 static="true" final="false" visibility="public"
2067 deprecated="not deprecated">
2068 <param name="server" type="javax.management.MBeanServer"/>
2069 <param name="domain" type="java.lang.String"/>
2070 <param name="injector" type="com.google.inject.Injector"/>
2071 <doc>
2072 <![CDATA[Registers all the bindings of an Injector with the given MBean server.
2073 Consider using the name of your root {@link Module} class as the domain.]]>
2074 </doc>
2075 </method>
2076 <method name="main"
2077 abstract="false" native="false" synchronized="false"
2078 static="true" final="false" visibility="public"
2079 deprecated="not deprecated">
2080 <param name="args" type="java.lang.String[]"/>
2081 <exception name="Exception" type="java.lang.Exception"/>
2082 <doc>
2083 <![CDATA[Run with no arguments for usage instructions.]]>
2084 </doc>
2085 </method>
2086 <doc>
2087 <![CDATA[Provides a JMX interface to Guice.
2088
2089 @author crazybob@google.com (Bob Lee)]]>
2090 </doc>
2091 </class>
2092 <!-- end class com.google.inject.tools.jmx.Manager -->
2093</package>
2094
2095</api>