|
| 1 | +```mermaid |
| 2 | +graph LR |
| 3 | + BitbucketUnifiedClient["BitbucketUnifiedClient"] |
| 4 | + BitbucketBaseComponent["BitbucketBaseComponent"] |
| 5 | + BitbucketCloudBaseComponent["BitbucketCloudBaseComponent"] |
| 6 | + AtlassianRESTAPIClient["AtlassianRESTAPIClient"] |
| 7 | + BitbucketServerGlobalPermissionsManager["BitbucketServerGlobalPermissionsManager"] |
| 8 | + BitbucketServerProjectManagement["BitbucketServerProjectManagement"] |
| 9 | + BitbucketServerCommonPermissionsManager["BitbucketServerCommonPermissionsManager"] |
| 10 | + BitbucketCloudWorkspaceManagement["BitbucketCloudWorkspaceManagement"] |
| 11 | + BitbucketCloudProjectManagement["BitbucketCloudProjectManagement"] |
| 12 | + BitbucketCloudPermissionManagement["BitbucketCloudPermissionManagement"] |
| 13 | + BitbucketCloudMemberManagement["BitbucketCloudMemberManagement"] |
| 14 | + BitbucketCloudCommonDataModels["BitbucketCloudCommonDataModels"] |
| 15 | + BitbucketUnifiedClient -- "inherits from" --> BitbucketBaseComponent |
| 16 | + BitbucketCloudBaseComponent -- "inherits from" --> BitbucketBaseComponent |
| 17 | + BitbucketUnifiedClient -- "uses" --> BitbucketCloudBaseComponent |
| 18 | + BitbucketServerGlobalPermissionsManager -- "inherits from" --> BitbucketBaseComponent |
| 19 | + BitbucketServerProjectManagement -- "inherits from" --> BitbucketBaseComponent |
| 20 | + BitbucketServerCommonPermissionsManager -- "inherits from" --> BitbucketBaseComponent |
| 21 | + BitbucketCloudWorkspaceManagement -- "inherits from" --> BitbucketCloudBaseComponent |
| 22 | + BitbucketCloudProjectManagement -- "inherits from" --> BitbucketCloudBaseComponent |
| 23 | + BitbucketCloudPermissionManagement -- "inherits from" --> BitbucketCloudBaseComponent |
| 24 | + BitbucketCloudMemberManagement -- "inherits from" --> BitbucketCloudBaseComponent |
| 25 | + BitbucketCloudCommonDataModels -- "inherits from" --> BitbucketCloudBaseComponent |
| 26 | + BitbucketBaseComponent -- "uses" --> AtlassianRESTAPIClient |
| 27 | + BitbucketUnifiedClient -- "uses" --> AtlassianRESTAPIClient |
| 28 | + BitbucketUnifiedClient -- "manages" --> BitbucketServerGlobalPermissionsManager |
| 29 | + BitbucketUnifiedClient -- "manages" --> BitbucketServerProjectManagement |
| 30 | + BitbucketUnifiedClient -- "uses" --> BitbucketCloudWorkspaceManagement |
| 31 | + BitbucketCloudBaseComponent -- "uses" --> AtlassianRESTAPIClient |
| 32 | + BitbucketServerGlobalPermissionsManager -- "uses" --> AtlassianRESTAPIClient |
| 33 | + BitbucketServerProjectManagement -- "uses" --> AtlassianRESTAPIClient |
| 34 | + BitbucketServerCommonPermissionsManager -- "uses" --> AtlassianRESTAPIClient |
| 35 | + BitbucketCloudWorkspaceManagement -- "uses" --> AtlassianRESTAPIClient |
| 36 | + BitbucketCloudWorkspaceManagement -- "manages" --> BitbucketCloudProjectManagement |
| 37 | + BitbucketCloudWorkspaceManagement -- "manages" --> BitbucketCloudPermissionManagement |
| 38 | + BitbucketCloudWorkspaceManagement -- "manages" --> BitbucketCloudMemberManagement |
| 39 | + BitbucketCloudProjectManagement -- "uses" --> AtlassianRESTAPIClient |
| 40 | + BitbucketCloudPermissionManagement -- "uses" --> AtlassianRESTAPIClient |
| 41 | + BitbucketCloudMemberManagement -- "uses" --> AtlassianRESTAPIClient |
| 42 | + BitbucketCloudCommonDataModels -- "uses" --> AtlassianRESTAPIClient |
| 43 | +``` |
| 44 | +[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:[email protected]) |
| 45 | + |
| 46 | +## Component Details |
| 47 | + |
| 48 | +This graph illustrates the architecture of the Bitbucket API Client subsystem, which provides a unified interface for interacting with both Bitbucket Server and Bitbucket Cloud APIs. It details the core client, base components for common and platform-specific functionalities, and specialized managers for global permissions, project management, workspace management, and common data models, all relying on a low-level REST API client for communication. |
| 49 | + |
| 50 | +### BitbucketUnifiedClient |
| 51 | +Provides a unified interface for interacting with both Bitbucket Server and Bitbucket Cloud APIs, covering functionalities related to projects, repositories, branches, tags, pull requests, webhooks, users, groups, and various administrative and permission management tasks across both Bitbucket platforms. |
| 52 | + |
| 53 | + |
| 54 | +**Related Classes/Methods**: |
| 55 | + |
| 56 | +- `atlassian.bitbucket.Bitbucket` (full file reference) |
| 57 | +- `atlassian.bitbucket.server.Server` (full file reference) |
| 58 | +- `atlassian.bitbucket.cloud.Cloud` (full file reference) |
| 59 | + |
| 60 | + |
| 61 | +### BitbucketBaseComponent |
| 62 | +This foundational component provides common functionalities and attributes shared across different Bitbucket API clients, such as data updating, time format checking, and generic paged data retrieval. It serves as a base class for more specific Bitbucket implementations. |
| 63 | + |
| 64 | + |
| 65 | +**Related Classes/Methods**: |
| 66 | + |
| 67 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/base.py#L14-L204" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.base.BitbucketBase` (14:204)</a> |
| 68 | + |
| 69 | + |
| 70 | +### BitbucketCloudBaseComponent |
| 71 | +This component extends the core Bitbucket base functionalities with features specific to the Bitbucket Cloud environment, such as handling cloud-specific links and paged data structures. |
| 72 | + |
| 73 | + |
| 74 | +**Related Classes/Methods**: |
| 75 | + |
| 76 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/base.py#L11-L125" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.base.BitbucketCloudBase` (11:125)</a> |
| 77 | + |
| 78 | + |
| 79 | +### AtlassianRESTAPIClient |
| 80 | +A fundamental utility component responsible for executing all HTTP requests (GET, POST, PUT, DELETE) to Atlassian APIs and handling URL construction. It acts as the low-level communication layer for all higher-level API clients. |
| 81 | + |
| 82 | + |
| 83 | +**Related Classes/Methods**: |
| 84 | + |
| 85 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/rest_client.py#L43-L1001" target="_blank" rel="noopener noreferrer">`atlassian.rest_client.AtlassianRestAPI` (43:1001)</a> |
| 86 | + |
| 87 | + |
| 88 | +### BitbucketServerGlobalPermissionsManager |
| 89 | +Manages global-level permissions for Bitbucket Server, allowing administrators to define and control access rights for users and groups across the entire Bitbucket instance. |
| 90 | + |
| 91 | + |
| 92 | +**Related Classes/Methods**: |
| 93 | + |
| 94 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/globalPermissions.py#L6-L103" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.globalPermissions.GlobalPermissions` (6:103)</a> |
| 95 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/globalPermissions.py#L106-L111" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.globalPermissions.Groups` (106:111)</a> |
| 96 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/globalPermissions.py#L114-L119" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.globalPermissions.Users` (114:119)</a> |
| 97 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/globalPermissions.py#L122-L153" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.globalPermissions.PermissionBase` (122:153)</a> |
| 98 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/globalPermissions.py#L156-L164" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.globalPermissions.Group` (156:164)</a> |
| 99 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/globalPermissions.py#L167-L198" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.globalPermissions.User` (167:198)</a> |
| 100 | + |
| 101 | + |
| 102 | +### BitbucketServerProjectManagement |
| 103 | +Provides functionalities for managing projects within Bitbucket Server, including operations such as creating, retrieving, updating, and deleting projects, as well as handling project-specific permissions. |
| 104 | + |
| 105 | + |
| 106 | +**Related Classes/Methods**: |
| 107 | + |
| 108 | +- `atlassian.bitbucket.server.projects.Projects` (full file reference) |
| 109 | +- `atlassian.bitbucket.server.projects.Project` (full file reference) |
| 110 | + |
| 111 | + |
| 112 | +### BitbucketServerCommonPermissionsManager |
| 113 | +Offers a shared set of functionalities for managing permissions in Bitbucket Server, applicable to both projects and repositories, enabling the assignment and revocation of read, write, and administrative access. |
| 114 | + |
| 115 | + |
| 116 | +**Related Classes/Methods**: |
| 117 | + |
| 118 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/common/permissions.py#L6-L107" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.common.permissions.Permissions` (6:107)</a> |
| 119 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/common/permissions.py#L110-L115" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.common.permissions.Groups` (110:115)</a> |
| 120 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/common/permissions.py#L118-L123" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.common.permissions.Users` (118:123)</a> |
| 121 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/common/permissions.py#L126-L161" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.common.permissions.PermissionBase` (126:161)</a> |
| 122 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/common/permissions.py#L164-L173" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.common.permissions.Group` (164:173)</a> |
| 123 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/server/common/permissions.py#L176-L220" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.server.common.permissions.User` (176:220)</a> |
| 124 | + |
| 125 | + |
| 126 | +### BitbucketCloudWorkspaceManagement |
| 127 | +Manages workspaces in Bitbucket Cloud, providing methods to list, retrieve, and check the existence of workspaces. It also serves as an entry point for managing projects, members, and permissions associated with a specific workspace. |
| 128 | + |
| 129 | + |
| 130 | +**Related Classes/Methods**: |
| 131 | + |
| 132 | +- `atlassian.bitbucket.cloud.workspaces.Workspaces` (full file reference) |
| 133 | +- `atlassian.bitbucket.cloud.workspaces.Workspace` (full file reference) |
| 134 | + |
| 135 | + |
| 136 | +### BitbucketCloudProjectManagement |
| 137 | +Focuses on project-related operations within Bitbucket Cloud workspaces, allowing for the creation, retrieval, updating, and deletion of projects. |
| 138 | + |
| 139 | + |
| 140 | +**Related Classes/Methods**: |
| 141 | + |
| 142 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/workspaces/projects.py#L9-L120" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.workspaces.projects.Projects` (9:120)</a> |
| 143 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/workspaces/projects.py#L123-L215" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.workspaces.projects.Project` (123:215)</a> |
| 144 | + |
| 145 | + |
| 146 | +### BitbucketCloudPermissionManagement |
| 147 | +Handles the administration of permissions for Bitbucket Cloud workspaces and repositories, enabling the assignment and management of access rights for users and groups. |
| 148 | + |
| 149 | + |
| 150 | +**Related Classes/Methods**: |
| 151 | + |
| 152 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/workspaces/permissions.py#L7-L52" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.workspaces.permissions.Permissions` (7:52)</a> |
| 153 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/workspaces/permissions.py#L55-L97" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.workspaces.permissions.WorkspaceMembership` (55:97)</a> |
| 154 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/workspaces/permissions.py#L100-L124" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.workspaces.permissions.RepositoryPermission` (100:124)</a> |
| 155 | + |
| 156 | + |
| 157 | +### BitbucketCloudMemberManagement |
| 158 | +Manages members within Bitbucket Cloud workspaces, providing functionalities to list and retrieve details of workspace members. |
| 159 | + |
| 160 | + |
| 161 | +**Related Classes/Methods**: |
| 162 | + |
| 163 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/workspaces/members.py#L6-L39" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.workspaces.members.WorkspaceMembers` (6:39)</a> |
| 164 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/workspaces/members.py#L42-L64" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.workspaces.members.WorkspaceMember` (42:64)</a> |
| 165 | + |
| 166 | + |
| 167 | +### BitbucketCloudCommonDataModels |
| 168 | +Defines the data structures for common entities in Bitbucket Cloud, such as users, participants in pull requests, build statuses, and comments, facilitating consistent data representation across the API. |
| 169 | + |
| 170 | + |
| 171 | +**Related Classes/Methods**: |
| 172 | + |
| 173 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/common/users.py#L4-L31" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.common.users.User` (4:31)</a> |
| 174 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/common/users.py#L34-L79" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.common.users.Participant` (34:79)</a> |
| 175 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/common/builds.py#L4-L86" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.common.builds.Build` (4:86)</a> |
| 176 | +- <a href="https://github.com/atlassian-api/atlassian-python-api/blob/master/atlassian/bitbucket/cloud/common/comments.py#L5-L50" target="_blank" rel="noopener noreferrer">`atlassian.bitbucket.cloud.common.comments.Comment` (5:50)</a> |
| 177 | + |
| 178 | + |
| 179 | + |
| 180 | + |
| 181 | +### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq) |
0 commit comments