Class ProjectsClient
java.lang.Object
ink.icoding.github4j.GithubClient
ink.icoding.github4j.client.ProjectsClient
GitHub Projects (Classic) API 客户端。
提供经典项目的 CRUD 操作、项目列管理、项目卡片管理等功能。
注意: 此客户端仅支持 Classic Projects,不支持新版 Projects (v2)。
对应 GitHub REST API 文档: Projects
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateCard(long columnId, Map<String, Object> body) 在指定项目列中创建新卡片。createColumn(long projectId, Map<String, String> body) 为指定项目创建新列。createForOrg(String org, Map<String, Object> body) 为指定组织创建经典项目。为指定仓库创建经典项目。voiddelete(long projectId) 删除指定经典项目。voiddeleteCard(long cardId) 删除指定项目卡片。voiddeleteColumn(long columnId) 删除指定项目列。get(long projectId) 获取指定经典项目的详细信息。getCard(long cardId) 获取指定项目卡片的详细信息。getColumn(long columnId) 获取指定项目列的详细信息。listCards(long columnId, ListProjectCardsOptions options) 列出指定项目列的卡片。listColumns(long projectId) 列出指定项目的所有列。listForOrg(String org, ListProjectsOptions options) 列出指定组织的经典项目。listForRepo(String owner, String repo, ListProjectsOptions options) 列出指定仓库的经典项目。void移动项目卡片到指定位置。更新指定经典项目的信息。updateCard(long cardId, Map<String, Object> body) 更新指定项目卡片的信息。updateColumn(long columnId, Map<String, String> body) 更新指定项目列的信息。Methods inherited from class GithubClient
actions, builder, configureObjectMapper, delete, get, get, getPaged, getRaw, gists, git, issues, meta, notifications, orgs, patch, post, projects, pulls, put, putNoBody, releases, repos, search, teams, users, webhooksModifier and TypeMethodDescriptionactions()static GithubClientBuilderbuilder()protected com.fasterxml.jackson.databind.ObjectMapperconfigureObjectMapper(com.fasterxml.jackson.databind.ObjectMapper mapper) protected GithubResponse<Void> protected <T> GithubResponse<T> get(String path, com.fasterxml.jackson.core.type.TypeReference<T> typeRef, Map<String, String> queryParams) protected <T> GithubResponse<T> protected <T> Page<T> protected GithubResponse<byte[]> gists()git()issues()meta()orgs()protected <T> GithubResponse<T> protected <T> GithubResponse<T> projects()pulls()protected <T> GithubResponse<T> protected GithubResponse<Void> releases()repos()search()teams()users()webhooks()
-
Constructor Details
-
ProjectsClient
-
-
Method Details
-
listForRepo
列出指定仓库的经典项目。API 端点:
GET /repos/{owner}/{repo}/projects- Parameters:
owner- 仓库所有者repo- 仓库名称options- 列表选项(项目状态筛选、分页),可为 null- Returns:
- 分页的项目列表
-
listForOrg
列出指定组织的经典项目。API 端点:
GET /orgs/{org}/projects- Parameters:
org- 组织名称options- 列表选项(项目状态筛选、分页),可为 null- Returns:
- 分页的项目列表
-
get
获取指定经典项目的详细信息。API 端点:
GET /projects/{project_id}- Parameters:
projectId- 项目的 ID- Returns:
- 项目详细信息
-
createForRepo
-
createForOrg
-
update
更新指定经典项目的信息。API 端点:
PATCH /projects/{project_id}- Parameters:
projectId- 项目的 IDbody- 更新项目的请求参数- Returns:
- 更新后的项目信息
-
delete
public void delete(long projectId) 删除指定经典项目。API 端点:
DELETE /projects/{project_id}- Parameters:
projectId- 项目的 ID
-
listColumns
列出指定项目的所有列。API 端点:
GET /projects/{project_id}/columns- Parameters:
projectId- 项目的 ID- Returns:
- 分页的项目列列表
-
getColumn
获取指定项目列的详细信息。API 端点:
GET /projects/columns/{column_id}- Parameters:
columnId- 项目列的 ID- Returns:
- 项目列详细信息
-
createColumn
为指定项目创建新列。API 端点:
POST /projects/{project_id}/columns- Parameters:
projectId- 项目的 IDbody- 创建列的请求参数(包含 name 字段)- Returns:
- 创建成功后的项目列信息
-
updateColumn
更新指定项目列的信息。API 端点:
PATCH /projects/columns/{column_id}- Parameters:
columnId- 项目列的 IDbody- 更新列的请求参数- Returns:
- 更新后的项目列信息
-
deleteColumn
public void deleteColumn(long columnId) 删除指定项目列。API 端点:
DELETE /projects/columns/{column_id}- Parameters:
columnId- 项目列的 ID
-
listCards
列出指定项目列的卡片。API 端点:
GET /projects/columns/{column_id}/cards- Parameters:
columnId- 项目列的 IDoptions- 列表选项(归档状态筛选、分页),可为 null- Returns:
- 分页的项目卡片列表
-
getCard
获取指定项目卡片的详细信息。API 端点:
GET /projects/columns/cards/{card_id}- Parameters:
cardId- 项目卡片的 ID- Returns:
- 项目卡片详细信息
-
createCard
在指定项目列中创建新卡片。API 端点:
POST /projects/columns/{column_id}/cards- Parameters:
columnId- 项目列的 IDbody- 创建卡片的请求参数- Returns:
- 创建成功后的项目卡片信息
-
updateCard
更新指定项目卡片的信息。API 端点:
PATCH /projects/columns/cards/{card_id}- Parameters:
cardId- 项目卡片的 IDbody- 更新卡片的请求参数- Returns:
- 更新后的项目卡片信息
-
deleteCard
public void deleteCard(long cardId) 删除指定项目卡片。API 端点:
DELETE /projects/columns/cards/{card_id}- Parameters:
cardId- 项目卡片的 ID
-
moveCard
-