1<?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<? extends java.lang.annotation.Annotation>"/> 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<T>" 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<T>"/> 61 <doc> 62 <![CDATA[@see Binder#bind(Key)]]> 63 </doc> 64 </method> 65 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder<T>" 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<T>"/> 70 <doc> 71 <![CDATA[@see Binder#bind(TypeLiteral)]]> 72 </doc> 73 </method> 74 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder<T>" 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<T>"/> 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<? super java.lang.Class<?>>"/> 133 <param name="methodMatcher" type="com.google.inject.matcher.Matcher<? super java.lang.reflect.Method>"/> 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<? super java.lang.Class<?>>"/> 173 <param name="methodMatcher" type="com.google.inject.matcher.Matcher<? super java.lang.reflect.Method>"/> 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<? extends java.lang.annotation.Annotation>"/> 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<T>" 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<T>"/> 201 <doc> 202 <![CDATA[Creates a binding to a key.]]> 203 </doc> 204 </method> 205 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder<T>" 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<T>"/> 210 <doc> 211 <![CDATA[Creates a binding to a type.]]> 212 </doc> 213 </method> 214 <method name="bind" return="com.google.inject.binder.AnnotatedBindingBuilder<T>" 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<T>"/> 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<T>" 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<T>" 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<com.google.inject.spi.Message>" 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<com.google.inject.spi.Message>" 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<com.google.inject.Module>"/> 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<com.google.inject.Module>"/> 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<com.google.inject.Key<?>, com.google.inject.Binding<?>>" 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<T>" 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<T>"/> 550 <doc> 551 <![CDATA[Gets a binding for the given key.]]> 552 </doc> 553 </method> 554 <method name="findBindingsByType" return="java.util.List<com.google.inject.Binding<T>>" 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<T>"/> 559 <doc> 560 <![CDATA[Finds all bindings to the given type.]]> 561 </doc> 562 </method> 563 <method name="getProvider" return="com.google.inject.Provider<T>" 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<T>"/> 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<T>" 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<T>"/> 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<T>"/> 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<T>"/> 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<? extends java.lang.annotation.Annotation>" 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<T>" 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<? extends java.lang.annotation.Annotation>" 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<T>" 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<T>"/> 725 <doc> 726 <![CDATA[Gets a key for an injection type.]]> 727 </doc> 728 </method> 729 <method name="get" return="com.google.inject.Key<T>" 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<T>"/> 734 <param name="annotationType" type="java.lang.Class<? extends java.lang.annotation.Annotation>"/> 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<T>" 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<T>"/> 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<?>" 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<?>" 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<? extends java.lang.annotation.Annotation>"/> 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<?>" 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<T>" 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<T>"/> 783 <doc> 784 <![CDATA[Gets a key for an injection type.]]> 785 </doc> 786 </method> 787 <method name="get" return="com.google.inject.Key<T>" 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<T>"/> 792 <param name="annotationType" type="java.lang.Class<? extends java.lang.annotation.Annotation>"/> 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<T>" 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<T>"/> 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<T>" 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<T>"/> 917 <param name="unscoped" type="com.google.inject.Provider<T>"/> 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<com.google.inject.Stage>" 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<?>" 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<T>" 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<T>"/> 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<T>"/> 1123 <method name="annotatedWith" return="com.google.inject.binder.LinkedBindingBuilder<T>" 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<? extends java.lang.annotation.Annotation>"/> 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<T>" 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<? extends java.lang.annotation.Annotation>"/> 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<?>"/> 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<E>"/> 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<? extends T>"/> 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<? extends T>"/> 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<? extends T>"/> 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<? extends T>"/> 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<? extends com.google.inject.Provider<? extends T>>"/> 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<? extends com.google.inject.Provider<? extends T>>"/> 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<? extends java.lang.annotation.Annotation>"/> 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<T>" 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<T>"/> 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<T>"/> 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<T>" 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<? super T>"/> 1442 </method> 1443 <method name="or" return="com.google.inject.matcher.Matcher<T>" 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<? super T>"/> 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<T>" 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<? super T>"/> 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<T>" 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<? super T>"/> 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<java.lang.Object>" 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<T>" 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<? super T>"/> 1514 <doc> 1515 <![CDATA[Inverts the given matcher.]]> 1516 </doc> 1517 </method> 1518 <method name="annotatedWith" return="com.google.inject.matcher.Matcher<java.lang.reflect.AnnotatedElement>" 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<? extends java.lang.annotation.Annotation>"/> 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<java.lang.reflect.AnnotatedElement>" 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<java.lang.Class>" 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<?>"/> 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<java.lang.Object>" 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<java.lang.Object>" 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<java.lang.Class>" 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<java.lang.reflect.Method>" 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<? super java.lang.Class<?>>"/> 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<java.lang.String, java.lang.String>"/> 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<?>"/> 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<java.lang.String>" 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<T>" 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<T>"/> 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> 2096