forked from ToolJet/ToolJet
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbase-git.service.ts
More file actions
30 lines (28 loc) · 1.27 KB
/
base-git.service.ts
File metadata and controls
30 lines (28 loc) · 1.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/**
* Base service for all source control implementations to share common Git synchronization methods.
*
* @remarks
* DEPENDENCY INJECTION CONSTRAINT: Only platform-common services can be injected here
* (Licensing, Import/Export, etc.).
* Provider-specific implementations (SSH/HTTPS GitHub,
* GitLab, etc.) must be injected at the concrete service level, not in this base class.
*
* METHOD CONSTRAINT: Only methods that are identical across all source control providers
* should be implemented in this base class. Provider-specific logic should be moved to
* the respective concrete implementations.
*/
import { IBaseGitSyncInterface } from './base-git.interface';
import { AppGitPushDto } from '@modules/app-git/dto';
import { AppVersion } from '@entities/app_version.entity';
export abstract class BaseGitSyncService implements IBaseGitSyncInterface {
constructor() {}
async getAppVersionByVersionId(appGitPushBody: AppGitPushDto): Promise<AppVersion> {
throw new Error('Method not implemented.');
}
async getAppVersionById(versionId: string): Promise<AppVersion> {
throw new Error('Method not implemented.');
}
async getProviderConfigs(userOrganizationId: string, organizationId: string): Promise<any> {
throw new Error('Method not implemented.');
}
}