public void SaveAuthToFile(AuthenticationInfo authInfo)
        {
            if (authInfo == null ||
                authInfo.AccessToken == null ||
                authInfo.RefreshToken == null ||
                authInfo.AccessTokenExpiration == null)
            {
                File.Delete(authFileLocation);
                return;
            }

            EncryptedFileManager.WriteObject(authInfo, authFileLocation);
            File.SetAttributes(authFileLocation, File.GetAttributes(authFileLocation) | FileAttributes.Hidden);
        }
        private async Task <AuthenticationInfo> ReadAuthFromFile()
        {
            AuthenticationInfo authInfo;

            try
            {
                authInfo = await Task.Run(() => {
                    try
                    {
                        return(EncryptedFileManager.ReadObject <AuthenticationInfo>(authFileLocation));
                    }
                    catch
                    {
                        return(null);
                    }
                });
            }
            catch (IOException)
            {
                authInfo = null;
            }

            return(authInfo);
        }