Skip to content

Commit

Permalink
fix: #34 Initialize new (de)serializersParameters from using the defa…
Browse files Browse the repository at this point in the history
…ult (de)serializerParameters
  • Loading branch information
vegegoku committed Apr 18, 2020
1 parent 413e342 commit 4ce5e9e
Show file tree
Hide file tree
Showing 5 changed files with 69 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,13 @@
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
import org.dominokit.jacksonapt.deser.bean.IdentityDeserializationInfo;
import org.dominokit.jacksonapt.deser.bean.TypeDeserializationInfo;
import org.gwtproject.i18n.client.TimeZone;

import java.util.HashSet;
import java.util.Set;

import static java.util.Objects.nonNull;

/**
* This class includes parameters defined through properties annotations like {@link com.fasterxml.jackson.annotation.JsonIgnoreProperties}. They are specific to one
* {@link org.dominokit.jacksonapt.JsonDeserializer} and that's why they are not contained inside {@link org.dominokit.jacksonapt.JsonDeserializationContext}.
Expand Down Expand Up @@ -84,6 +87,18 @@ public final class GwtJacksonJsonDeserializerParameters implements JsonDeseriali
*/
private TypeDeserializationInfo typeInfo;

public GwtJacksonJsonDeserializerParameters() {
}

public GwtJacksonJsonDeserializerParameters(JsonDeserializerParameters jsonDeserializerParameters) {
this.identityInfo = jsonDeserializerParameters.getIdentityInfo();
this.ignoredProperties = jsonDeserializerParameters.getIgnoredProperties();
this.locale = jsonDeserializerParameters.getLocale();
this.pattern = jsonDeserializerParameters.getPattern();
this.shape = jsonDeserializerParameters.getShape();
this.typeInfo = jsonDeserializerParameters.getTypeInfo();
}

/**
* {@inheritDoc}
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
import java.util.HashSet;
import java.util.Set;

import static java.util.Objects.nonNull;

/**
* This class includes parameters defined through properties annotations like {@link com.fasterxml.jackson.annotation.JsonFormat}. They are specific to one
* {@link org.dominokit.jacksonapt.JsonSerializer} and that's why they are not contained inside {@link org.dominokit.jacksonapt.JsonSerializationContext}.
Expand Down Expand Up @@ -90,6 +92,23 @@ public final class GwtJacksonJsonSerializerParameters implements JsonSerializerP
*/
private boolean unwrapped = false;

public GwtJacksonJsonSerializerParameters() {
}

public GwtJacksonJsonSerializerParameters(JsonSerializerParameters jsonSerializerParameters) {
this.identityInfo = jsonSerializerParameters.getIdentityInfo();
this.ignoredProperties = jsonSerializerParameters.getIgnoredProperties();
this.include = jsonSerializerParameters.getInclude();
this.locale = jsonSerializerParameters.getLocale();
this.pattern = jsonSerializerParameters.getPattern();
this.shape = jsonSerializerParameters.getShape();
if(nonNull(jsonSerializerParameters.getTimezone())) {
this.timezone = (TimeZone) jsonSerializerParameters.getTimezone();
}
this.typeInfo = jsonSerializerParameters.getTypeInfo();
this.unwrapped = jsonSerializerParameters.isUnwrapped();
}

/**
* {@inheritDoc}
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,11 +77,11 @@ public JsonDeserializerParameters defaultDeserializerParameters() {

@Override
public JsonSerializerParameters newSerializerParameters() {
return new GwtJacksonJsonSerializerParameters();
return new GwtJacksonJsonSerializerParameters(defaultSerializerParameters());
}

@Override
public JsonDeserializerParameters newDeserializerParameters() {
return new GwtJacksonJsonDeserializerParameters();
return new GwtJacksonJsonDeserializerParameters(defaultDeserializerParameters());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,19 @@ public final class ServerJacksonJsonDeserializerParameters implements JsonDeseri
*/
private TypeDeserializationInfo typeInfo;

public ServerJacksonJsonDeserializerParameters() {
}

public ServerJacksonJsonDeserializerParameters(JsonDeserializerParameters jsonDeserializerParameters) {
this.identityInfo = jsonDeserializerParameters.getIdentityInfo();
this.ignoredProperties = jsonDeserializerParameters.getIgnoredProperties();
this.locale = jsonDeserializerParameters.getLocale();
this.pattern = jsonDeserializerParameters.getPattern();
this.shape = jsonDeserializerParameters.getShape();
this.typeInfo = jsonDeserializerParameters.getTypeInfo();
}


/**
* {@inheritDoc}
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,14 @@
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import org.dominokit.jacksonapt.ser.bean.IdentitySerializationInfo;
import org.dominokit.jacksonapt.ser.bean.TypeSerializationInfo;
import org.gwtproject.i18n.client.TimeZone;

import java.time.ZoneId;
import java.util.HashSet;
import java.util.Set;

import static java.util.Objects.nonNull;

/**
* This class includes parameters defined through properties annotations like {@link com.fasterxml.jackson.annotation.JsonFormat}. They are specific to one
* {@link org.dominokit.jacksonapt.JsonSerializer} and that's why they are not contained inside {@link org.dominokit.jacksonapt.JsonSerializationContext}.
Expand Down Expand Up @@ -91,6 +94,23 @@ public final class ServerJacksonJsonSerializerParameters implements JsonSerializ
*/
private boolean unwrapped = false;

public ServerJacksonJsonSerializerParameters() {
}

public ServerJacksonJsonSerializerParameters(JsonSerializerParameters jsonSerializerParameters) {
this.identityInfo = jsonSerializerParameters.getIdentityInfo();
this.ignoredProperties = jsonSerializerParameters.getIgnoredProperties();
this.include = jsonSerializerParameters.getInclude();
this.locale = jsonSerializerParameters.getLocale();
this.pattern = jsonSerializerParameters.getPattern();
this.shape = jsonSerializerParameters.getShape();
if(nonNull(jsonSerializerParameters.getTimezone())) {
this.timezone = (ZoneId) jsonSerializerParameters.getTimezone();
}
this.typeInfo = jsonSerializerParameters.getTypeInfo();
this.unwrapped = jsonSerializerParameters.isUnwrapped();
}

/**
* {@inheritDoc}
*
Expand Down

0 comments on commit 4ce5e9e

Please sign in to comment.