<commit_before>package org.kuali.rice.kew.api.document.attribute;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import java.math.BigInteger;

/**
 * A document attribute which contains integer data.  Construct instances of {@code DocumentAttributeInteger} using
 * it's builder or the {@link DocumentAttributeFactory}.
 *
 * @author Kuali Rice Team (<EMAIL>)
 */
@XmlRootElement(name = DocumentAttributeInteger.Constants.ROOT_ELEMENT_NAME)
@XmlAccessorType(XmlAccessType.NONE)
@XmlType(name = DocumentAttributeInteger.Constants.TYPE_NAME, propOrder = {
    DocumentAttributeInteger.Elements.VALUE
})
public final class DocumentAttributeInteger extends DocumentAttribute {

    @XmlElement(name = Elements.VALUE, required = false)
    private final BigInteger value;

    @SuppressWarnings("unused")
    private DocumentAttributeInteger() {
        this.value = null;
    }

    private DocumentAttributeInteger(Builder builder) {
        super(builder.getName());
        this.value = builder.getValue();
    }

    @Override
    public BigInteger getValue() {
        return value;
    }

    @Override
    public DocumentAttributeDataType getDataType() {
        return DocumentAttributeDataType.INTEGER;
    }

    public static final class Builder extends AbstractBuilder<BigInteger> {

        private Builder(String name) {
            super(name);
        }

        public static Builder create(String name) {
            return new Builder(name);
        }

        @Override
        public DocumentAttributeDataType getDataType() {
            return DocumentAttributeDataType.INTEGER;
        }

        @Override
        public DocumentAttributeInteger build() {
            return new DocumentAttributeInteger(this);<commit_msg>KULRICE-5056 - javadocs on DocumentAttributeInteger<commit_after>package org.kuali.rice.kew.api.document.attribute;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import java.math.BigInteger;

/**
 * A document attribute which contains integer data.  Construct instances of {@code DocumentAttributeInteger} using
 * it's builder or the {@link DocumentAttributeFactory}.
 *
 * @author K<NAME> (<EMAIL>)
 */
@XmlRootElement(name = DocumentAttributeInteger.Constants.ROOT_ELEMENT_NAME)
@XmlAccessorType(XmlAccessType.NONE)
@XmlType(name = DocumentAttributeInteger.Constants.TYPE_NAME, propOrder = {
    DocumentAttributeInteger.Elements.VALUE
})
public final class DocumentAttributeInteger extends DocumentAttribute {

    @XmlElement(name = Elements.VALUE, required = false)
    private final BigInteger value;

    @SuppressWarnings("unused")
    private DocumentAttributeInteger() {
        this.value = null;
    }

    private DocumentAttributeInteger(Builder builder) {
        super(builder.getName());
        this.value = builder.getValue();
    }

    @Override
    public BigInteger getValue() {
        return value;
    }

    @Override
    public DocumentAttributeDataType getDataType() {
        return DocumentAttributeDataType.INTEGER;
    }

    /**
     * A builder implementation which allows for construction of a {@code DocumentAttributeInteger}.
     */
    public static final class Builder extends AbstractBuilder<BigInteger> {

        private Builder(String name) {
            super(name);
        }

        /**
         * Create a builder for the document attribute using the given attribute name.
         *
         * @param name the name of the document attribute which should be built by this builder, should never be a
         * null or blank value
         * @return a builder instance initialized with the given attribute name
         */
        public static Builder create(String name) {
            return new Builder(name);
        }

        @Override
        public DocumentAttributeDataType getDataType() {
            return DocumentAttributeDataType.INTEGER;
        }

        @Override
        public DocumentAttributeInteger build() {
            return new DocumentAttributeInteger(this);
{'fraction_non_alphanumeric': 0.0817451205510907, 'fraction_numerical': 0.0009184845005740528, 'mean_word_length': 3.308605341246291, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 8, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 10}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1121332', 'n_tokens_mistral': 1078, 'n_tokens_neox': 1065, 'n_words': 284}