Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
Jackson Data Binding Source Code
Jackson is "the Java JSON library" or "the best JSON parser for Java". Or simply as "JSON for Java".
Jackson Databind Source Code files are provided in the source packge (jackson-databind-2.14.0-sources.jar). You can download it at Jackson Maven Website.
You can also browse Jackson Databind Source Code below:
✍: FYIcenter.com
⏎ com/fasterxml/jackson/databind/deser/impl/CreatorCandidate.java
package com.fasterxml.jackson.databind.deser.impl;
import com.fasterxml.jackson.annotation.JacksonInject;
import com.fasterxml.jackson.databind.AnnotationIntrospector;
import com.fasterxml.jackson.databind.PropertyName;
import com.fasterxml.jackson.databind.introspect.AnnotatedParameter;
import com.fasterxml.jackson.databind.introspect.AnnotatedWithParams;
import com.fasterxml.jackson.databind.introspect.BeanPropertyDefinition;
public final class CreatorCandidate
{
protected final AnnotationIntrospector _intr;
protected final AnnotatedWithParams _creator;
protected final int _paramCount;
protected final Param[] _params;
protected CreatorCandidate(AnnotationIntrospector intr,
AnnotatedWithParams ct, Param[] params, int count) {
_intr = intr;
_creator = ct;
_params = params;
_paramCount = count;
}
public static CreatorCandidate construct(AnnotationIntrospector intr,
AnnotatedWithParams creator, BeanPropertyDefinition[] propDefs)
{
final int pcount = creator.getParameterCount();
Param[] params = new Param[pcount];
for (int i = 0; i < pcount; ++i) {
AnnotatedParameter annParam = creator.getParameter(i);
JacksonInject.Value injectId = intr.findInjectableValue(annParam);
params[i] = new Param(annParam, (propDefs == null) ? null : propDefs[i], injectId);
}
return new CreatorCandidate(intr, creator, params, pcount);
}
public AnnotatedWithParams creator() { return _creator; }
public int paramCount() { return _paramCount; }
public JacksonInject.Value injection(int i) { return _params[i].injection; }
public AnnotatedParameter parameter(int i) { return _params[i].annotated; }
public BeanPropertyDefinition propertyDef(int i) { return _params[i].propDef; }
public PropertyName paramName(int i) {
BeanPropertyDefinition propDef = _params[i].propDef;
if (propDef != null) {
return propDef.getFullName();
}
return null;
}
public PropertyName explicitParamName(int i) {
BeanPropertyDefinition propDef = _params[i].propDef;
if (propDef != null) {
if (propDef.isExplicitlyNamed()) {
return propDef.getFullName();
}
}
return null;
}
public PropertyName findImplicitParamName(int i) {
String str = _intr.findImplicitPropertyName(_params[i].annotated);
if (str != null && !str.isEmpty()) {
return PropertyName.construct(str);
}
return null;
}
/**
* Specialized accessor that finds index of the one and only parameter
* with NO injection and returns that; or, if none or more than one found,
* returns -1.
*/
public int findOnlyParamWithoutInjection()
{
int missing = -1;
for (int i = 0; i < _paramCount; ++i) {
if (_params[i].injection == null) {
if (missing >= 0) {
return -1;
}
missing = i;
}
}
return missing;
}
@Override
public String toString() {
return _creator.toString();
}
public final static class Param {
public final AnnotatedParameter annotated;
public final BeanPropertyDefinition propDef;
public final JacksonInject.Value injection;
public Param(AnnotatedParameter p, BeanPropertyDefinition pd,
JacksonInject.Value i)
{
annotated = p;
propDef = pd;
injection = i;
}
public PropertyName fullName() {
if (propDef == null) {
return null;
}
return propDef.getFullName();
}
public boolean hasFullName() {
if (propDef == null) {
return false;
}
PropertyName n = propDef.getFullName();
return n.hasSimpleName();
}
}
}
⏎ com/fasterxml/jackson/databind/deser/impl/CreatorCandidate.java
Or download all of them as a single archive file:
File name: jackson-databind-2.14.0-sources.jar File size: 1187952 bytes Release date: 2022-11-05 Download
⇒ Jackson Annotations Source Code
⇐ Download and Install Jackson Binary Package
2022-03-29, ≈203🔥, 0💬
Popular Posts:
The Java Naming and Directory Interface (JNDI) is part of the Java platform, providing applications ...
Where Can I get source code files of jsse.jar? You can get source code files of jsse.jar (JSSE) from...
JDK 17 jdk.localedata.jmod is the JMOD file for JDK 17 Localedata module. JDK 17 Locale Data module ...
JLayer is a library that decodes/plays/converts MPEG 1/2/2.5 Layer 1/2/3 (i.e. MP3) in real time for...
Java Servlet 3.0 Specification API. JAR File Size and Download Location: File name: servlet-api.jar,...