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 (version 1.7.0_10-ea) on Mon Apr 22 19:50:33 PDT 2013 --> 6<meta http-equiv="Content-Type" content="text/html" charset="UTF-8"> 7<title>JsonPOJOBuilder (jackson-databind 2.2.0 API)</title> 8<meta name="date" content="2013-04-22"> 9<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> 10</head> 11<body> 12<script type="text/javascript"><!-- 13 if (location.href.indexOf('is-external=true') == -1) { 14 parent.document.title="JsonPOJOBuilder (jackson-databind 2.2.0 API)"; 15 } 16//--> 17</script> 18<noscript> 19<div>JavaScript is disabled on your browser.</div> 20</noscript> 21<!-- ========= START OF TOP NAVBAR ======= --> 22<div class="topNav"><a name="navbar_top"> 23<!-- --> 24</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow"> 25<!-- --> 26</a> 27<ul class="navList" title="Navigation"> 28<li><a href="../../../../../overview-summary.html">Overview</a></li> 29<li><a href="package-summary.html">Package</a></li> 30<li class="navBarCell1Rev">Class</li> 31<li><a href="class-use/JsonPOJOBuilder.html">Use</a></li> 32<li><a href="package-tree.html">Tree</a></li> 33<li><a href="../../../../../deprecated-list.html">Deprecated</a></li> 34<li><a href="../../../../../index-all.html">Index</a></li> 35<li><a href="../../../../../help-doc.html">Help</a></li> 36</ul> 37</div> 38<div class="subNav"> 39<ul class="navList"> 40<li><a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonNaming.html" title="annotation in com.fasterxml.jackson.databind.annotation"><span class="strong">Prev Class</span></a></li> 41<li><a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonPOJOBuilder.Value.html" title="class in com.fasterxml.jackson.databind.annotation"><span class="strong">Next Class</span></a></li> 42</ul> 43<ul class="navList"> 44<li><a href="../../../../../index.html?com/fasterxml/jackson/databind/annotation/JsonPOJOBuilder.html" target="_top">Frames</a></li> 45<li><a href="JsonPOJOBuilder.html" target="_top">No Frames</a></li> 46</ul> 47<ul class="navList" id="allclasses_navbar_top"> 48<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li> 49</ul> 50<div> 51<script type="text/javascript"><!-- 52 allClassesLink = document.getElementById("allclasses_navbar_top"); 53 if(window==top) { 54 allClassesLink.style.display = "block"; 55 } 56 else { 57 allClassesLink.style.display = "none"; 58 } 59 //--> 60</script> 61</div> 62<div> 63<ul class="subNavList"> 64<li>Summary: </li> 65<li>Required | </li> 66<li><a href="#annotation_type_optional_element_summary">Optional</a></li> 67</ul> 68<ul class="subNavList"> 69<li>Detail: </li> 70<li><a href="#annotation_type_element_detail">Element</a></li> 71</ul> 72</div> 73<a name="skip-navbar_top"> 74<!-- --> 75</a></div> 76<!-- ========= END OF TOP NAVBAR ========= --> 77<!-- ======== START OF CLASS DATA ======== --> 78<div class="header"> 79<div class="subTitle">com.fasterxml.jackson.databind.annotation</div> 80<h2 title="Annotation Type JsonPOJOBuilder" class="title">Annotation Type JsonPOJOBuilder</h2> 81</div> 82<div class="contentContainer"> 83<div class="description"> 84<ul class="blockList"> 85<li class="blockList"> 86<hr> 87<br> 88<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/Target.html?is-external=true" title="class or interface in java.lang.annotation">@Target</a>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/Target.html?is-external=true#value()" title="class or interface in java.lang.annotation">value</a>={<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/ElementType.html?is-external=true#ANNOTATION_TYPE" title="class or interface in java.lang.annotation">ANNOTATION_TYPE</a>,<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/ElementType.html?is-external=true#TYPE" title="class or interface in java.lang.annotation">TYPE</a>}) 89<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/Retention.html?is-external=true" title="class or interface in java.lang.annotation">@Retention</a>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/Retention.html?is-external=true#value()" title="class or interface in java.lang.annotation">value</a>=<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/annotation/RetentionPolicy.html?is-external=true#RUNTIME" title="class or interface in java.lang.annotation">RUNTIME</a>) 90public @interface <span class="strong">JsonPOJOBuilder</span></pre> 91<div class="block">Annotation used to configure details of a Builder class: 92 instances of which are used as Builders for deserialized 93 POJO values, instead of POJOs being instantiated using 94 constructors or factory methods. 95 Note that this annotation is NOT used to define what is 96 the Builder class for a POJO: rather, this is determined 97 by <a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonDeserialize.html#builder()"><code>JsonDeserialize.builder()</code></a> property of <a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonDeserialize.html" title="annotation in com.fasterxml.jackson.databind.annotation"><code>JsonDeserialize</code></a>. 98<p> 99 Annotation is typically used if the naming convention 100 of a Builder class is different from defaults: 101<ul> 102 </ul></div> 103<dl><dt><span class="strong">Since:</span></dt> 104 <dd>2.0</dd></dl> 105</li> 106</ul> 107</div> 108<div class="summary"> 109<ul class="blockList"> 110<li class="blockList"> 111<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== --> 112<ul class="blockList"> 113<li class="blockList"><a name="annotation_type_optional_element_summary"> 114<!-- --> 115</a> 116<h3>Optional Element Summary</h3> 117<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation"> 118<caption><span>Optional Elements</span><span class="tabEnd"> </span></caption> 119<tr> 120<th class="colFirst" scope="col">Modifier and Type</th> 121<th class="colLast" scope="col">Optional Element and Description</th> 122</tr> 123<tr class="altColor"> 124<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> 125<td class="colLast"><code><strong><a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonPOJOBuilder.html#buildMethodName()">buildMethodName</a></strong></code> 126<div class="block">Property to use for re-defining which zero-argument method 127 is considered the actual "build-method": method called after 128 all data has been bound, and the actual instance needs to 129 be instantiated.</div> 130</td> 131</tr> 132<tr class="rowColor"> 133<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> 134<td class="colLast"><code><strong><a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonPOJOBuilder.html#withPrefix()">withPrefix</a></strong></code> 135<div class="block">Property used for (re)defining name prefix to use for 136 auto-detecting "with-methods": methods that are similar to 137 "set-methods" (in that they take an argument), but that 138 may also return the new builder instance to use 139 (which may be 'this', or a new modified builder instance).</div> 140</td> 141</tr> 142</table> 143</li> 144</ul> 145</li> 146</ul> 147</div> 148<div class="details"> 149<ul class="blockList"> 150<li class="blockList"> 151<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== --> 152<ul class="blockList"> 153<li class="blockList"><a name="annotation_type_element_detail"> 154<!-- --> 155</a> 156<h3>Element Detail</h3> 157<a name="buildMethodName()"> 158<!-- --> 159</a> 160<ul class="blockList"> 161<li class="blockList"> 162<h4>buildMethodName</h4> 163<pre>public abstract <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> buildMethodName</pre> 164<div class="block">Property to use for re-defining which zero-argument method 165 is considered the actual "build-method": method called after 166 all data has been bound, and the actual instance needs to 167 be instantiated. 168<p> 169 Default value is "build".</div> 170<dl> 171<dt>Default:</dt> 172<dd>"build"</dd> 173</dl> 174</li> 175</ul> 176<a name="withPrefix()"> 177<!-- --> 178</a> 179<ul class="blockListLast"> 180<li class="blockList"> 181<h4>withPrefix</h4> 182<pre>public abstract <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> withPrefix</pre> 183<div class="block">Property used for (re)defining name prefix to use for 184 auto-detecting "with-methods": methods that are similar to 185 "set-methods" (in that they take an argument), but that 186 may also return the new builder instance to use 187 (which may be 'this', or a new modified builder instance). 188 Note that in addition to this prefix, it is also possible 189 to use <a href="http://fasterxml.github.com/jackson-annotations/javadoc/2.1.1/com/fasterxml/jackson/annotation/JsonProperty.html?is-external=true" title="class or interface in com.fasterxml.jackson.annotation"><code>JsonProperty</code></a> 190 annotation to indicate "with-methods" (as well as 191 <a href="http://fasterxml.github.com/jackson-annotations/javadoc/2.1.1/com/fasterxml/jackson/annotation/JsonSetter.html?is-external=true" title="class or interface in com.fasterxml.jackson.annotation"><code>JsonSetter</code></a>). 192<p> 193 Default value is "with", so that method named "withValue()" 194 would be used for binding JSON property "value" (using type 195 indicated by the argument; or one defined with annotations.</div> 196<dl> 197<dt>Default:</dt> 198<dd>"with"</dd> 199</dl> 200</li> 201</ul> 202</li> 203</ul> 204</li> 205</ul> 206</div> 207</div> 208<!-- ========= END OF CLASS DATA ========= --> 209<!-- ======= START OF BOTTOM NAVBAR ====== --> 210<div class="bottomNav"><a name="navbar_bottom"> 211<!-- --> 212</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow"> 213<!-- --> 214</a> 215<ul class="navList" title="Navigation"> 216<li><a href="../../../../../overview-summary.html">Overview</a></li> 217<li><a href="package-summary.html">Package</a></li> 218<li class="navBarCell1Rev">Class</li> 219<li><a href="class-use/JsonPOJOBuilder.html">Use</a></li> 220<li><a href="package-tree.html">Tree</a></li> 221<li><a href="../../../../../deprecated-list.html">Deprecated</a></li> 222<li><a href="../../../../../index-all.html">Index</a></li> 223<li><a href="../../../../../help-doc.html">Help</a></li> 224</ul> 225</div> 226<div class="subNav"> 227<ul class="navList"> 228<li><a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonNaming.html" title="annotation in com.fasterxml.jackson.databind.annotation"><span class="strong">Prev Class</span></a></li> 229<li><a href="../../../../../com/fasterxml/jackson/databind/annotation/JsonPOJOBuilder.Value.html" title="class in com.fasterxml.jackson.databind.annotation"><span class="strong">Next Class</span></a></li> 230</ul> 231<ul class="navList"> 232<li><a href="../../../../../index.html?com/fasterxml/jackson/databind/annotation/JsonPOJOBuilder.html" target="_top">Frames</a></li> 233<li><a href="JsonPOJOBuilder.html" target="_top">No Frames</a></li> 234</ul> 235<ul class="navList" id="allclasses_navbar_bottom"> 236<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li> 237</ul> 238<div> 239<script type="text/javascript"><!-- 240 allClassesLink = document.getElementById("allclasses_navbar_bottom"); 241 if(window==top) { 242 allClassesLink.style.display = "block"; 243 } 244 else { 245 allClassesLink.style.display = "none"; 246 } 247 //--> 248</script> 249</div> 250<div> 251<ul class="subNavList"> 252<li>Summary: </li> 253<li>Required | </li> 254<li><a href="#annotation_type_optional_element_summary">Optional</a></li> 255</ul> 256<ul class="subNavList"> 257<li>Detail: </li> 258<li><a href="#annotation_type_element_detail">Element</a></li> 259</ul> 260</div> 261<a name="skip-navbar_bottom"> 262<!-- --> 263</a></div> 264<!-- ======== END OF BOTTOM NAVBAR ======= --> 265<p class="legalCopy"><small>Copyright © 2012-2013 <a href="http://fasterxml.com/">FasterXML</a>. All Rights Reserved.</small></p> 266</body> 267</html> 268