Jackson Annotations Source Code

Jackson is "the Java JSON library" or "the best JSON parser for Java". Or simply as "JSON for Java".

Jackson Annotations Source Code files are provided in the source packge (jackson-annotations-2.14.0-sources.jar). You can download it at Jackson Maven Website.

You can also browse Jackson Annotations Source Code below:

✍: FYIcenter.com

com/fasterxml/jackson/annotation/OptBoolean.java

package com.fasterxml.jackson.annotation;

/**
 * Optional Boolean value ("nullean"). Needed just because Java annotations
 * can not take 'null' as a value (even as default), so there is no
 * way to distinguish between explicit `true` and `false`, and lack of
 * choice (related: annotations are limited to primitives, so
 * {@link java.lang.Boolean} not allowed as solution).
 *<p>
 * Note: although the use of `true` and `false` would be more convenient, they
 * can not be chosen since they are Java keyword and compiler won't allow
 * the choice. And since enum naming convention suggests all-upper-case,
 * that is what is done here.
 *
 * @since 2.6
 */
public enum OptBoolean
{
    /**
     * Value that indicates that the annotation property is explicitly defined to
     * be enabled, or true.
     */
    TRUE,

    /**
     * Value that indicates that the annotation property is explicitly defined to
     * be disabled, or false.
     */
    FALSE,

    /**
     * Value that indicates that the annotation property does NOT have an explicit
     * definition of enabled/disabled (or true/false); instead, a higher-level
     * configuration value is used; or lacking higher-level global setting,
     * default.
     */
    DEFAULT;

    public Boolean asBoolean() {
        if (this == DEFAULT) return null;
        return (this == TRUE) ? Boolean.TRUE : Boolean.FALSE;
    }

    public boolean asPrimitive() {
        return (this == TRUE);
    }

    public static OptBoolean fromBoolean(Boolean b) {
        if (b == null) {
            return DEFAULT;
        }
        return b.booleanValue() ? TRUE : FALSE;
    }

    public static boolean equals(Boolean b1, Boolean b2) {
        if (b1 == null) {
            return (b2 == null);
        }
        return b1.equals(b2);
    }
}

com/fasterxml/jackson/annotation/OptBoolean.java

 

Or download all of them as a single archive file:

File name: jackson-annotations-2.14.0-sources.jar
File size: 80402 bytes
Release date: 2022-11-05
Download 

 

Jackson Dataformat Extensions

Jackson Data Binding Source Code

Downloading and Reviewing jackson-*.jar

⇑⇑ Jackson - Java JSON library

2022-02-19, ≈96🔥, 0💬