| com.google.inject.Provider<T> | 
    
    
   Known Indirect Subclasses
  
 | 
Class Overview
An object capable of providing instances of type T. Providers are used in numerous ways
 by Guice:
 
 - When the default means for obtaining instances (an injectable or parameterless constructor)
 is insufficient for a particular binding, the module can specify a custom 
Provider
 instead, to control exactly how Guice creates or obtains instances for the binding.
  - An implementation class may always choose to have a 
Provider<T> instance injected,
 rather than having a T injected directly.  This may give you access to multiple
 instances, instances you wish to safely mutate and discard, instances which are out of scope
 (e.g. using a @RequestScoped object from within a @SessionScoped object), or
 instances that will be initialized lazily.
  - A custom 
Scope is implemented as a decorator of Provider<T>, which decides
 when to delegate to the backing provider and when to provide the instance some other way.
  - The 
Injector offers access to the Provider<T> it uses to fulfill requests
 for a given key, via the getProvider(Key) methods.
  
 
Summary
| Public Methods | 
	 
    
        | 
            abstract
            
            
            
            
            T
         | 
        
        get()
        
         Provides an instance of T. 
  
   | 
| 
  [Expand]
   Inherited Methods  | 
   
From interface
  javax.inject.Provider
 | 
 
Public Methods
 
    
      
        public 
         
         
        abstract 
         
        T
      
      get
      ()
    
      
    
      
  Provides an instance of T. Must never return null.
 
  
      Throws
        
        
            | OutOfScopeException
             | when an attempt is made to access a scoped object while the scope
     in question is not currently active | 
        
  
        
            | ProvisionException
             | if an instance cannot be provided. Such exceptions include messages
     and throwables to describe why provision failed.
 |