Interface GitRepositoryProvider

  • All Known Implementing Classes:
    GiteaRepositoryProvider

    public interface GitRepositoryProvider
    역할: 다양한 Git Repository (Gitea, GitHub..)에 대한 공통 인터페이스를 정의
    책임: Git Repository 와의 상호작용(파일 CRUD)에 필요한 추상 메서드를 정의
    예시 인터페이스: GitRepositoryProvider
    고려사항: 인증 방식 (Token, Username/Password) 및 API Endpoint 설정은 각 구현체에서 담당하도록 합니다. 모든 Git Repository 서비스(Gitea, GitHub 등)가 구현해야 할 표준 계약을 정의합니다. Git Repository에 대한 파일 목록 조회, 파일 내용 조회, 파일 생성/수정(upsert), 파일 삭제 등의 추상 메서드를 가집니다.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean deleteFile​(java.lang.String owner, java.lang.String repoName, java.lang.String branch, java.lang.String filePath, java.lang.String commitMessage)  
      FileContent getFileContent​(java.lang.String owner, java.lang.String repoName, java.lang.String branch, java.lang.String filePath)  
      java.util.List<GitFileInfo> getListFilesAndDirectories​(java.lang.String owner, java.lang.String repoName, java.lang.String directoryPath, java.lang.String branch)  
      RepoType getType()  
      boolean upsertFile​(java.lang.String owner, java.lang.String repoName, java.lang.String branch, java.lang.String filePath, java.lang.String content, java.lang.String commitMessage)  
    • Method Detail

      • getListFilesAndDirectories

        java.util.List<GitFileInfo> getListFilesAndDirectories​(java.lang.String owner,
                                                               java.lang.String repoName,
                                                               java.lang.String directoryPath,
                                                               java.lang.String branch)
      • getFileContent

        FileContent getFileContent​(java.lang.String owner,
                                   java.lang.String repoName,
                                   java.lang.String branch,
                                   java.lang.String filePath)
      • upsertFile

        boolean upsertFile​(java.lang.String owner,
                           java.lang.String repoName,
                           java.lang.String branch,
                           java.lang.String filePath,
                           java.lang.String content,
                           java.lang.String commitMessage)
      • deleteFile

        boolean deleteFile​(java.lang.String owner,
                           java.lang.String repoName,
                           java.lang.String branch,
                           java.lang.String filePath,
                           java.lang.String commitMessage)