diff --git a/src/main/groovy/io/swagger/model/Draftset.groovy b/src/main/groovy/io/swagger/model/Draftset.groovy index eab1f06..d2a61a4 100644 --- a/src/main/groovy/io/swagger/model/Draftset.groovy +++ b/src/main/groovy/io/swagger/model/Draftset.groovy @@ -6,15 +6,23 @@ import io.swagger.model.Graph; import java.util.UUID; import java.util.List; +import java.time.OffsetDateTime; + @Canonical class Draftset { - private def camel(String k) { - return k.replaceAll("-([A-Za-z0-9])", {Object [] it -> it[1].toUpperCase()}) - } - Draftset(Map map) { - map?.each { k, v -> this[camel(k)] = v} + map?.each { k, v -> + def prop = k.replaceAll("-([A-Za-z0-9])", {Object [] it -> it[1].toUpperCase()}) + def mpType = this.getMetaClass().getMetaProperty(prop).getType() + if (mpType == OffsetDateTime.class) { + this[prop] = OffsetDateTime.parse(v) + } else if (mpType == UUID) { + this[prop] = UUID.fromString(v) + } else { + this[prop] = v + } + } } /* Unique identifier representing this draftset */ @@ -44,10 +52,10 @@ String description = null /* IS0 8601 DateTime representing the time the draftsets metadata was last updated */ - Date updatedAt = null + OffsetDateTime updatedAt = null /* IS0 8601 DateTime representing the time the draftset was created */ - Date createdAt = null + OffsetDateTime createdAt = null }