/// <summary> /// Returns the last received signed variables. /// If signature was not provided from server the /// result of this method will be null. /// </summary> /// <returns> Returns <see cref="LeanplumSecuredVars"/> instance containing /// variable's JSON and signature. /// If signature was not downloaded from server, returns null. /// </returns> public override LeanplumSecuredVars SecuredVars() { string jsonString = lp_securedVars(); if (!string.IsNullOrEmpty(jsonString)) { var varsDict = (Dictionary <string, object>)Json.Deserialize(jsonString); return(LeanplumSecuredVars.FromDictionary(varsDict)); } return(null); }
public static LeanplumSecuredVars FromDictionary(Dictionary <string, object> varsDict) { if (varsDict != null) { string json = Util.GetValueOrDefault(varsDict, Constants.Keys.SECURED_VARS_JSON_KEY)?.ToString(); string signature = Util.GetValueOrDefault(varsDict, Constants.Keys.SECURED_VARS_SIGNATURE_KEY)?.ToString(); if (!string.IsNullOrEmpty(json) && !string.IsNullOrEmpty(signature)) { LeanplumSecuredVars leanplumSecuredVars = new LeanplumSecuredVars(json, signature); return(leanplumSecuredVars); } } return(null); }