/// <summary> /// Initializes the <see cref="MPin"/> SDK instance. /// </summary> /// <param name="config">A key-value map of configuration parameters. Unsupported parameters will be ignored. Currently, the Core recognized the following parameters: backend - the URL of the M-Pin back-end service (Mandatory) and rpsPrefix - the prefix that should be added for requests to the RPS (Optional). The default value is "rps". </param> /// <param name="context">An <see cref="IContext"/> instance.</param> /// <returns> A <see cref="Status"/> which indicates whether the operation was successful or not.</returns> public Status Init(IDictionary <string, string> config, IContext context = null) { if (context == null) { context = new Context(); } if (config == null || context == null) { return(new Status(InvalidStatus, ResourceLoader.GetForCurrentView().GetString("WrongParameters"))); } StatusWrapper sw; lock (lockObject) { sw = mPtr.Construct(config, context); this.context = context; } return(new Status(sw.Code, sw.Error)); }