Example #1
0
        /// <summary>
        /// Returns the <see cref="VssCredentials"/> corresponding to a <see cref="ITfsCredentials"/> object.
        /// </summary>
        /// <param name="credentials"><see cref="ITfsCredentials"/> credential instance.</param>
        /// <returns><see cref="VssCredentials"/> instance.</returns>
        public static VssCredentials ToVssCredentials(this ITfsCredentials credentials)
        {
            credentials.NotNull(nameof(credentials));

            switch (credentials.GetType().Name)
            {
            case nameof(TfsNtlmCredentials):
                return(new VssCredentials());

            case nameof(TfsBasicCredentials):
                var basicCredentials = (TfsBasicCredentials)credentials;
                return(new VssBasicCredential(basicCredentials.UserName, basicCredentials.Password));

            case nameof(TfsOAuthCredentials):
                var oAuthCredentials = (TfsOAuthCredentials)credentials;
                return(new VssOAuthAccessTokenCredential(oAuthCredentials.AccessToken));

            case nameof(TfsAadCredentials):
                var aadCredentials = (TfsAadCredentials)credentials;
                return(new VssAadCredential(aadCredentials.UserName, aadCredentials.Password));

            default:
                throw new PullRequestIssuesException("Unknown credential type.");
            }
        }
Example #2
0
        /// <summary>
        /// Returns the <see cref="VssCredentials"/> corresponding to a <see cref="ITfsCredentials"/> object.
        /// </summary>
        /// <param name="credentials"><see cref="ITfsCredentials"/> credential instance.</param>
        /// <returns><see cref="VssCredentials"/> instance.</returns>
        public static VssCredentials ToVssCredentials(this ITfsCredentials credentials)
        {
            if (credentials == null)
            {
                throw new ArgumentNullException(nameof(credentials));
            }

            switch (credentials.GetType().Name)
            {
            case nameof(TfsNtlmCredentials):
                return(new VssCredentials());

            case nameof(TfsBasicCredentials):
                var basicCredentials = (TfsBasicCredentials)credentials;
                return(new VssBasicCredential(basicCredentials.UserName, basicCredentials.Password));

            case nameof(TfsOAuthCredentials):
                var oAuthCredentials = (TfsOAuthCredentials)credentials;
                return(new VssOAuthAccessTokenCredential(oAuthCredentials.AccessToken));

            default:
                throw new InvalidOperationException("Not supported credential type.");
            }
        }