Jira Cloud 是适配器——它包装单体连接器 Bitzsoft.Integrations.JiraCloud 暴露的只读 Issue client,把 Issue 查询/列表能力适配到统一的 IProjectManagementService 抽象。
包信息
| 项 | 值 |
|---|---|
| NuGet 包 | Bitzsoft.Integrations.ProjectManagement.JiraCloud |
| 实现接口 | IProjectManagementService |
| Provider ID | jira-cloud |
| 鉴权方式 | 由单体连接器 Bitzsoft.Integrations.JiraCloud 负责(OAuth 2.0 (3LO)) |
| 区域 | Global |
配置字段
本适配器没有独立的 Options 类——鉴权、endpoint、凭据均由单体连接器管理。注册时通过 IJiraCloudPmContextFactory 或固定的 JiraCloudRequestContext 提供请求上下文。
DI 注册
// 1. 先注册 Jira Cloud 单体连接器(提供 IJiraCloudClient)services.AddBitzsoftJiraCloud(/* ... */);
// 2a. 注册 PM 适配器,用自定义上下文工厂services.AddJiraCloudProjectManagement<MyJiraCloudContextFactory>();
// 2b. 或用固定的请求上下文services.AddJiraCloudProjectManagement(new JiraCloudRequestContext{ // 填写目标 cloudId / 资源等});使用示例
// 读取能力可用var task = await _pm.GetTaskAsync("ISSUE-123");var tasks = await _pm.ListTasksAsync(new ListTasksRequest { ProjectId = "10001" });
// 以下方法会抛出 NotSupportedException(只读边界):// await _pm.CreateProjectAsync(...)// await _pm.ListProjectsAsync()// await _pm.CreateTaskAsync(...)// await _pm.UpdateTaskAsync(...)// await _pm.CompleteTaskAsync(...)依赖
| 包 | 说明 |
|---|---|
Bitzsoft.Integrations.ProjectManagement | 项目管理服务抽象层 |
Bitzsoft.Integrations.JiraCloud | Jira Cloud 单体连接器(提供 IJiraCloudClient) |
已知限制
- 只读:仅支持任务查询/列表(
GetTaskAsync、ListTasksAsync)。项目创建/列表、任务创建/更新/完成抛出NotSupportedException。 - 鉴权与 token 刷新均由单体连接器管理,本适配器不参与。
- 详见 ADR-0006:Jira Cloud 资源级 3LO。