edited GSONConfig
This commit is contained in:
parent
b72f527b0d
commit
628edfd76f
1 changed files with 21 additions and 0 deletions
|
@ -1,6 +1,7 @@
|
||||||
package ch.usi.inf.sa4.sanmarinoes.smarthut.config;
|
package ch.usi.inf.sa4.sanmarinoes.smarthut.config;
|
||||||
|
|
||||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.dto.AutomationFastUpdateRequest;
|
import ch.usi.inf.sa4.sanmarinoes.smarthut.dto.AutomationFastUpdateRequest;
|
||||||
|
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.Condition;
|
||||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.DimmableState;
|
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.DimmableState;
|
||||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.State;
|
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.State;
|
||||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.SwitchableState;
|
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.SwitchableState;
|
||||||
|
@ -43,12 +44,32 @@ public class GsonConfig {
|
||||||
.registerSubtype(
|
.registerSubtype(
|
||||||
AutomationFastUpdateRequest.RangeTriggerDTO.class,
|
AutomationFastUpdateRequest.RangeTriggerDTO.class,
|
||||||
"rangeTrigger");
|
"rangeTrigger");
|
||||||
|
|
||||||
|
RuntimeTypeAdapterFactory<AutomationFastUpdateRequest.ConditionDTO>
|
||||||
|
runtimeTypeAdapterFactoryIII =
|
||||||
|
RuntimeTypeAdapterFactory.of(
|
||||||
|
AutomationFastUpdateRequest.ConditionDTO.class, "kind")
|
||||||
|
.registerSubtype(
|
||||||
|
AutomationFastUpdateRequest.BooleanConditionDTO.class,
|
||||||
|
"booleanCondition")
|
||||||
|
.registerSubtype(
|
||||||
|
AutomationFastUpdateRequest.RangeConditionDTO.class,
|
||||||
|
"rangeCondition")
|
||||||
|
.registerSubtype(
|
||||||
|
AutomationFastUpdateRequest.ThermostatConditionDTO.class,
|
||||||
|
"thermostatCondition");
|
||||||
|
|
||||||
builder.registerTypeAdapterFactory(runtimeTypeAdapterFactory);
|
builder.registerTypeAdapterFactory(runtimeTypeAdapterFactory);
|
||||||
builder.registerTypeAdapterFactory(runtimeTypeAdapterFactoryII);
|
builder.registerTypeAdapterFactory(runtimeTypeAdapterFactoryII);
|
||||||
|
builder.registerTypeAdapterFactory(runtimeTypeAdapterFactoryIII);
|
||||||
builder.registerTypeAdapter(
|
builder.registerTypeAdapter(
|
||||||
Trigger.class,
|
Trigger.class,
|
||||||
(JsonSerializer<Trigger<?>>)
|
(JsonSerializer<Trigger<?>>)
|
||||||
(src, typeOfSrc, context) -> context.serialize((Object) src));
|
(src, typeOfSrc, context) -> context.serialize((Object) src));
|
||||||
|
builder.registerTypeAdapter(
|
||||||
|
Condition.class,
|
||||||
|
(JsonSerializer<Condition<?>>)
|
||||||
|
(src, typeOfSrc, context) -> context.serialize((Object) src));
|
||||||
return builder;
|
return builder;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue