1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<!-- NewPage --> 3<html lang="en"> 4<head> 5<!-- Generated by javadoc (1.8.0_162) on Wed Sep 25 19:26:35 PDT 2019 --> 6<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 7<title>ObjectIdResolver (Jackson-annotations 2.10.0 API)</title> 8<meta name="date" content="2019-09-25"> 9<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> 10<script type="text/javascript" src="../../../../script.js"></script> 11</head> 12<body> 13<script type="text/javascript"><!-- 14 try { 15 if (location.href.indexOf('is-external=true') == -1) { 16 parent.document.title="ObjectIdResolver (Jackson-annotations 2.10.0 API)"; 17 } 18 } 19 catch(err) { 20 } 21//--> 22var methods = {"i0":6,"i1":6,"i2":6,"i3":6}; 23var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; 24var altColor = "altColor"; 25var rowColor = "rowColor"; 26var tableTab = "tableTab"; 27var activeTableTab = "activeTableTab"; 28</script> 29<noscript> 30<div>JavaScript is disabled on your browser.</div> 31</noscript> 32<!-- ========= START OF TOP NAVBAR ======= --> 33<div class="topNav"><a name="navbar.top"> 34<!-- --> 35</a> 36<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> 37<a name="navbar.top.firstrow"> 38<!-- --> 39</a> 40<ul class="navList" title="Navigation"> 41<li><a href="../../../../com/fasterxml/jackson/annotation/package-summary.html">Package</a></li> 42<li class="navBarCell1Rev">Class</li> 43<li><a href="class-use/ObjectIdResolver.html">Use</a></li> 44<li><a href="package-tree.html">Tree</a></li> 45<li><a href="../../../../deprecated-list.html">Deprecated</a></li> 46<li><a href="../../../../index-all.html">Index</a></li> 47<li><a href="../../../../help-doc.html">Help</a></li> 48</ul> 49</div> 50<div class="subNav"> 51<ul class="navList"> 52<li><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdGenerators.UUIDGenerator.html" title="class in com.fasterxml.jackson.annotation"><span class="typeNameLink">Prev Class</span></a></li> 53<li><a href="../../../../com/fasterxml/jackson/annotation/OptBoolean.html" title="enum in com.fasterxml.jackson.annotation"><span class="typeNameLink">Next Class</span></a></li> 54</ul> 55<ul class="navList"> 56<li><a href="../../../../index.html?com/fasterxml/jackson/annotation/ObjectIdResolver.html" target="_top">Frames</a></li> 57<li><a href="ObjectIdResolver.html" target="_top">No Frames</a></li> 58</ul> 59<ul class="navList" id="allclasses_navbar_top"> 60<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> 61</ul> 62<div> 63<script type="text/javascript"><!-- 64 allClassesLink = document.getElementById("allclasses_navbar_top"); 65 if(window==top) { 66 allClassesLink.style.display = "block"; 67 } 68 else { 69 allClassesLink.style.display = "none"; 70 } 71 //--> 72</script> 73</div> 74<div> 75<ul class="subNavList"> 76<li>Summary: </li> 77<li>Nested | </li> 78<li>Field | </li> 79<li>Constr | </li> 80<li><a href="#method.summary">Method</a></li> 81</ul> 82<ul class="subNavList"> 83<li>Detail: </li> 84<li>Field | </li> 85<li>Constr | </li> 86<li><a href="#method.detail">Method</a></li> 87</ul> 88</div> 89<a name="skip.navbar.top"> 90<!-- --> 91</a></div> 92<!-- ========= END OF TOP NAVBAR ========= --> 93<!-- ======== START OF CLASS DATA ======== --> 94<div class="header"> 95<div class="subTitle">com.fasterxml.jackson.annotation</div> 96<h2 title="Interface ObjectIdResolver" class="title">Interface ObjectIdResolver</h2> 97</div> 98<div class="contentContainer"> 99<div class="description"> 100<ul class="blockList"> 101<li class="blockList"> 102<dl> 103<dt>All Known Implementing Classes:</dt> 104<dd><a href="../../../../com/fasterxml/jackson/annotation/SimpleObjectIdResolver.html" title="class in com.fasterxml.jackson.annotation">SimpleObjectIdResolver</a></dd> 105</dl> 106<hr> 107<br> 108<pre>public interface <span class="typeNameLabel">ObjectIdResolver</span></pre> 109<div class="block">Definition of API used for resolving actual Java object from 110 Object Identifiers (as annotated using <a href="../../../../com/fasterxml/jackson/annotation/JsonIdentityInfo.html" title="annotation in com.fasterxml.jackson.annotation"><code>JsonIdentityInfo</code></a>).</div> 111<dl> 112<dt><span class="simpleTagLabel">Since:</span></dt> 113<dd>2.4</dd> 114</dl> 115</li> 116</ul> 117</div> 118<div class="summary"> 119<ul class="blockList"> 120<li class="blockList"> 121<!-- ========== METHOD SUMMARY =========== --> 122<ul class="blockList"> 123<li class="blockList"><a name="method.summary"> 124<!-- --> 125</a> 126<h3>Method Summary</h3> 127<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> 128<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span></caption> 129<tr> 130<th class="colFirst" scope="col">Modifier and Type</th> 131<th class="colLast" scope="col">Method and Description</th> 132</tr> 133<tr id="i0" class="altColor"> 134<td class="colFirst"><code>void</code></td> 135<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html#bindItem-com.fasterxml.jackson.annotation.ObjectIdGenerator.IdKey-java.lang.Object-">bindItem</a></span>(<a href="../../../../com/fasterxml/jackson/annotation/ObjectIdGenerator.IdKey.html" title="class in com.fasterxml.jackson.annotation">ObjectIdGenerator.IdKey</a> id, 136 <a href="https://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> pojo)</code> 137<div class="block">Method called when a POJO is deserialized and has an Object Identifier.</div> 138</td> 139</tr> 140<tr id="i1" class="rowColor"> 141<td class="colFirst"><code>boolean</code></td> 142<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html#canUseFor-com.fasterxml.jackson.annotation.ObjectIdResolver-">canUseFor</a></span>(<a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html" title="interface in com.fasterxml.jackson.annotation">ObjectIdResolver</a> resolverType)</code> 143<div class="block">Method called to check whether this resolver instance can be used for 144 Object Ids of specific resolver type; determination is based by passing a 145 configured "blueprint" (prototype) instance; from which the actual 146 instances are created (using <a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html#newForDeserialization-java.lang.Object-"><code>newForDeserialization(java.lang.Object)</code></a>).</div> 147</td> 148</tr> 149<tr id="i2" class="altColor"> 150<td class="colFirst"><code><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html" title="interface in com.fasterxml.jackson.annotation">ObjectIdResolver</a></code></td> 151<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html#newForDeserialization-java.lang.Object-">newForDeserialization</a></span>(<a href="https://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> context)</code> 152<div class="block">Factory method called to create a new instance to use for 153 deserialization: needed since resolvers may have state (a pool of 154 objects).</div> 155</td> 156</tr> 157<tr id="i3" class="rowColor"> 158<td class="colFirst"><code><a href="https://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> 159<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html#resolveId-com.fasterxml.jackson.annotation.ObjectIdGenerator.IdKey-">resolveId</a></span>(<a href="../../../../com/fasterxml/jackson/annotation/ObjectIdGenerator.IdKey.html" title="class in com.fasterxml.jackson.annotation">ObjectIdGenerator.IdKey</a> id)</code> 160<div class="block">Method called when deserialization encounters the given Object Identifier 161 and requires the POJO associated with it.</div> 162</td> 163</tr> 164</table> 165</li> 166</ul> 167</li> 168</ul> 169</div> 170<div class="details"> 171<ul class="blockList"> 172<li class="blockList"> 173<!-- ============ METHOD DETAIL ========== --> 174<ul class="blockList"> 175<li class="blockList"><a name="method.detail"> 176<!-- --> 177</a> 178<h3>Method Detail</h3> 179<a name="bindItem-com.fasterxml.jackson.annotation.ObjectIdGenerator.IdKey-java.lang.Object-"> 180<!-- --> 181</a> 182<ul class="blockList"> 183<li class="blockList"> 184<h4>bindItem</h4> 185<pre>void bindItem(<a href="../../../../com/fasterxml/jackson/annotation/ObjectIdGenerator.IdKey.html" title="class in com.fasterxml.jackson.annotation">ObjectIdGenerator.IdKey</a> id, 186 <a href="https://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> pojo)</pre> 187<div class="block">Method called when a POJO is deserialized and has an Object Identifier. 188 Method exists so that implementation can keep track of existing object in 189 JSON stream that could be useful for further resolution.</div> 190<dl> 191<dt><span class="paramLabel">Parameters:</span></dt> 192<dd><code>id</code> - The Object Identifer</dd> 193<dd><code>pojo</code> - The POJO associated to that Identifier</dd> 194</dl> 195</li> 196</ul> 197<a name="resolveId-com.fasterxml.jackson.annotation.ObjectIdGenerator.IdKey-"> 198<!-- --> 199</a> 200<ul class="blockList"> 201<li class="blockList"> 202<h4>resolveId</h4> 203<pre><a href="https://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> resolveId(<a href="../../../../com/fasterxml/jackson/annotation/ObjectIdGenerator.IdKey.html" title="class in com.fasterxml.jackson.annotation">ObjectIdGenerator.IdKey</a> id)</pre> 204<div class="block">Method called when deserialization encounters the given Object Identifier 205 and requires the POJO associated with it.</div> 206<dl> 207<dt><span class="paramLabel">Parameters:</span></dt> 208<dd><code>id</code> - The Object Identifier</dd> 209<dt><span class="returnLabel">Returns:</span></dt> 210<dd>The POJO, or null if unable to resolve.</dd> 211</dl> 212</li> 213</ul> 214<a name="newForDeserialization-java.lang.Object-"> 215<!-- --> 216</a> 217<ul class="blockList"> 218<li class="blockList"> 219<h4>newForDeserialization</h4> 220<pre><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html" title="interface in com.fasterxml.jackson.annotation">ObjectIdResolver</a> newForDeserialization(<a href="https://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> context)</pre> 221<div class="block">Factory method called to create a new instance to use for 222 deserialization: needed since resolvers may have state (a pool of 223 objects). 224 <p> 225 Note that actual type of 'context' is 226 <code>com.fasterxml.jackson.databind.DeserializationContext</code>, but 227 can not be declared here as type itself (as well as call to this object) 228 comes from databind package.</div> 229<dl> 230<dt><span class="paramLabel">Parameters:</span></dt> 231<dd><code>context</code> - Deserialization context object used (of type 232 <code>com.fasterxml.jackson.databind.DeserializationContext</code> 233 ; may be needed by more complex resolvers to access contextual 234 information such as configuration.</dd> 235</dl> 236</li> 237</ul> 238<a name="canUseFor-com.fasterxml.jackson.annotation.ObjectIdResolver-"> 239<!-- --> 240</a> 241<ul class="blockListLast"> 242<li class="blockList"> 243<h4>canUseFor</h4> 244<pre>boolean canUseFor(<a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html" title="interface in com.fasterxml.jackson.annotation">ObjectIdResolver</a> resolverType)</pre> 245<div class="block">Method called to check whether this resolver instance can be used for 246 Object Ids of specific resolver type; determination is based by passing a 247 configured "blueprint" (prototype) instance; from which the actual 248 instances are created (using <a href="../../../../com/fasterxml/jackson/annotation/ObjectIdResolver.html#newForDeserialization-java.lang.Object-"><code>newForDeserialization(java.lang.Object)</code></a>).</div> 249<dl> 250<dt><span class="returnLabel">Returns:</span></dt> 251<dd>True if this instance can be used as-is; false if not</dd> 252</dl> 253</li> 254</ul> 255</li> 256</ul> 257</li> 258</ul> 259</div> 260</div> 261<!-- ========= END OF CLASS DATA ========= --> 262<!-- ======= START OF BOTTOM NAVBAR ====== --> 263<div class="bottomNav"><a name="navbar.bottom"> 264<!-- --> 265</a> 266<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> 267<a name="navbar.bottom.firstrow"> 268<!-- --> 269</a> 270<ul class="navList" title="Navigation"> 271<li><a href="../../../../com/fasterxml/jackson/annotation/package-summary.html">Package</a></li> 272<li class="navBarCell1Rev">Class</li> 273<li><a href="class-use/ObjectIdResolver.html">Use</a></li> 274<li><a href="package-tree.html">Tree</a></li> 275<li><a href="../../../../deprecated-list.html">Deprecated</a></li> 276<li><a href="../../../../index-all.html">Index</a></li> 277<li><a href="../../../../help-doc.html">Help</a></li> 278</ul> 279</div> 280<div class="subNav"> 281<ul class="navList"> 282<li><a href="../../../../com/fasterxml/jackson/annotation/ObjectIdGenerators.UUIDGenerator.html" title="class in com.fasterxml.jackson.annotation"><span class="typeNameLink">Prev Class</span></a></li> 283<li><a href="../../../../com/fasterxml/jackson/annotation/OptBoolean.html" title="enum in com.fasterxml.jackson.annotation"><span class="typeNameLink">Next Class</span></a></li> 284</ul> 285<ul class="navList"> 286<li><a href="../../../../index.html?com/fasterxml/jackson/annotation/ObjectIdResolver.html" target="_top">Frames</a></li> 287<li><a href="ObjectIdResolver.html" target="_top">No Frames</a></li> 288</ul> 289<ul class="navList" id="allclasses_navbar_bottom"> 290<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> 291</ul> 292<div> 293<script type="text/javascript"><!-- 294 allClassesLink = document.getElementById("allclasses_navbar_bottom"); 295 if(window==top) { 296 allClassesLink.style.display = "block"; 297 } 298 else { 299 allClassesLink.style.display = "none"; 300 } 301 //--> 302</script> 303</div> 304<div> 305<ul class="subNavList"> 306<li>Summary: </li> 307<li>Nested | </li> 308<li>Field | </li> 309<li>Constr | </li> 310<li><a href="#method.summary">Method</a></li> 311</ul> 312<ul class="subNavList"> 313<li>Detail: </li> 314<li>Field | </li> 315<li>Constr | </li> 316<li><a href="#method.detail">Method</a></li> 317</ul> 318</div> 319<a name="skip.navbar.bottom"> 320<!-- --> 321</a></div> 322<!-- ======== END OF BOTTOM NAVBAR ======= --> 323<p class="legalCopy"><small>Copyright © 2008–2019 <a href="http://fasterxml.com/">FasterXML</a>. All rights reserved.</small></p> 324</body> 325</html> 326