From 43a809aba01ba461506b4925f856ce08ed177eb2 Mon Sep 17 00:00:00 2001 From: Lekshmi S Date: Tue, 18 Feb 2020 16:33:28 +0530 Subject: [PATCH] Modified code as labels are optional. --- .../ListFourColumnDataUsageDividerModel.swift | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/MVMCoreUI/Molecules/DesignedComponents/SectionDividers/FourColumn/ListFourColumnDataUsageDividerModel.swift b/MVMCoreUI/Molecules/DesignedComponents/SectionDividers/FourColumn/ListFourColumnDataUsageDividerModel.swift index 1277f4bb..e07ca87f 100644 --- a/MVMCoreUI/Molecules/DesignedComponents/SectionDividers/FourColumn/ListFourColumnDataUsageDividerModel.swift +++ b/MVMCoreUI/Molecules/DesignedComponents/SectionDividers/FourColumn/ListFourColumnDataUsageDividerModel.swift @@ -10,10 +10,10 @@ import Foundation public class ListFourColumnDataUsageDividerModel: ListItemModel, MoleculeModelProtocol { public static var identifier: String = "list4CDiv" - public var label1: LabelModel - public var label2: LabelModel - public var label3: LabelModel - public var label4: LabelModel + public var label1: LabelModel? + public var label2: LabelModel? + public var label3: LabelModel? + public var label4: LabelModel? public init(label1: LabelModel, label2: LabelModel, label3: LabelModel, label4: LabelModel) { self.label1 = label1 @@ -40,20 +40,20 @@ public class ListFourColumnDataUsageDividerModel: ListItemModel, MoleculeModelPr required public init(from decoder: Decoder) throws { let typeContainer = try decoder.container(keyedBy: CodingKeys.self) - label1 = try typeContainer.decode(LabelModel.self, forKey: .label1) - label2 = try typeContainer.decode(LabelModel.self, forKey: .label2) - label3 = try typeContainer.decode(LabelModel.self, forKey: .label3) - label4 = try typeContainer.decode(LabelModel.self, forKey: .label4) + label1 = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .label1) + label2 = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .label2) + label3 = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .label3) + label4 = try typeContainer.decodeIfPresent(LabelModel.self, forKey: .label4) try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) - try container.encode(moleculeName, forKey: .moleculeName) - try container.encode(label1, forKey: .label1) - try container.encode(label2, forKey: .label2) - try container.encode(label3, forKey: .label3) - try container.encode(label4, forKey: .label4) + try container.encodeIfPresent(moleculeName, forKey: .moleculeName) + try container.encodeIfPresent(label1, forKey: .label1) + try container.encodeIfPresent(label2, forKey: .label2) + try container.encodeIfPresent(label3, forKey: .label3) + try container.encodeIfPresent(label4, forKey: .label4) } }