~vcs-imports/guice/trunk

« back to all changes in this revision

Viewing changes to latest-javadoc/com/google/inject/spi/ProviderWithExtensionVisitor.html

  • Committer: sberlin
  • Date: 2014-08-10 17:14:12 UTC
  • Revision ID: svn-v4:d779f126-a31b-0410-b53b-1d3aecad763e:trunk:1599
Redirect the latest-javadoc dir to github also.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!DOCTYPE html>
2
 
 
3
 
 
4
 
 
5
 
 
6
 
 
7
 
 
8
 
 
9
 
 
10
 
 
11
 
 
12
 
 
13
 
 
14
 
 
15
 
 
16
 
 
17
 
 
18
 
 
19
 
 
20
 
 
21
 
 
22
 
 
23
 
 
24
 
 
25
 
 
26
 
 
27
 
 
28
 
 
29
 
 
30
 
 
31
 
 
32
 
 
33
 
 
34
 
 
35
 
 
36
 
 
37
 
 
38
 
 
39
 
 
40
 
 
41
 
 
42
 
 
43
 
 
44
 
 
45
 
 
46
 
 
47
 
 
48
 
 
49
 
 
50
 
 
51
 
 
52
 
<html>
53
 
<head>
54
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
55
 
<link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.ico" />
56
 
<title>
57
 
 
58
 
  ProviderWithExtensionVisitor
59
 
 
60
 
 
61
 
| Guice
62
 
 
63
 
</title>
64
 
<link href="../../../../../javadoc/assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
65
 
<link href="../../../../../javadoc/assets/customizations.css" rel="stylesheet" type="text/css" />
66
 
<script src="../../../../../javadoc/assets/search_autocomplete.js" type="text/javascript"></script>
67
 
<script src="../../../../../javadoc/assets/jquery-resizable.min.js" type="text/javascript"></script>
68
 
<script src="../../../../../javadoc/assets/android-developer-docs.js" type="text/javascript"></script>
69
 
<script src="../../../../../javadoc/assets/prettify.js" type="text/javascript"></script>
70
 
<script type="text/javascript">
71
 
  setToRoot("../../../../", "../../../../../javadoc/assets/");
72
 
</script>
73
 
<script src="../../../../../javadoc/assets/android-developer-reference.js" type="text/javascript"></script>
74
 
<script src="../../../../../javadoc/assets/navtree_data.js" type="text/javascript"></script>
75
 
<script src="../../../../../javadoc/assets/customizations.js" type="text/javascript"></script>
76
 
<noscript>
77
 
  <style type="text/css">
78
 
    html,body{overflow:auto;}
79
 
    #body-content{position:relative; top:0;}
80
 
    #doc-content{overflow:visible;border-left:3px solid #666;}
81
 
    #side-nav{padding:0;}
82
 
    #side-nav .toggle-list ul {display:block;}
83
 
    #resize-packages-nav{border-bottom:3px solid #666;}
84
 
  </style>
85
 
</noscript>
86
 
</head>
87
 
 
88
 
<body class="Guice_3.0">
89
 
 
90
 
<div id="header">
91
 
    <div id="headerLeft">
92
 
    
93
 
      <span id="masthead-title">Guice</span>
94
 
    
95
 
    </div>
96
 
    <div id="headerRight">
97
 
      
98
 
  <div id="search" >
99
 
      <div id="searchForm">
100
 
          <form accept-charset="utf-8" class="gsc-search-box" 
101
 
                onsubmit="return submit_search()">
102
 
            <table class="gsc-search-box" cellpadding="0" cellspacing="0"><tbody>
103
 
                <tr>
104
 
                  <td class="gsc-input">
105
 
                    <input id="search_autocomplete" class="gsc-input" type="text" size="33" autocomplete="off"
106
 
                      title="search developer docs" name="q"
107
 
                      value="search developer docs"
108
 
                      onFocus="search_focus_changed(this, true)"
109
 
                      onBlur="search_focus_changed(this, false)"
110
 
                      onkeydown="return search_changed(event, true, '../../../../')"
111
 
                      onkeyup="return search_changed(event, false, '../../../../')" />
112
 
                  <div id="search_filtered_div" class="no-display">
113
 
                      <table id="search_filtered" cellspacing=0>
114
 
                      </table>
115
 
                  </div>
116
 
                  </td>
117
 
                  <td class="gsc-search-button">
118
 
                    <input type="submit" value="Search" title="search" id="search-button" class="gsc-search-button" />
119
 
                  </td>
120
 
                  <td class="gsc-clear-button">
121
 
                    <div title="clear results" class="gsc-clear-button">&nbsp;</div>
122
 
                  </td>
123
 
                </tr></tbody>
124
 
              </table>
125
 
          </form>
126
 
      </div><!-- searchForm -->
127
 
  </div><!-- search -->
128
 
      
129
 
        
130
 
  <div id="api-level-toggle">
131
 
    <input type="checkbox" id="apiLevelCheckbox" onclick="toggleApiLevelSelector(this)" />
132
 
    <label for="apiLevelCheckbox" class="disabled">Filter by API Level: </label>
133
 
    <select id="apiLevelSelector">
134
 
      <!-- option elements added by buildApiLevelSelector() -->
135
 
    </select>
136
 
  </div>
137
 
  <script>
138
 
   var SINCE_DATA = [ 'Guice_1.0', 'Guice_2.0', 'Guice_3.0' ];
139
 
    
140
 
    var SINCE_LABELS = [ 'Guice_1.0', 'Guice_2.0', 'Guice_3.0' ];
141
 
    buildApiLevelSelector();
142
 
    addLoadEvent(changeApiLevel);
143
 
  </script>
144
 
 
145
 
 
146
 
      
147
 
    </div>
148
 
</div><!-- header -->
149
 
 
150
 
 
151
 
  <div class="g-section g-tpl-240" id="body-content">
152
 
    <div class="g-unit g-first side-nav-resizable" id="side-nav">
153
 
      <div id="swapper">
154
 
        <div id="nav-panels">
155
 
          <div id="resize-packages-nav">
156
 
            <div id="packages-nav">
157
 
              <div id="index-links"><nobr>
158
 
                <a href="../../../../packages.html"  >Package Index</a> | 
159
 
                <a href="../../../../classes.html" >Class Index</a></nobr>
160
 
              </div>
161
 
              <ul>
162
 
                
163
 
    <li class="api apilevel-Guice_1.0">
164
 
  <a href="../../../../com/google/inject/package-summary.html">com.google.inject</a></li>
165
 
    <li class="api apilevel-Guice_2.0">
166
 
  <a href="../../../../com/google/inject/assistedinject/package-summary.html">com.google.inject.assistedinject</a></li>
167
 
    <li class="api apilevel-Guice_1.0">
168
 
  <a href="../../../../com/google/inject/binder/package-summary.html">com.google.inject.binder</a></li>
169
 
    <li class="api apilevel-Guice_3.0">
170
 
  <a href="../../../../com/google/inject/grapher/package-summary.html">com.google.inject.grapher</a></li>
171
 
    <li class="api apilevel-Guice_3.0">
172
 
  <a href="../../../../com/google/inject/grapher/graphviz/package-summary.html">com.google.inject.grapher.graphviz</a></li>
173
 
    <li class="api apilevel-Guice_1.0">
174
 
  <a href="../../../../com/google/inject/jndi/package-summary.html">com.google.inject.jndi</a></li>
175
 
    <li class="api apilevel-Guice_1.0">
176
 
  <a href="../../../../com/google/inject/matcher/package-summary.html">com.google.inject.matcher</a></li>
177
 
    <li class="api apilevel-Guice_2.0">
178
 
  <a href="../../../../com/google/inject/multibindings/package-summary.html">com.google.inject.multibindings</a></li>
179
 
    <li class="api apilevel-Guice_1.0">
180
 
  <a href="../../../../com/google/inject/name/package-summary.html">com.google.inject.name</a></li>
181
 
    <li class="api apilevel-Guice_3.0">
182
 
  <a href="../../../../com/google/inject/persist/package-summary.html">com.google.inject.persist</a></li>
183
 
    <li class="api apilevel-Guice_3.0">
184
 
  <a href="../../../../com/google/inject/persist/finder/package-summary.html">com.google.inject.persist.finder</a></li>
185
 
    <li class="api apilevel-Guice_3.0">
186
 
  <a href="../../../../com/google/inject/persist/jpa/package-summary.html">com.google.inject.persist.jpa</a></li>
187
 
    <li class="api apilevel-Guice_1.0">
188
 
  <a href="../../../../com/google/inject/servlet/package-summary.html">com.google.inject.servlet</a></li>
189
 
    <li class="selected api apilevel-Guice_1.0">
190
 
  <a href="../../../../com/google/inject/spi/package-summary.html">com.google.inject.spi</a></li>
191
 
    <li class="api apilevel-Guice_2.0">
192
 
  <a href="../../../../com/google/inject/spring/package-summary.html">com.google.inject.spring</a></li>
193
 
    <li class="api apilevel-Guice_2.0">
194
 
  <a href="../../../../com/google/inject/throwingproviders/package-summary.html">com.google.inject.throwingproviders</a></li>
195
 
    <li class="api apilevel-Guice_1.0">
196
 
  <a href="../../../../com/google/inject/tools/jmx/package-summary.html">com.google.inject.tools.jmx</a></li>
197
 
    <li class="api apilevel-Guice_2.0">
198
 
  <a href="../../../../com/google/inject/util/package-summary.html">com.google.inject.util</a></li>
199
 
              </ul><br/>
200
 
            </div> <!-- end packages -->
201
 
          </div> <!-- end resize-packages -->
202
 
          <div id="classes-nav">
203
 
            <ul>
204
 
              
205
 
    <li><h2>Interfaces</h2>
206
 
      <ul>
207
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/BindingScopingVisitor.html">BindingScopingVisitor</a>&lt;V&gt;</li>
208
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/BindingTargetVisitor.html">BindingTargetVisitor</a>&lt;T,&nbsp;V&gt;</li>
209
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ConstructorBinding.html">ConstructorBinding</a>&lt;T&gt;</li>
210
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ConvertedConstantBinding.html">ConvertedConstantBinding</a>&lt;T&gt;</li>
211
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/Element.html">Element</a></li>
212
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ElementVisitor.html">ElementVisitor</a>&lt;V&gt;</li>
213
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ExposedBinding.html">ExposedBinding</a>&lt;T&gt;</li>
214
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/HasDependencies.html">HasDependencies</a></li>
215
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/InjectionListener.html">InjectionListener</a>&lt;I&gt;</li>
216
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/InstanceBinding.html">InstanceBinding</a>&lt;T&gt;</li>
217
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/LinkedKeyBinding.html">LinkedKeyBinding</a>&lt;T&gt;</li>
218
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/PrivateElements.html">PrivateElements</a></li>
219
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ProviderBinding.html">ProviderBinding</a>&lt;T&nbsp;extends&nbsp;<a href="../../../../com/google/inject/Provider.html">Provider</a>&lt;?&gt;&gt;</li>
220
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ProviderInstanceBinding.html">ProviderInstanceBinding</a>&lt;T&gt;</li>
221
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ProviderKeyBinding.html">ProviderKeyBinding</a>&lt;T&gt;</li>
222
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ProviderWithDependencies.html">ProviderWithDependencies</a>&lt;T&gt;</li>
223
 
          <li class="selected api apilevel-Guice_3.0"><a href="../../../../com/google/inject/spi/ProviderWithExtensionVisitor.html">ProviderWithExtensionVisitor</a>&lt;T&gt;</li>
224
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/TypeConverter.html">TypeConverter</a></li>
225
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/TypeEncounter.html">TypeEncounter</a>&lt;I&gt;</li>
226
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/TypeListener.html">TypeListener</a></li>
227
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/UntargettedBinding.html">UntargettedBinding</a>&lt;T&gt;</li>
228
 
      </ul>
229
 
    </li>
230
 
              
231
 
    <li><h2>Classes</h2>
232
 
      <ul>
233
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/DefaultBindingScopingVisitor.html">DefaultBindingScopingVisitor</a>&lt;V&gt;</li>
234
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/DefaultBindingTargetVisitor.html">DefaultBindingTargetVisitor</a>&lt;T,&nbsp;V&gt;</li>
235
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/DefaultElementVisitor.html">DefaultElementVisitor</a>&lt;V&gt;</li>
236
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/Dependency.html">Dependency</a>&lt;T&gt;</li>
237
 
          <li class="api apilevel-Guice_3.0"><a href="../../../../com/google/inject/spi/DisableCircularProxiesOption.html">DisableCircularProxiesOption</a></li>
238
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/Elements.html">Elements</a></li>
239
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/InjectionPoint.html">InjectionPoint</a></li>
240
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/InjectionRequest.html">InjectionRequest</a>&lt;T&gt;</li>
241
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/InterceptorBinding.html">InterceptorBinding</a></li>
242
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/MembersInjectorLookup.html">MembersInjectorLookup</a>&lt;T&gt;</li>
243
 
          <li class="api apilevel-Guice_1.0"><a href="../../../../com/google/inject/spi/Message.html">Message</a></li>
244
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ProviderLookup.html">ProviderLookup</a>&lt;T&gt;</li>
245
 
          <li class="api apilevel-Guice_3.0"><a href="../../../../com/google/inject/spi/RequireExplicitBindingsOption.html">RequireExplicitBindingsOption</a></li>
246
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/ScopeBinding.html">ScopeBinding</a></li>
247
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/StaticInjectionRequest.html">StaticInjectionRequest</a></li>
248
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/TypeConverterBinding.html">TypeConverterBinding</a></li>
249
 
          <li class="api apilevel-Guice_2.0"><a href="../../../../com/google/inject/spi/TypeListenerBinding.html">TypeListenerBinding</a></li>
250
 
      </ul>
251
 
    </li>
252
 
              
253
 
    <li><h2>Annotations</h2>
254
 
      <ul>
255
 
          <li class="api apilevel-Guice_3.0"><a href="../../../../com/google/inject/spi/Toolable.html">Toolable</a></li>
256
 
      </ul>
257
 
    </li>
258
 
              
259
 
              
260
 
              
261
 
            </ul><br/>
262
 
          </div><!-- end classes -->
263
 
        </div><!-- end nav-panels -->
264
 
        <div id="nav-tree" style="display:none">
265
 
          <div id="index-links"><nobr>
266
 
            <a href="../../../../packages.html"  >Package Index</a> | 
267
 
            <a href="../../../../classes.html" >Class Index</a></nobr>
268
 
          </div>
269
 
        </div><!-- end nav-tree -->
270
 
      </div><!-- end swapper -->
271
 
    </div> <!-- end side-nav -->
272
 
    <script>
273
 
      if (!isMobile) {
274
 
        $("<a href='#' id='nav-swap' onclick='swapNav();return false;' style='font-size:10px;line-height:9px;margin-left:1em;text-decoration:none;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>").appendTo("#side-nav");
275
 
        chooseDefaultNav();
276
 
        if ($("#nav-tree").is(':visible')) {
277
 
          init_default_navtree("../../../../");
278
 
        } else {
279
 
          addLoadEvent(function() {
280
 
            scrollIntoView("packages-nav");
281
 
            scrollIntoView("classes-nav");
282
 
          });
283
 
        }
284
 
        $("#swapper").css({borderBottom:"2px solid #aaa"});
285
 
      } else {
286
 
        swapNav(); // tree view should be used on mobile
287
 
      }
288
 
    </script>
289
 
 
290
 
 
291
 
 
292
 
<div class="g-unit" id="doc-content">
293
 
 
294
 
<div id="api-info-block">
295
 
 
296
 
 
297
 
 
298
 
  
299
 
   
300
 
  
301
 
  
302
 
  
303
 
  
304
 
 
305
 
  
306
 
   
307
 
  
308
 
  
309
 
  
310
 
  
311
 
 
312
 
 
313
 
<div class="sum-details-links">
314
 
 
315
 
Summary:
316
 
 
317
 
 
318
 
 
319
 
 
320
 
 
321
 
 
322
 
 
323
 
 
324
 
 
325
 
 
326
 
 
327
 
  <a href="#pubmethods">Methods</a>
328
 
  
329
 
 
330
 
 
331
 
 
332
 
  &#124; <a href="#inhmethods">Inherited Methods</a>
333
 
 
334
 
&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
335
 
 
336
 
</div><!-- end sum-details-links -->
337
 
<div class="api-level">
338
 
  
339
 
 
340
 
  Since: <a href="../../../../guide/appendix/api-levels.html#levelGuice_3.0">API Level Guice_3.0</a>
341
 
 
342
 
 
343
 
  
344
 
  
345
 
 
346
 
</div>
347
 
</div><!-- end api-info-block -->
348
 
 
349
 
 
350
 
<!-- ======== START OF CLASS DATA ======== -->
351
 
 
352
 
<div id="jd-header">
353
 
    public
354
 
     
355
 
     
356
 
    
357
 
    interface
358
 
<h1>ProviderWithExtensionVisitor</h1>
359
 
 
360
 
 
361
 
 
362
 
  
363
 
  
364
 
      implements 
365
 
      
366
 
        <a href="../../../../com/google/inject/Provider.html">Provider</a>&lt;T&gt; 
367
 
      
368
 
  
369
 
  
370
 
 
371
 
 
372
 
</div><!-- end header -->
373
 
 
374
 
<div id="naMessage"></div>
375
 
 
376
 
<div id="jd-content" class="api apilevel-Guice_3.0">
377
 
<table class="jd-inheritance-table">
378
 
 
379
 
 
380
 
    <tr>
381
 
                
382
 
        <td colspan="1" class="jd-inheritance-class-cell">com.google.inject.spi.ProviderWithExtensionVisitor&lt;T&gt;</td>
383
 
    </tr>
384
 
    
385
 
 
386
 
</table>
387
 
 
388
 
 
389
 
 
390
 
 
391
 
 
392
 
 
393
 
 
394
 
<div class="jd-descr">
395
 
 
396
 
 
397
 
<h2>Class Overview</h2>
398
 
<p>A Provider that is part of an extension which supports a custom
399
 
 BindingTargetVisitor.
400
 
 <p> 
401
 
 When an extension binds a provider instance, the provider can implement this
402
 
 interface to allow users using the
403
 
 <code><a href="../../../../com/google/inject/Binding.html#acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<? super T, V>)">acceptTargetVisitor(BindingTargetVisitor)</a></code> method to visit a
404
 
 custom visitor designed for that extension. A typical implementation within
405
 
 the extension would look like
406
 
 <pre> 
407
 
 &lt;V, B> V acceptExtensionVisitor(BindingTargetVisitor&lt;B, V> visitor, ProviderInstanceBinding&lt;? extends B> binding) {
408
 
   if(visitor instanceof MyCustomExtensionVisitor) {
409
 
     return ((MyCustomExtensionVisitor&lt;B, V>)visitor).visitCustomExtension(customProperties, binding);
410
 
   } else {
411
 
     return visitor.visit(binding);
412
 
   }
413
 
 }</pre> 
414
 
 'MyCustomExtensionVisitor' in the example above would be an interface the
415
 
 extension provides that users can implement in order to be notified of custom
416
 
 extension information. These visitor interfaces must extend from
417
 
 BindingTargetVisitor.</p>
418
 
 
419
 
 
420
 
 
421
 
 
422
 
 
423
 
</div><!-- jd-descr -->
424
 
 
425
 
 
426
 
 
427
 
 
428
 
 
429
 
 
430
 
 
431
 
 
432
 
 
433
 
 
434
 
 
435
 
 
436
 
 
437
 
 
438
 
 
439
 
 
440
 
<div class="jd-descr">
441
 
 
442
 
 
443
 
<h2>Summary</h2>
444
 
 
445
 
 
446
 
 
447
 
 
448
 
 
449
 
 
450
 
 
451
 
 
452
 
 
453
 
 
454
 
 
455
 
 
456
 
 
457
 
 
458
 
 
459
 
 
460
 
 
461
 
 
462
 
 
463
 
 
464
 
 
465
 
 
466
 
 
467
 
 
468
 
 
469
 
 
470
 
 
471
 
<!-- ========== METHOD SUMMARY =========== -->
472
 
<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
473
 
 
474
 
 
475
 
 
476
 
         
477
 
    <tr class="alt-color api apilevel-Guice_3.0" >
478
 
        <td class="jd-typecol"><nobr>
479
 
            abstract
480
 
            
481
 
            
482
 
            
483
 
            &lt;B,&nbsp;V&gt;
484
 
            V</nobr>
485
 
        </td>
486
 
        <td class="jd-linkcol" width="100%"><nobr>
487
 
        <span class="sympad"><a href="../../../../com/google/inject/spi/ProviderWithExtensionVisitor.html#acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor<B, V>, com.google.inject.spi.ProviderInstanceBinding<? extends B>)">acceptExtensionVisitor</a></span>(<a href="../../../../com/google/inject/spi/BindingTargetVisitor.html">BindingTargetVisitor</a>&lt;B,&nbsp;V&gt; visitor, <a href="../../../../com/google/inject/spi/ProviderInstanceBinding.html">ProviderInstanceBinding</a>&lt;?&nbsp;extends&nbsp;B&gt; binding)</nobr>
488
 
        
489
 
        <div class="jd-descrdiv">Instructs the extension determine if the visitor is an instance of a custom
490
 
 extension visitor, and if so, visit it using that method.</div>
491
 
  
492
 
  </td></tr>
493
 
 
494
 
 
495
 
 
496
 
</table>
497
 
 
498
 
 
499
 
 
500
 
 
501
 
 
502
 
 
503
 
 
504
 
<!-- ========== METHOD SUMMARY =========== -->
505
 
<table id="inhmethods" class="jd-sumtable"><tr><th>
506
 
  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
507
 
  <div style="clear:left;">Inherited Methods</div></th></tr>
508
 
 
509
 
 
510
 
<tr class="api apilevel-" >
511
 
<td colspan="12">
512
 
  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-com.google.inject.Provider" class="jd-expando-trigger closed"
513
 
          ><img id="inherited-methods-com.google.inject.Provider-trigger"
514
 
          src="../../../../../javadoc/assets/images/triangle-closed.png"
515
 
          class="jd-expando-trigger-img" /></a>
516
 
From interface
517
 
 
518
 
  <a href="../../../../com/google/inject/Provider.html">com.google.inject.Provider</a>
519
 
 
520
 
<div id="inherited-methods-com.google.inject.Provider">
521
 
  <div id="inherited-methods-com.google.inject.Provider-list"
522
 
        class="jd-inheritedlinks">
523
 
  </div>
524
 
  <div id="inherited-methods-com.google.inject.Provider-summary" style="display: none;">
525
 
    <table class="jd-sumtable-expando">
526
 
    
527
 
 
528
 
 
529
 
         
530
 
    <tr class="alt-color api apilevel-Guice_1.0" >
531
 
        <td class="jd-typecol"><nobr>
532
 
            abstract
533
 
            
534
 
            
535
 
            
536
 
            
537
 
            T</nobr>
538
 
        </td>
539
 
        <td class="jd-linkcol" width="100%"><nobr>
540
 
        <span class="sympad"><a href="../../../../com/google/inject/Provider.html#get()">get</a></span>()</nobr>
541
 
        
542
 
        <div class="jd-descrdiv">Provides an instance of <code>T</code>.</div>
543
 
  
544
 
  </td></tr>
545
 
 
546
 
 
547
 
</table>
548
 
  </div>
549
 
</div>
550
 
</td></tr>
551
 
 
552
 
 
553
 
 
554
 
<tr class="api apilevel-" >
555
 
<td colspan="12">
556
 
  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-javax.inject.Provider" class="jd-expando-trigger closed"
557
 
          ><img id="inherited-methods-javax.inject.Provider-trigger"
558
 
          src="../../../../../javadoc/assets/images/triangle-closed.png"
559
 
          class="jd-expando-trigger-img" /></a>
560
 
From interface
561
 
 
562
 
  javax.inject.Provider
563
 
 
564
 
<div id="inherited-methods-javax.inject.Provider">
565
 
  <div id="inherited-methods-javax.inject.Provider-list"
566
 
        class="jd-inheritedlinks">
567
 
  </div>
568
 
  <div id="inherited-methods-javax.inject.Provider-summary" style="display: none;">
569
 
    <table class="jd-sumtable-expando">
570
 
    
571
 
 
572
 
 
573
 
         
574
 
    <tr class="alt-color api apilevel-" >
575
 
        <td class="jd-typecol"><nobr>
576
 
            abstract
577
 
            
578
 
            
579
 
            
580
 
            
581
 
            T</nobr>
582
 
        </td>
583
 
        <td class="jd-linkcol" width="100%"><nobr>
584
 
        <span class="sympad">get</span>()</nobr>
585
 
        
586
 
  </td></tr>
587
 
 
588
 
 
589
 
</table>
590
 
  </div>
591
 
</div>
592
 
</td></tr>
593
 
 
594
 
 
595
 
</table>
596
 
 
597
 
 
598
 
</div><!-- jd-descr (summary) -->
599
 
 
600
 
<!-- Details -->
601
 
 
602
 
 
603
 
 
604
 
 
605
 
 
606
 
 
607
 
 
608
 
 
609
 
<!-- XML Attributes -->
610
 
 
611
 
 
612
 
<!-- Enum Values -->
613
 
 
614
 
 
615
 
<!-- Constants -->
616
 
 
617
 
 
618
 
<!-- Fields -->
619
 
 
620
 
 
621
 
<!-- Public ctors -->
622
 
 
623
 
 
624
 
 
625
 
<!-- ========= CONSTRUCTOR DETAIL ======== -->
626
 
<!-- Protected ctors -->
627
 
 
628
 
 
629
 
 
630
 
<!-- ========= METHOD DETAIL ======== -->
631
 
<!-- Public methdos -->
632
 
 
633
 
<h2>Public Methods</h2>
634
 
 
635
 
 
636
 
 
637
 
<A NAME="acceptExtensionVisitor(com.google.inject.spi.BindingTargetVisitor<B, V>, com.google.inject.spi.ProviderInstanceBinding<? extends B>)"></A>
638
 
 
639
 
<div class="jd-details api apilevel-Guice_3.0"> 
640
 
    <h4 class="jd-details-title">
641
 
      <span class="normal">
642
 
        public 
643
 
         
644
 
         
645
 
        abstract 
646
 
         
647
 
        V
648
 
      </span>
649
 
      <span class="sympad">acceptExtensionVisitor</span>
650
 
      <span class="normal">(<a href="../../../../com/google/inject/spi/BindingTargetVisitor.html">BindingTargetVisitor</a>&lt;B,&nbsp;V&gt; visitor, <a href="../../../../com/google/inject/spi/ProviderInstanceBinding.html">ProviderInstanceBinding</a>&lt;?&nbsp;extends&nbsp;B&gt; binding)</span>
651
 
    </h4>
652
 
      <div class="api-level">
653
 
        <div>
654
 
 
655
 
  Since: <a href="../../../../guide/appendix/api-levels.html#levelGuice_3.0">API Level Guice_3.0</a>
656
 
 
657
 
</div>
658
 
        
659
 
  
660
 
 
661
 
      </div>
662
 
    <div class="jd-details-descr">
663
 
      
664
 
  <div class="jd-tagdata jd-tagdescr"><p>Instructs the extension determine if the visitor is an instance of a custom
665
 
 extension visitor, and if so, visit it using that method. If the visitor is
666
 
 not an instance of the custom extension visitor, this method <b>MUST</b>
667
 
 call visitor.visit(binding).
668
 
 <p> 
669
 
 Due to issues with generics, the type parameters of this method do not
670
 
 relate to the type of the provider. In practice, the 'B' type will always
671
 
 be a supertype of 'T'.
672
 
</p></div>
673
 
 
674
 
    </div>
675
 
</div>
676
 
 
677
 
 
678
 
 
679
 
 
680
 
 
681
 
<!-- ========= METHOD DETAIL ======== -->
682
 
 
683
 
 
684
 
 
685
 
<!-- ========= END OF CLASS DATA ========= -->
686
 
<A NAME="navbar_top"></A>
687
 
 
688
 
<div id="footer">
689
 
Generated by <a href="http://code.google.com/p/doclava/">Doclava</a>.
690
 
</div> <!-- end footer -->
691
 
 
692
 
</div> <!-- jd-content -->
693
 
 
694
 
</div><!-- end doc-content -->
695
 
 
696
 
</div> <!-- end body-content --> 
697
 
 
698
 
<script type="text/javascript">
699
 
init(); /* initialize android-developer-docs.js */
700
 
</script>
701
 
 
702
 
</body>
703
 
</html>
 
1
<html><head><title>Guice has moved to GitHub, redirecting...</title>
 
2
<meta http-equiv="refresh" content="0;URL='http://google.github.io/guice/api-docs/latest/javadoc/index.html?com/google/inject/spi/ProviderWithExtensionVisitor.html'"/>
 
3
</head><body><p>Guice has moved to GitHub.  Redirecting to <a href="http://google.github.io/guice/api-docs/latest/javadoc/index.html?com/google/inject/spi/ProviderWithExtensionVisitor.html">http://google.github.io/guice/api-docs/latest/javadoc/index.html?com/google/inject/spi/ProviderWithExtensionVisitor.html</a>.</p></body></html>