r4fterman/pdf.forms

View on GitHub
src/main/java/org/pdf/forms/model/des/Property.java

Summary

Maintainability
A
1 hr
Test Coverage
F
57%
package org.pdf.forms.model.des;

import java.util.Objects;
import java.util.StringJoiner;

import jakarta.xml.bind.annotation.XmlAttribute;
import jakarta.xml.bind.annotation.XmlType;

@XmlType
public class Property {

    private String name;
    private String value;

    public Property() {
        // need default constructor JAXB
        this(null, null);
    }

    public Property(
            final String name,
            final String value) {
        this.name = name;
        this.value = value;
    }

    @XmlAttribute
    public String getName() {
        return name;
    }

    public void setName(final String name) {
        this.name = name;
    }

    @XmlAttribute
    public String getValue() {
        return value;
    }

    public void setValue(final String value) {
        this.value = value;
    }

    @Override
    public boolean equals(final Object o) {
        if (o instanceof Property) {
            final Property that = (Property) o;
            return Objects.equals(name, that.name) && Objects.equals(value, that.value);
        }
        return false;
    }

    @Override
    public int hashCode() {
        return Objects.hash(name, value);
    }

    @Override
    public String toString() {
        return new StringJoiner(", ", Property.class.getSimpleName() + "[", "]")
                .add("name='" + name + "'")
                .add("value='" + value + "'")
                .toString();
    }
}