ds-sfcoe-ailabs
Version:
AI-powered code review tool with static analysis integration for comprehensive code quality assessment.
69 lines (68 loc) • 1.64 kB
JavaScript
/**
* Abstract class representing a Git provider for interacting with Git hosting services
* Provides common functionality for posting comments and managing repository interactions
*/
export default class GitProvider {
token;
owner;
repo;
/**
* Creates a new Git provider instance
*
* @param token - The authentication token for the Git provider
* @param owner - The repository owner/organization name
* @param repo - The repository name
* @example
* ```typescript
* class MyGitProvider extends GitProvider {
* constructor() {
* super('token123', 'myorg', 'myrepo');
* }
* }
* ```
*/
constructor(token, owner, repo) {
this.token = token;
this.owner = owner;
this.repo = repo;
}
/**
* Gets the repository owner
*
* @returns The repository owner name
* @example
* ```typescript
* const owner = gitProvider.getOwner();
* console.log(owner); // 'myorg'
* ```
*/
getOwner() {
return this.owner;
}
/**
* Gets the repository name
*
* @returns The repository name
* @example
* ```typescript
* const repo = gitProvider.getRepo();
* console.log(repo); // 'myrepo'
* ```
*/
getRepo() {
return this.repo;
}
/**
* Gets the authentication token
*
* @returns The authentication token
* @example
* ```typescript
* const token = gitProvider.getToken();
* console.log(token); // 'token123'
* ```
*/
getToken() {
return this.token;
}
}