All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.octopusden.octopus.vcsfacade.service.VcsManager.kt Maven / Gradle / Ivy

The newest version!
package org.octopusden.octopus.vcsfacade.service

import java.util.Date
import org.octopusden.octopus.vcsfacade.client.common.dto.Branch
import org.octopusden.octopus.vcsfacade.client.common.dto.Commit
import org.octopusden.octopus.vcsfacade.client.common.dto.CommitWithFiles
import org.octopusden.octopus.vcsfacade.client.common.dto.CreatePullRequest
import org.octopusden.octopus.vcsfacade.client.common.dto.CreateTag
import org.octopusden.octopus.vcsfacade.client.common.dto.PullRequest
import org.octopusden.octopus.vcsfacade.client.common.dto.SearchIssueInRangesResponse
import org.octopusden.octopus.vcsfacade.client.common.dto.SearchIssuesInRangesRequest
import org.octopusden.octopus.vcsfacade.client.common.dto.SearchSummary
import org.octopusden.octopus.vcsfacade.client.common.dto.Tag

interface VcsManager {
    fun getTags(sshUrl: String): Sequence
    fun createTag(sshUrl: String, createTag: CreateTag): Tag
    fun getTag(sshUrl: String, name: String): Tag
    fun deleteTag(sshUrl: String, name: String)
    fun getCommits(sshUrl: String, fromHashOrRef: String?, fromDate: Date?, toHashOrRef: String): Sequence
    fun getCommitsWithFiles(sshUrl: String, fromHashOrRef: String?, fromDate: Date?, toHashOrRef: String): Sequence
    fun getCommit(sshUrl: String, hashOrRef: String): Commit
    fun getCommitWithFiles(sshUrl: String, hashOrRef: String): CommitWithFiles
    fun createPullRequest(sshUrl: String, createPullRequest: CreatePullRequest): PullRequest
    fun searchIssuesInRanges(searchRequest: SearchIssuesInRangesRequest): SearchIssueInRangesResponse
    fun findBranches(issueKey: String): Sequence
    fun findCommits(issueKey: String): Sequence
    fun findCommitsWithFiles(issueKey: String): Sequence
    fun findPullRequests(issueKey: String): Sequence
    fun find(issueKey: String): SearchSummary
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy