All Downloads are FREE. Search and download functionalities are using the official Maven repository.

no.nav.sbl.soknadsosialhjelp.soknad.adresse.JsonAdresse Maven / Gradle / Ivy

There is a newer version: 1.2019.09.25-00.21-49b69f0625e0
Show newest version

package no.nav.sbl.soknadsosialhjelp.soknad.adresse;

import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonValue;
import no.nav.sbl.soknadsosialhjelp.soknad.common.JsonKilde;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;


/**
 * Angir en adresse.
 * 

* * */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "kilde", "type" }) public class JsonAdresse { /** * Kilden for dataene. *

* "bruker" når data kommer fra en bruker, "system" når data kommer fra et register og "utdatert" hvis data ikke lenger er relevant (og da ikke lenger kan vises saksbehandler). * (Required) * */ @JsonProperty("kilde") @JsonPropertyDescription("\"bruker\" n\u00e5r data kommer fra en bruker, \"system\" n\u00e5r data kommer fra et register og \"utdatert\" hvis data ikke lenger er relevant (og da ikke lenger kan vises saksbehandler).") private JsonKilde kilde; /** * Angir adressetypen og dermed hvilke felter som er satt. *

* Eventuelle nye adressetyper vil enten bli lagt til som en ny major-version eller som nye felt under søknaden (for eksempel "folkeregistrertAdresseV2"). * (Required) * */ @JsonProperty("type") @JsonPropertyDescription("Eventuelle nye adressetyper vil enten bli lagt til som en ny major-version eller som nye felt under s\u00f8knaden (for eksempel \"folkeregistrertAdresseV2\").") private JsonAdresse.Type type; @JsonIgnore private Map additionalProperties = new HashMap(); /** * Kilden for dataene. *

* "bruker" når data kommer fra en bruker, "system" når data kommer fra et register og "utdatert" hvis data ikke lenger er relevant (og da ikke lenger kan vises saksbehandler). * (Required) * */ @JsonProperty("kilde") public JsonKilde getKilde() { return kilde; } /** * Kilden for dataene. *

* "bruker" når data kommer fra en bruker, "system" når data kommer fra et register og "utdatert" hvis data ikke lenger er relevant (og da ikke lenger kan vises saksbehandler). * (Required) * */ @JsonProperty("kilde") public void setKilde(JsonKilde kilde) { this.kilde = kilde; } public JsonAdresse withKilde(JsonKilde kilde) { this.kilde = kilde; return this; } /** * Angir adressetypen og dermed hvilke felter som er satt. *

* Eventuelle nye adressetyper vil enten bli lagt til som en ny major-version eller som nye felt under søknaden (for eksempel "folkeregistrertAdresseV2"). * (Required) * */ @JsonProperty("type") public JsonAdresse.Type getType() { return type; } /** * Angir adressetypen og dermed hvilke felter som er satt. *

* Eventuelle nye adressetyper vil enten bli lagt til som en ny major-version eller som nye felt under søknaden (for eksempel "folkeregistrertAdresseV2"). * (Required) * */ @JsonProperty("type") public void setType(JsonAdresse.Type type) { this.type = type; } public JsonAdresse withType(JsonAdresse.Type type) { this.type = type; return this; } @JsonAnyGetter public Map getAdditionalProperties() { return this.additionalProperties; } @JsonAnySetter public void setAdditionalProperty(String name, Object value) { this.additionalProperties.put(name, value); } public JsonAdresse withAdditionalProperty(String name, Object value) { this.additionalProperties.put(name, value); return this; } @Override public String toString() { return new ToStringBuilder(this).append("kilde", kilde).append("type", type).append("additionalProperties", additionalProperties).toString(); } @Override public int hashCode() { return new HashCodeBuilder().append(kilde).append(additionalProperties).append(type).toHashCode(); } @Override public boolean equals(Object other) { if (other == this) { return true; } if ((other instanceof JsonAdresse) == false) { return false; } JsonAdresse rhs = ((JsonAdresse) other); return new EqualsBuilder().append(kilde, rhs.kilde).append(additionalProperties, rhs.additionalProperties).append(type, rhs.type).isEquals(); } public enum Type { GATEADRESSE("gateadresse"), MATRIKKELADRESSE("matrikkeladresse"), POSTBOKS("postboks"), USTRUKTURERT("ustrukturert"); private final String value; private final static Map CONSTANTS = new HashMap(); static { for (JsonAdresse.Type c: values()) { CONSTANTS.put(c.value, c); } } private Type(String value) { this.value = value; } @Override public String toString() { return this.value; } @JsonValue public String value() { return this.value; } @JsonCreator public static JsonAdresse.Type fromValue(String value) { JsonAdresse.Type constant = CONSTANTS.get(value); if (constant == null) { throw new IllegalArgumentException(value); } else { return constant; } } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy