ObjectMapper Array or Object based on Data

為{幸葍}努か 提交于 2019-12-11 05:09:19

问题


I'm trying to achieve something generic to parse my JSON response so far i'm able to get them this close

class ParentJson<T: Mappable> : Mappable {

var StatusCode: Int?
var Message: String?
var dataArray: [T]?
var dataObject: T?
required init?(map: Map) {

}
func mapping(map: Map) {
    StatusCode <- map["StatusCode"]
    Message <- map["Message"]
    dataArray <- map["Data"]
    dataObject <- map["Data"]
}
}

class DataJson: Mappable {

var OffsiteReportID: Int?
var InspectionActivityID: Int?
var OffsiteReportAddedByID: Int?
var OffsiteReportDisplayID: String?
var OffsiteReportDate: String?
var OffsiteReportDescription: String?
var OffsiteReportDetails: String?

required init?(map: Map) {

}
func mapping(map: Map) {
    OffsiteReportID <- map["OffsiteReportID"]
    InspectionActivityID <- map["InspectionActivityID"]
    OffsiteReportAddedByID <- map["OffsiteReportAddedByID"]
    OffsiteReportDisplayID <- map["OffsiteReportDisplayID"]
    OffsiteReportDate <- map["OffsiteReportDate"]
    OffsiteReportDescription <- map["OffsiteReportDescription"]
    OffsiteReportDetails <- map["OffsiteReportDetails"]
}
}

JSON under "Data" could be Object or an Array. Basic issue is I don't want to use dataArray & dataObject only to leave on variable nil and check which one is nil and use other one I want to have only one variable which return Object or array of objects based on data, I have idea about "Mapping Context" but i'm not sure if that could help me

Any ideas guys?

来源:https://stackoverflow.com/questions/42778641/objectmapper-array-or-object-based-on-data

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!