1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<!--NewPage-->
3<HTML>
4<HEAD>
5<!-- Generated by javadoc (build 1.6.0_29) on Mon Mar 26 19:07:13 PDT 2012 -->
6<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
7<TITLE>
8DeserializerCache (jackson-databind 2.0.0 API)
9</TITLE>
10
11<META NAME="date" CONTENT="2012-03-26">
12
13<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
14
15<SCRIPT type="text/javascript">
16function windowTitle()
17{
18    if (location.href.indexOf('is-external=true') == -1) {
19        parent.document.title="DeserializerCache (jackson-databind 2.0.0 API)";
20    }
21}
22</SCRIPT>
23<NOSCRIPT>
24</NOSCRIPT>
25
26</HEAD>
27
28<BODY BGCOLOR="white" onload="windowTitle();">
29<HR>
30
31
32<!-- ========= START OF TOP NAVBAR ======= -->
33<A NAME="navbar_top"><!-- --></A>
34<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
35<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
36<TR>
37<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
38<A NAME="navbar_top_firstrow"><!-- --></A>
39<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
40  <TR ALIGN="center" VALIGN="top">
41  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
42  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
43  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
44  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/DeserializerCache.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
45  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
46  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
47  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
48  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
49  </TR>
50</TABLE>
51</TD>
52<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
53</EM>
54</TD>
55</TR>
56
57<TR>
58<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
59&nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializationProblemHandler.html" title="class in com.fasterxml.jackson.databind.deser"><B>PREV CLASS</B></A>&nbsp;
60&nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser"><B>NEXT CLASS</B></A></FONT></TD>
61<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
62  <A HREF="../../../../../index.html?com/fasterxml/jackson/databind/deser/DeserializerCache.html" target="_top"><B>FRAMES</B></A>  &nbsp;
63&nbsp;<A HREF="DeserializerCache.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
64&nbsp;<SCRIPT type="text/javascript">
65  <!--
66  if(window==top) {
67    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
68  }
69  //-->
70</SCRIPT>
71<NOSCRIPT>
72  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
73</NOSCRIPT>
74
75
76</FONT></TD>
77</TR>
78<TR>
79<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
80  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
81<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
82DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
83</TR>
84</TABLE>
85<A NAME="skip-navbar_top"></A>
86<!-- ========= END OF TOP NAVBAR ========= -->
87
88<HR>
89<!-- ======== START OF CLASS DATA ======== -->
90<H2>
91<FONT SIZE="-1">
92com.fasterxml.jackson.databind.deser</FONT>
93<BR>
94Class DeserializerCache</H2>
95<PRE>
96<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
97  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>com.fasterxml.jackson.databind.deser.DeserializerCache</B>
98</PRE>
99<HR>
100<DL>
101<DT><PRE>public final class <B>DeserializerCache</B><DT>extends <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></DL>
102</PRE>
103
104<P>
105Class that defines caching layer between callers (like
106 <A HREF="../../../../../com/fasterxml/jackson/databind/ObjectMapper.html" title="class in com.fasterxml.jackson.databind"><CODE>ObjectMapper</CODE></A>,
107 <A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind"><CODE>DeserializationContext</CODE></A>)
108 and classes that construct deserializers
109 (<A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser"><CODE>DeserializerFactory</CODE></A>).
110<P>
111
112<P>
113<HR>
114
115<P>
116<!-- =========== FIELD SUMMARY =========== -->
117
118<A NAME="field_summary"><!-- --></A>
119<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
120<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
121<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
122<B>Field Summary</B></FONT></TH>
123</TR>
124<TR BGCOLOR="white" CLASS="TableRowColor">
125<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
126<CODE>protected &nbsp;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</A>&lt;<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>,<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;&gt;</CODE></FONT></TD>
127<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_cachedDeserializers">_cachedDeserializers</A></B></CODE>
128
129<BR>
130&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;We will also cache some dynamically constructed deserializers;
131 specifically, ones that are expensive to construct.</TD>
132</TR>
133<TR BGCOLOR="white" CLASS="TableRowColor">
134<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
135<CODE>protected &nbsp;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</A>&lt;<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>,<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;&gt;</CODE></FONT></TD>
136<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_incompleteDeserializers">_incompleteDeserializers</A></B></CODE>
137
138<BR>
139&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;During deserializer construction process we may need to keep track of partially
140 completed deserializers, to resolve cyclic dependencies.</TD>
141</TR>
142</TABLE>
143&nbsp;
144<!-- ======== CONSTRUCTOR SUMMARY ======== -->
145
146<A NAME="constructor_summary"><!-- --></A>
147<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
148<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
149<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
150<B>Constructor Summary</B></FONT></TH>
151</TR>
152<TR BGCOLOR="white" CLASS="TableRowColor">
153<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#DeserializerCache()">DeserializerCache</A></B>()</CODE>
154
155<BR>
156&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
157</TR>
158</TABLE>
159&nbsp;
160<!-- ========== METHOD SUMMARY =========== -->
161
162<A NAME="method_summary"><!-- --></A>
163<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
164<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
165<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
166<B>Method Summary</B></FONT></TH>
167</TR>
168<TR BGCOLOR="white" CLASS="TableRowColor">
169<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
170<CODE>protected &nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;</CODE></FONT></TD>
171<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_createAndCache2(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)">_createAndCache2</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
172                 <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
173                 <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
174
175<BR>
176&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method that handles actual construction (via factory) and caching (both
177 intermediate and eventual)</TD>
178</TR>
179<TR BGCOLOR="white" CLASS="TableRowColor">
180<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
181<CODE>protected &nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;</CODE></FONT></TD>
182<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_createAndCacheValueDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)">_createAndCacheValueDeserializer</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
183                                 <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
184                                 <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
185
186<BR>
187&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method that will try to create a deserializer for given type,
188 and resolve and cache it if necessary</TD>
189</TR>
190<TR BGCOLOR="white" CLASS="TableRowColor">
191<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
192<CODE>protected &nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;</CODE></FONT></TD>
193<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_createDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)">_createDeserializer</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
194                    <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
195                    <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
196
197<BR>
198&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method that does the heavy lifting of checking for per-type annotations,
199 find out full type, and figure out which actual factory method
200 to call.</TD>
201</TR>
202<TR BGCOLOR="white" CLASS="TableRowColor">
203<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
204<CODE>protected &nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;</CODE></FONT></TD>
205<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_findCachedDeserializer(com.fasterxml.jackson.databind.JavaType)">_findCachedDeserializer</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
206
207<BR>
208&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
209</TR>
210<TR BGCOLOR="white" CLASS="TableRowColor">
211<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
212<CODE>protected &nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/KeyDeserializer.html" title="class in com.fasterxml.jackson.databind">KeyDeserializer</A></CODE></FONT></TD>
213<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_handleUnknownKeyDeserializer(com.fasterxml.jackson.databind.JavaType)">_handleUnknownKeyDeserializer</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
214
215<BR>
216&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
217</TR>
218<TR BGCOLOR="white" CLASS="TableRowColor">
219<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
220<CODE>protected &nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;</CODE></FONT></TD>
221<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#_handleUnknownValueDeserializer(com.fasterxml.jackson.databind.JavaType)">_handleUnknownValueDeserializer</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
222
223<BR>
224&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
225</TR>
226<TR BGCOLOR="white" CLASS="TableRowColor">
227<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
228<CODE>&nbsp;int</CODE></FONT></TD>
229<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#cachedDeserializersCount()">cachedDeserializersCount</A></B>()</CODE>
230
231<BR>
232&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method that can be used to determine how many deserializers this
233 provider is caching currently
234 (if it does caching: default implementation does)
235 Exact count depends on what kind of deserializers get cached;
236 default implementation caches only dynamically constructed deserializers,
237 but not eagerly constructed standard deserializers (which is different
238 from how serializer provider works).</TD>
239</TR>
240<TR BGCOLOR="white" CLASS="TableRowColor">
241<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
242<CODE>protected &nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;</CODE></FONT></TD>
243<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#findDeserializerFromAnnotation(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.introspect.Annotated)">findDeserializerFromAnnotation</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
244                               <A HREF="../../../../../com/fasterxml/jackson/databind/introspect/Annotated.html" title="class in com.fasterxml.jackson.databind.introspect">Annotated</A>&nbsp;ann)</CODE>
245
246<BR>
247&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Helper method called to check if a class or method
248 has annotation that tells which class to use for deserialization.</TD>
249</TR>
250<TR BGCOLOR="white" CLASS="TableRowColor">
251<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
252<CODE>&nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/KeyDeserializer.html" title="class in com.fasterxml.jackson.databind">KeyDeserializer</A></CODE></FONT></TD>
253<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#findKeyDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)">findKeyDeserializer</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
254                    <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
255                    <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
256
257<BR>
258&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method called to get hold of a deserializer to use for deserializing
259 keys for <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><CODE>Map</CODE></A>.</TD>
260</TR>
261<TR BGCOLOR="white" CLASS="TableRowColor">
262<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
263<CODE>&nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;</CODE></FONT></TD>
264<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#findValueDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)">findValueDeserializer</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
265                      <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
266                      <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;propertyType)</CODE>
267
268<BR>
269&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method called to get hold of a deserializer for a value of given type;
270 or if no such deserializer can be found, a default handler (which
271 may do a best-effort generic serialization or just simply
272 throw an exception when invoked).</TD>
273</TR>
274<TR BGCOLOR="white" CLASS="TableRowColor">
275<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
276<CODE>&nbsp;void</CODE></FONT></TD>
277<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#flushCachedDeserializers()">flushCachedDeserializers</A></B>()</CODE>
278
279<BR>
280&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method that will drop all dynamically constructed deserializers (ones that
281 are counted as result value for <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#cachedDeserializersCount()"><CODE>cachedDeserializersCount()</CODE></A>).</TD>
282</TR>
283<TR BGCOLOR="white" CLASS="TableRowColor">
284<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
285<CODE>&nbsp;boolean</CODE></FONT></TD>
286<TD><CODE><B><A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#hasValueDeserializerFor(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)">hasValueDeserializerFor</A></B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
287                        <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
288                        <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</CODE>
289
290<BR>
291&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method called to find out whether provider would be able to find
292 a deserializer for given type, using a root reference (i.e.</TD>
293</TR>
294</TABLE>
295&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
296<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
297<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
298<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
299</TR>
300<TR BGCOLOR="white" CLASS="TableRowColor">
301<TD><CODE><A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
302</TR>
303</TABLE>
304&nbsp;
305<P>
306
307<!-- ============ FIELD DETAIL =========== -->
308
309<A NAME="field_detail"><!-- --></A>
310<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
311<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
312<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
313<B>Field Detail</B></FONT></TH>
314</TR>
315</TABLE>
316
317<A NAME="_cachedDeserializers"><!-- --></A><H3>
318_cachedDeserializers</H3>
319<PRE>
320protected final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</A>&lt;<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>,<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;&gt; <B>_cachedDeserializers</B></PRE>
321<DL>
322<DD>We will also cache some dynamically constructed deserializers;
323 specifically, ones that are expensive to construct.
324 This currently means bean and Enum deserializers; array, List and Map
325 deserializers will not be cached.
326<p>
327 Given that we don't expect much concurrency for additions
328 (should very quickly converge to zero after startup), let's
329 explicitly define a low concurrency setting.
330<P>
331<DL>
332</DL>
333</DL>
334<HR>
335
336<A NAME="_incompleteDeserializers"><!-- --></A><H3>
337_incompleteDeserializers</H3>
338<PRE>
339protected final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/HashMap.html?is-external=true" title="class or interface in java.util">HashMap</A>&lt;<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>,<A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt;&gt; <B>_incompleteDeserializers</B></PRE>
340<DL>
341<DD>During deserializer construction process we may need to keep track of partially
342 completed deserializers, to resolve cyclic dependencies. This is the
343 map used for storing deserializers before they are fully complete.
344<P>
345<DL>
346</DL>
347</DL>
348
349<!-- ========= CONSTRUCTOR DETAIL ======== -->
350
351<A NAME="constructor_detail"><!-- --></A>
352<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
353<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
354<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
355<B>Constructor Detail</B></FONT></TH>
356</TR>
357</TABLE>
358
359<A NAME="DeserializerCache()"><!-- --></A><H3>
360DeserializerCache</H3>
361<PRE>
362public <B>DeserializerCache</B>()</PRE>
363<DL>
364</DL>
365
366<!-- ============ METHOD DETAIL ========== -->
367
368<A NAME="method_detail"><!-- --></A>
369<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
370<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
371<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
372<B>Method Detail</B></FONT></TH>
373</TR>
374</TABLE>
375
376<A NAME="cachedDeserializersCount()"><!-- --></A><H3>
377cachedDeserializersCount</H3>
378<PRE>
379public int <B>cachedDeserializersCount</B>()</PRE>
380<DL>
381<DD>Method that can be used to determine how many deserializers this
382 provider is caching currently
383 (if it does caching: default implementation does)
384 Exact count depends on what kind of deserializers get cached;
385 default implementation caches only dynamically constructed deserializers,
386 but not eagerly constructed standard deserializers (which is different
387 from how serializer provider works).
388<p>
389 The main use case for this method is to allow conditional flushing of
390 deserializer cache, if certain number of entries is reached.
391<P>
392<DD><DL>
393</DL>
394</DD>
395</DL>
396<HR>
397
398<A NAME="flushCachedDeserializers()"><!-- --></A><H3>
399flushCachedDeserializers</H3>
400<PRE>
401public void <B>flushCachedDeserializers</B>()</PRE>
402<DL>
403<DD>Method that will drop all dynamically constructed deserializers (ones that
404 are counted as result value for <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#cachedDeserializersCount()"><CODE>cachedDeserializersCount()</CODE></A>).
405 This can be used to remove memory usage (in case some deserializers are
406 only used once or so), or to force re-construction of deserializers after
407 configuration changes for mapper than owns the provider.
408<P>
409<DD><DL>
410</DL>
411</DD>
412</DL>
413<HR>
414
415<A NAME="findValueDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
416findValueDeserializer</H3>
417<PRE>
418public <A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt; <B>findValueDeserializer</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
419                                                      <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
420                                                      <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;propertyType)
421                                               throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
422<DL>
423<DD>Method called to get hold of a deserializer for a value of given type;
424 or if no such deserializer can be found, a default handler (which
425 may do a best-effort generic serialization or just simply
426 throw an exception when invoked).
427<p>
428 Note: this method is only called for value types; not for keys.
429 Key deserializers can be accessed using <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerCache.html#findKeyDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)"><CODE>findKeyDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)</CODE></A>.
430<p>
431 Note also that deserializer returned is guaranteed to be resolved
432 (if it is of type <A HREF="../../../../../com/fasterxml/jackson/databind/deser/ResolvableDeserializer.html" title="interface in com.fasterxml.jackson.databind.deser"><CODE>ResolvableDeserializer</CODE></A>), but
433 not contextualized (wrt <A HREF="../../../../../com/fasterxml/jackson/databind/deser/ContextualDeserializer.html" title="interface in com.fasterxml.jackson.databind.deser"><CODE>ContextualDeserializer</CODE></A>): caller
434 has to handle latter if necessary.
435<P>
436<DD><DL>
437<DT><B>Parameters:</B><DD><CODE>ctxt</CODE> - Deserialization context<DD><CODE>propertyType</CODE> - Declared type of the value to deserializer (obtained using
438   'setter' method signature and/or type annotations
439<DT><B>Throws:</B>
440<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE> - if there are fatal problems with
441   accessing suitable deserializer; including that of not
442   finding any serializer</DL>
443</DD>
444</DL>
445<HR>
446
447<A NAME="findKeyDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
448findKeyDeserializer</H3>
449<PRE>
450public <A HREF="../../../../../com/fasterxml/jackson/databind/KeyDeserializer.html" title="class in com.fasterxml.jackson.databind">KeyDeserializer</A> <B>findKeyDeserializer</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
451                                           <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
452                                           <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)
453                                    throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
454<DL>
455<DD>Method called to get hold of a deserializer to use for deserializing
456 keys for <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><CODE>Map</CODE></A>.
457<P>
458<DD><DL>
459
460<DT><B>Throws:</B>
461<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE> - if there are fatal problems with
462   accessing suitable key deserializer; including that of not
463   finding any serializer</DL>
464</DD>
465</DL>
466<HR>
467
468<A NAME="hasValueDeserializerFor(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
469hasValueDeserializerFor</H3>
470<PRE>
471public boolean <B>hasValueDeserializerFor</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
472                                       <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
473                                       <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</PRE>
474<DL>
475<DD>Method called to find out whether provider would be able to find
476 a deserializer for given type, using a root reference (i.e. not
477 through fields or membership in an array or collection)
478<P>
479<DD><DL>
480</DL>
481</DD>
482</DL>
483<HR>
484
485<A NAME="_findCachedDeserializer(com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
486_findCachedDeserializer</H3>
487<PRE>
488protected <A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt; <B>_findCachedDeserializer</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)</PRE>
489<DL>
490<DD><DL>
491</DL>
492</DD>
493</DL>
494<HR>
495
496<A NAME="_createAndCacheValueDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
497_createAndCacheValueDeserializer</H3>
498<PRE>
499protected <A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt; <B>_createAndCacheValueDeserializer</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
500                                                                    <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
501                                                                    <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)
502                                                             throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
503<DL>
504<DD>Method that will try to create a deserializer for given type,
505 and resolve and cache it if necessary
506<P>
507<DD><DL>
508<DT><B>Parameters:</B><DD><CODE>ctxt</CODE> - Currently active deserialization context<DD><CODE>type</CODE> - Type of property to deserialize
509<DT><B>Throws:</B>
510<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE></DL>
511</DD>
512</DL>
513<HR>
514
515<A NAME="_createAndCache2(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
516_createAndCache2</H3>
517<PRE>
518protected <A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt; <B>_createAndCache2</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
519                                                    <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
520                                                    <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)
521                                             throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
522<DL>
523<DD>Method that handles actual construction (via factory) and caching (both
524 intermediate and eventual)
525<P>
526<DD><DL>
527
528<DT><B>Throws:</B>
529<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE></DL>
530</DD>
531</DL>
532<HR>
533
534<A NAME="_createDeserializer(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.deser.DeserializerFactory, com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
535_createDeserializer</H3>
536<PRE>
537protected <A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt; <B>_createDeserializer</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
538                                                       <A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser">DeserializerFactory</A>&nbsp;factory,
539                                                       <A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)
540                                                throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
541<DL>
542<DD>Method that does the heavy lifting of checking for per-type annotations,
543 find out full type, and figure out which actual factory method
544 to call.
545<P>
546<DD><DL>
547
548<DT><B>Throws:</B>
549<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE></DL>
550</DD>
551</DL>
552<HR>
553
554<A NAME="findDeserializerFromAnnotation(com.fasterxml.jackson.databind.DeserializationContext, com.fasterxml.jackson.databind.introspect.Annotated)"><!-- --></A><H3>
555findDeserializerFromAnnotation</H3>
556<PRE>
557protected <A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt; <B>findDeserializerFromAnnotation</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/DeserializationContext.html" title="class in com.fasterxml.jackson.databind">DeserializationContext</A>&nbsp;ctxt,
558                                                                  <A HREF="../../../../../com/fasterxml/jackson/databind/introspect/Annotated.html" title="class in com.fasterxml.jackson.databind.introspect">Annotated</A>&nbsp;ann)
559                                                           throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
560<DL>
561<DD>Helper method called to check if a class or method
562 has annotation that tells which class to use for deserialization.
563 Returns null if no such annotation found.
564<P>
565<DD><DL>
566
567<DT><B>Throws:</B>
568<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE></DL>
569</DD>
570</DL>
571<HR>
572
573<A NAME="_handleUnknownValueDeserializer(com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
574_handleUnknownValueDeserializer</H3>
575<PRE>
576protected <A HREF="../../../../../com/fasterxml/jackson/databind/JsonDeserializer.html" title="class in com.fasterxml.jackson.databind">JsonDeserializer</A>&lt;<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&gt; <B>_handleUnknownValueDeserializer</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)
577                                                            throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
578<DL>
579<DD><DL>
580
581<DT><B>Throws:</B>
582<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE></DL>
583</DD>
584</DL>
585<HR>
586
587<A NAME="_handleUnknownKeyDeserializer(com.fasterxml.jackson.databind.JavaType)"><!-- --></A><H3>
588_handleUnknownKeyDeserializer</H3>
589<PRE>
590protected <A HREF="../../../../../com/fasterxml/jackson/databind/KeyDeserializer.html" title="class in com.fasterxml.jackson.databind">KeyDeserializer</A> <B>_handleUnknownKeyDeserializer</B>(<A HREF="../../../../../com/fasterxml/jackson/databind/JavaType.html" title="class in com.fasterxml.jackson.databind">JavaType</A>&nbsp;type)
591                                                 throws <A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></PRE>
592<DL>
593<DD><DL>
594
595<DT><B>Throws:</B>
596<DD><CODE><A HREF="../../../../../com/fasterxml/jackson/databind/JsonMappingException.html" title="class in com.fasterxml.jackson.databind">JsonMappingException</A></CODE></DL>
597</DD>
598</DL>
599<!-- ========= END OF CLASS DATA ========= -->
600<HR>
601
602
603<!-- ======= START OF BOTTOM NAVBAR ====== -->
604<A NAME="navbar_bottom"><!-- --></A>
605<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
606<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
607<TR>
608<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
609<A NAME="navbar_bottom_firstrow"><!-- --></A>
610<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
611  <TR ALIGN="center" VALIGN="top">
612  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
613  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
614  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
615  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/DeserializerCache.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
616  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
617  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
618  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
619  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
620  </TR>
621</TABLE>
622</TD>
623<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
624</EM>
625</TD>
626</TR>
627
628<TR>
629<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
630&nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializationProblemHandler.html" title="class in com.fasterxml.jackson.databind.deser"><B>PREV CLASS</B></A>&nbsp;
631&nbsp;<A HREF="../../../../../com/fasterxml/jackson/databind/deser/DeserializerFactory.html" title="class in com.fasterxml.jackson.databind.deser"><B>NEXT CLASS</B></A></FONT></TD>
632<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
633  <A HREF="../../../../../index.html?com/fasterxml/jackson/databind/deser/DeserializerCache.html" target="_top"><B>FRAMES</B></A>  &nbsp;
634&nbsp;<A HREF="DeserializerCache.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
635&nbsp;<SCRIPT type="text/javascript">
636  <!--
637  if(window==top) {
638    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
639  }
640  //-->
641</SCRIPT>
642<NOSCRIPT>
643  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
644</NOSCRIPT>
645
646
647</FONT></TD>
648</TR>
649<TR>
650<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
651  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
652<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
653DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
654</TR>
655</TABLE>
656<A NAME="skip-navbar_bottom"></A>
657<!-- ======== END OF BOTTOM NAVBAR ======= -->
658
659<HR>
660Copyright &#169; 2012 <a href="http://fasterxml.com">fasterxml.com</a>. All Rights Reserved.
661</BODY>
662</HTML>
663