private void ParseLoginResponse(string resp) { try { using (MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(resp))) { var ser = new DataContractJsonSerializer(typeof(Responses.Session.LoginResponse)); Responses.Session.LoginResponse response = (ser.ReadObject(stream) as Responses.Session.LoginResponse); this.UserID = response.UserID; this.DeviceID = response.DeviceID; this.HomeServer = response.HomeServer; this._backend.SetAccessToken(response.AccessToken); _events.FireLoginEvent(); } } catch { throw new MatrixException("Failed to parse LoginResponse"); } }
internal void FireLoginEvent(Responses.Session.LoginResponse resp) => LoginEvent?.Invoke(this, new LoginEventArgs() { AccessToken = resp.AccessToken, DeviceID = resp.DeviceID, UserID = resp.UserID });