public BitBucketScanner( ProjectFileParser projectFileParser, string account, string key, string secretKey) { _projectFileParser = projectFileParser; if (string.IsNullOrWhiteSpace(key)) { throw new ArgumentNullException(nameof(key)); } if (string.IsNullOrWhiteSpace(secretKey)) { throw new ArgumentNullException(nameof(secretKey)); } _bbAccount = account ?? throw new InvalidOperationException(nameof(account)); _client = new SharpBucketV2(); _client.OAuth2ClientCredentials(key, secretKey); }
public GitHubScanner( ProjectFileParser projectFileParser, string organization, string accessToken, string repos) { _projectFileParser = projectFileParser; var proxy = new WebProxy(); var connection = new Connection( new ProductHeaderValue(AppName), new HttpClientAdapter(() => HttpMessageHandlerFactory.CreateDefault(proxy))); var token = accessToken ?? throw new InvalidOperationException( $"Access token can't be empty. For unauthenticated requests rate limit = 60 calls per hour!"); _client = new GitHubClient(new ProductHeaderValue(AppName)) { Credentials = new Credentials(token), }; if (string.IsNullOrWhiteSpace(organization)) { throw new ArgumentNullException(nameof(organization)); } _organization = organization; if (!string.IsNullOrWhiteSpace(repos)) { _repos = new RepositoryCollection(); var reposArr = repos.Split(',', StringSplitOptions.RemoveEmptyEntries); foreach (var repo in reposArr) { var trimmedRepo = repo.Trim(); _repos.Add(organization, trimmedRepo); } } }