GithubApi

class GithubApi(    apiKey: String,     baseUrl: String = GithubApi.baseUrl,     client: HttpClient = httpClient,     objectMapper: ObjectMapper = GithubApi.objectMapper)

Constructors

Link copied to clipboard
constructor(    apiKey: String,     baseUrl: String = GithubApi.baseUrl,     client: HttpClient = httpClient,     objectMapper: ObjectMapper = GithubApi.objectMapper)

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
fun GithubApi.commitsAsFlow(repositoryName: String, concurrency: Int = 1, filter: CommitQuery.() -> Unit = {}): Flow<Commit>

Retrieves a flow of all commits for the specified GitHub repository, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.downloadRepositoryArchive(    repositoryName: String,     compressionType: CompressionType = CompressionType.ZIP,     ref: String = "main"): Flow<ByteBuffer>

Downloads the archive of the specified GitHub repository.

Link copied to clipboard
fun GithubApi.issuesAsFlow(repositoryName: String, concurrency: Int = 1, filter: RepositoryIssueQuery.() -> Unit = {}): Flow<Issue>

Retrieves a flow of all issues for the specified GitHub repository, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.pullRequestsAsFlow(repositoryName: String, concurrency: Int = 1, filter: PullRequestQuery.() -> Unit = {}): Flow<PullRequest>

Retrieves a flow of all pull requests for the specified GitHub repository, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.repositoriesAsFlow(username: String, concurrency: Int = 1, filter: RepositoryQuery.() -> Unit = {}): Flow<Repository>

Retrieves a flow of all repositories for the specified GitHub user, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.treeAsFlow(    repositoryName: String,     fileExtensions: List<String> = emptyList(),     skipFolders: List<String> = emptyList(),     sha: String? = null,     concurrency: Int = 100): Flow<TreeRef.TreeEntry>

Retrieves a flow of tree entries for the specified GitHub repository, filtered by file extensions and skipped folders.