casker-cli 0.0.0-stage → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +1 -3
- package/dist/backup/application/commands/CreateBackupCommand.d.ts +8 -0
- package/dist/backup/application/commands/CreateBackupCommand.d.ts.map +1 -0
- package/dist/backup/application/commands/CreateBackupCommand.js +2 -0
- package/dist/backup/application/commands/CreateBackupCommand.js.map +1 -0
- package/dist/backup/application/commands/CreateBackupCommandHandler.d.ts +13 -0
- package/dist/backup/application/commands/CreateBackupCommandHandler.d.ts.map +1 -0
- package/dist/backup/application/commands/CreateBackupCommandHandler.js +31 -0
- package/dist/backup/application/commands/CreateBackupCommandHandler.js.map +1 -0
- package/dist/backup/application/queries/ListBackupQuery.d.ts +18 -0
- package/dist/backup/application/queries/ListBackupQuery.d.ts.map +1 -0
- package/dist/backup/application/queries/ListBackupQuery.js +2 -0
- package/dist/backup/application/queries/ListBackupQuery.js.map +1 -0
- package/dist/backup/application/queries/ListBackupQueryHandler.d.ts +9 -0
- package/dist/backup/application/queries/ListBackupQueryHandler.d.ts.map +1 -0
- package/dist/backup/application/queries/ListBackupQueryHandler.js +22 -0
- package/dist/backup/application/queries/ListBackupQueryHandler.js.map +1 -0
- package/dist/backup/composition/CreateBackupHandler.d.ts +3 -0
- package/dist/backup/composition/CreateBackupHandler.d.ts.map +1 -0
- package/dist/backup/composition/CreateBackupHandler.js +11 -0
- package/dist/backup/composition/CreateBackupHandler.js.map +1 -0
- package/dist/backup/composition/CreateListBackupHandler.d.ts +3 -0
- package/dist/backup/composition/CreateListBackupHandler.d.ts.map +1 -0
- package/dist/backup/composition/CreateListBackupHandler.js +7 -0
- package/dist/backup/composition/CreateListBackupHandler.js.map +1 -0
- package/dist/backup/domain/entities/BackupResult.d.ts +25 -0
- package/dist/backup/domain/entities/BackupResult.d.ts.map +1 -0
- package/dist/backup/domain/entities/BackupResult.js +52 -0
- package/dist/backup/domain/entities/BackupResult.js.map +1 -0
- package/dist/backup/domain/errors/BackupFailedError.d.ts +6 -0
- package/dist/backup/domain/errors/BackupFailedError.d.ts.map +1 -0
- package/dist/backup/domain/errors/BackupFailedError.js +11 -0
- package/dist/backup/domain/errors/BackupFailedError.js.map +1 -0
- package/dist/backup/domain/factories/BackupEngineFactory.d.ts +6 -0
- package/dist/backup/domain/factories/BackupEngineFactory.d.ts.map +1 -0
- package/dist/backup/domain/factories/BackupEngineFactory.js +3 -0
- package/dist/backup/domain/factories/BackupEngineFactory.js.map +1 -0
- package/dist/backup/domain/interfaces/BackupEngine.d.ts +10 -0
- package/dist/backup/domain/interfaces/BackupEngine.d.ts.map +1 -0
- package/dist/backup/domain/interfaces/BackupEngine.js +10 -0
- package/dist/backup/domain/interfaces/BackupEngine.js.map +1 -0
- package/dist/backup/domain/repositories/BackupResultRepository.d.ts +7 -0
- package/dist/backup/domain/repositories/BackupResultRepository.d.ts.map +1 -0
- package/dist/backup/domain/repositories/BackupResultRepository.js +3 -0
- package/dist/backup/domain/repositories/BackupResultRepository.js.map +1 -0
- package/dist/backup/infrastructure/engines/BaseBackupEngine.d.ts +10 -0
- package/dist/backup/infrastructure/engines/BaseBackupEngine.d.ts.map +1 -0
- package/dist/backup/infrastructure/engines/BaseBackupEngine.js +26 -0
- package/dist/backup/infrastructure/engines/BaseBackupEngine.js.map +1 -0
- package/dist/backup/infrastructure/engines/MySqlBackupEngine.d.ts +8 -0
- package/dist/backup/infrastructure/engines/MySqlBackupEngine.d.ts.map +1 -0
- package/dist/backup/infrastructure/engines/MySqlBackupEngine.js +24 -0
- package/dist/backup/infrastructure/engines/MySqlBackupEngine.js.map +1 -0
- package/dist/backup/infrastructure/engines/PostgresBackupEngine.d.ts +8 -0
- package/dist/backup/infrastructure/engines/PostgresBackupEngine.d.ts.map +1 -0
- package/dist/backup/infrastructure/engines/PostgresBackupEngine.js +24 -0
- package/dist/backup/infrastructure/engines/PostgresBackupEngine.js.map +1 -0
- package/dist/backup/infrastructure/factories/BackupEngineFactoryImpl.d.ts +12 -0
- package/dist/backup/infrastructure/factories/BackupEngineFactoryImpl.d.ts.map +1 -0
- package/dist/backup/infrastructure/factories/BackupEngineFactoryImpl.js +17 -0
- package/dist/backup/infrastructure/factories/BackupEngineFactoryImpl.js.map +1 -0
- package/dist/backup/infrastructure/persistance/entities/BackupResultModel.d.ts +11 -0
- package/dist/backup/infrastructure/persistance/entities/BackupResultModel.d.ts.map +1 -0
- package/dist/backup/infrastructure/persistance/entities/BackupResultModel.js +57 -0
- package/dist/backup/infrastructure/persistance/entities/BackupResultModel.js.map +1 -0
- package/dist/backup/infrastructure/persistance/mappers/BackupResultMapper.d.ts +7 -0
- package/dist/backup/infrastructure/persistance/mappers/BackupResultMapper.d.ts.map +1 -0
- package/dist/backup/infrastructure/persistance/mappers/BackupResultMapper.js +20 -0
- package/dist/backup/infrastructure/persistance/mappers/BackupResultMapper.js.map +1 -0
- package/dist/backup/infrastructure/persistance/migrations/1790597847025-InitialMigration.d.ts +7 -0
- package/dist/backup/infrastructure/persistance/migrations/1790597847025-InitialMigration.d.ts.map +1 -0
- package/dist/backup/infrastructure/persistance/migrations/1790597847025-InitialMigration.js +10 -0
- package/dist/backup/infrastructure/persistance/migrations/1790597847025-InitialMigration.js.map +1 -0
- package/dist/backup/infrastructure/persistance/migrations/1791226380321-AddDbName.d.ts +7 -0
- package/dist/backup/infrastructure/persistance/migrations/1791226380321-AddDbName.d.ts.map +1 -0
- package/dist/backup/infrastructure/persistance/migrations/1791226380321-AddDbName.js +16 -0
- package/dist/backup/infrastructure/persistance/migrations/1791226380321-AddDbName.js.map +1 -0
- package/dist/backup/infrastructure/persistance/repositories/BackupResultRepositoryImpl.d.ts +8 -0
- package/dist/backup/infrastructure/persistance/repositories/BackupResultRepositoryImpl.d.ts.map +1 -0
- package/dist/backup/infrastructure/persistance/repositories/BackupResultRepositoryImpl.js +28 -0
- package/dist/backup/infrastructure/persistance/repositories/BackupResultRepositoryImpl.js.map +1 -0
- package/dist/backup/presentation/cli/commands/CreateBackupCliCommand.d.ts +19 -0
- package/dist/backup/presentation/cli/commands/CreateBackupCliCommand.d.ts.map +1 -0
- package/dist/backup/presentation/cli/commands/CreateBackupCliCommand.js +66 -0
- package/dist/backup/presentation/cli/commands/CreateBackupCliCommand.js.map +1 -0
- package/dist/backup/presentation/cli/commands/ListBackupCliCommand.d.ts +17 -0
- package/dist/backup/presentation/cli/commands/ListBackupCliCommand.d.ts.map +1 -0
- package/dist/backup/presentation/cli/commands/ListBackupCliCommand.js +64 -0
- package/dist/backup/presentation/cli/commands/ListBackupCliCommand.js.map +1 -0
- package/dist/restore/application/commands/RestoreCommand.d.ts +8 -0
- package/dist/restore/application/commands/RestoreCommand.d.ts.map +1 -0
- package/dist/restore/application/commands/RestoreCommand.js +2 -0
- package/dist/restore/application/commands/RestoreCommand.js.map +1 -0
- package/dist/restore/application/commands/RestoreCommandHandler.d.ts +11 -0
- package/dist/restore/application/commands/RestoreCommandHandler.d.ts.map +1 -0
- package/dist/restore/application/commands/RestoreCommandHandler.js +14 -0
- package/dist/restore/application/commands/RestoreCommandHandler.js.map +1 -0
- package/dist/restore/composition/CreateBackupHandler.d.ts +3 -0
- package/dist/restore/composition/CreateBackupHandler.d.ts.map +1 -0
- package/dist/restore/composition/CreateBackupHandler.js +9 -0
- package/dist/restore/composition/CreateBackupHandler.js.map +1 -0
- package/dist/restore/domain/errors/RestoreFailedError.d.ts +5 -0
- package/dist/restore/domain/errors/RestoreFailedError.d.ts.map +1 -0
- package/dist/restore/domain/errors/RestoreFailedError.js +9 -0
- package/dist/restore/domain/errors/RestoreFailedError.js.map +1 -0
- package/dist/restore/domain/factories/RestoreEngineFactory.d.ts +6 -0
- package/dist/restore/domain/factories/RestoreEngineFactory.d.ts.map +1 -0
- package/dist/restore/domain/factories/RestoreEngineFactory.js +3 -0
- package/dist/restore/domain/factories/RestoreEngineFactory.js.map +1 -0
- package/dist/restore/domain/interfaces/RestoreEngine.d.ts +8 -0
- package/dist/restore/domain/interfaces/RestoreEngine.d.ts.map +1 -0
- package/dist/restore/domain/interfaces/RestoreEngine.js +7 -0
- package/dist/restore/domain/interfaces/RestoreEngine.js.map +1 -0
- package/dist/restore/infrastructure/engines/BaseRestoreEngine.d.ts +8 -0
- package/dist/restore/infrastructure/engines/BaseRestoreEngine.d.ts.map +1 -0
- package/dist/restore/infrastructure/engines/BaseRestoreEngine.js +14 -0
- package/dist/restore/infrastructure/engines/BaseRestoreEngine.js.map +1 -0
- package/dist/restore/infrastructure/engines/PostgresRestoreEngine.d.ts +7 -0
- package/dist/restore/infrastructure/engines/PostgresRestoreEngine.d.ts.map +1 -0
- package/dist/restore/infrastructure/engines/PostgresRestoreEngine.js +25 -0
- package/dist/restore/infrastructure/engines/PostgresRestoreEngine.js.map +1 -0
- package/dist/restore/infrastructure/factories/RestoreEngineFactoryImpl.d.ts +13 -0
- package/dist/restore/infrastructure/factories/RestoreEngineFactoryImpl.d.ts.map +1 -0
- package/dist/restore/infrastructure/factories/RestoreEngineFactoryImpl.js +16 -0
- package/dist/restore/infrastructure/factories/RestoreEngineFactoryImpl.js.map +1 -0
- package/dist/restore/presentation/cli/commands/RestoreCliCommand.d.ts +20 -0
- package/dist/restore/presentation/cli/commands/RestoreCliCommand.d.ts.map +1 -0
- package/dist/restore/presentation/cli/commands/RestoreCliCommand.js +65 -0
- package/dist/restore/presentation/cli/commands/RestoreCliCommand.js.map +1 -0
- package/dist/shared/application/handlers/CommandHandler.d.ts +4 -0
- package/dist/shared/application/handlers/CommandHandler.d.ts.map +1 -0
- package/dist/shared/application/handlers/CommandHandler.js +3 -0
- package/dist/shared/application/handlers/CommandHandler.js.map +1 -0
- package/dist/shared/application/handlers/QueryHandler.d.ts +4 -0
- package/dist/shared/application/handlers/QueryHandler.d.ts.map +1 -0
- package/dist/shared/application/handlers/QueryHandler.js +3 -0
- package/dist/shared/application/handlers/QueryHandler.js.map +1 -0
- package/dist/shared/composition/commands.d.ts +9 -0
- package/dist/shared/composition/commands.d.ts.map +1 -0
- package/dist/shared/composition/commands.js +9 -0
- package/dist/shared/composition/commands.js.map +1 -0
- package/dist/shared/domain/factories/CommandExecutorFactory.d.ts +11 -0
- package/dist/shared/domain/factories/CommandExecutorFactory.d.ts.map +1 -0
- package/dist/shared/domain/factories/CommandExecutorFactory.js +3 -0
- package/dist/shared/domain/factories/CommandExecutorFactory.js.map +1 -0
- package/dist/shared/domain/interfaces/CommandExecutor.d.ts +11 -0
- package/dist/shared/domain/interfaces/CommandExecutor.d.ts.map +1 -0
- package/dist/shared/domain/interfaces/CommandExecutor.js +3 -0
- package/dist/shared/domain/interfaces/CommandExecutor.js.map +1 -0
- package/dist/shared/domain/value-objects/ConnectionConfig.d.ts +24 -0
- package/dist/shared/domain/value-objects/ConnectionConfig.d.ts.map +1 -0
- package/dist/shared/domain/value-objects/ConnectionConfig.js +19 -0
- package/dist/shared/domain/value-objects/ConnectionConfig.js.map +1 -0
- package/dist/shared/domain/value-objects/ValueObject.d.ts +17 -0
- package/dist/shared/domain/value-objects/ValueObject.d.ts.map +1 -0
- package/dist/shared/domain/value-objects/ValueObject.js +34 -0
- package/dist/shared/domain/value-objects/ValueObject.js.map +1 -0
- package/dist/shared/infrastructure/config/data-source.d.ts +4 -0
- package/dist/shared/infrastructure/config/data-source.d.ts.map +1 -0
- package/dist/shared/infrastructure/config/data-source.js +13 -0
- package/dist/shared/infrastructure/config/data-source.js.map +1 -0
- package/dist/shared/infrastructure/executors/BaseCommandExecutor.d.ts +6 -0
- package/dist/shared/infrastructure/executors/BaseCommandExecutor.d.ts.map +1 -0
- package/dist/shared/infrastructure/executors/BaseCommandExecutor.js +37 -0
- package/dist/shared/infrastructure/executors/BaseCommandExecutor.js.map +1 -0
- package/dist/shared/infrastructure/executors/DockerCommandExecutor.d.ts +8 -0
- package/dist/shared/infrastructure/executors/DockerCommandExecutor.d.ts.map +1 -0
- package/dist/shared/infrastructure/executors/DockerCommandExecutor.js +13 -0
- package/dist/shared/infrastructure/executors/DockerCommandExecutor.js.map +1 -0
- package/dist/shared/infrastructure/executors/LocalCommandExecutor.d.ts +6 -0
- package/dist/shared/infrastructure/executors/LocalCommandExecutor.d.ts.map +1 -0
- package/dist/shared/infrastructure/executors/LocalCommandExecutor.js +7 -0
- package/dist/shared/infrastructure/executors/LocalCommandExecutor.js.map +1 -0
- package/dist/shared/infrastructure/factories/CommandExecutorFactoryImpl.d.ts +6 -0
- package/dist/shared/infrastructure/factories/CommandExecutorFactoryImpl.d.ts.map +1 -0
- package/dist/shared/infrastructure/factories/CommandExecutorFactoryImpl.js +13 -0
- package/dist/shared/infrastructure/factories/CommandExecutorFactoryImpl.js.map +1 -0
- package/dist/shared/presentation/bin/dev.d.ts +3 -0
- package/dist/shared/presentation/bin/dev.d.ts.map +1 -0
- package/dist/shared/presentation/bin/dev.js +4 -0
- package/dist/shared/presentation/bin/dev.js.map +1 -0
- package/dist/shared/presentation/bin/run.d.ts +3 -0
- package/dist/shared/presentation/bin/run.d.ts.map +1 -0
- package/dist/shared/presentation/bin/run.js +4 -0
- package/dist/shared/presentation/bin/run.js.map +1 -0
- package/dist/shared/presentation/hooks/init/DataSourceInitialize.d.ts +4 -0
- package/dist/shared/presentation/hooks/init/DataSourceInitialize.d.ts.map +1 -0
- package/dist/shared/presentation/hooks/init/DataSourceInitialize.js +7 -0
- package/dist/shared/presentation/hooks/init/DataSourceInitialize.js.map +1 -0
- package/dist/shared/utils/ErrorMessage.d.ts +2 -0
- package/dist/shared/utils/ErrorMessage.d.ts.map +1 -0
- package/dist/shared/utils/ErrorMessage.js +4 -0
- package/dist/shared/utils/ErrorMessage.js.map +1 -0
- package/package.json +96 -4
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 StenSOn27
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ExecutionTarget } from '../../../shared/domain/factories/CommandExecutorFactory.js';
|
|
2
|
+
import type { DatabaseConnectionProps } from '../../../shared/domain/value-objects/ConnectionConfig.js';
|
|
3
|
+
export interface CreateBackupCommand {
|
|
4
|
+
connection: DatabaseConnectionProps;
|
|
5
|
+
execution: ExecutionTarget;
|
|
6
|
+
outputDir: string;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=CreateBackupCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateBackupCommand.d.ts","sourceRoot":"","sources":["../../../../src/backup/application/commands/CreateBackupCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4DAA4D,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AAExG,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,uBAAuB,CAAC;IACpC,SAAS,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateBackupCommand.js","sourceRoot":"","sources":["../../../../src/backup/application/commands/CreateBackupCommand.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CommandHandler } from '../../../shared/application/handlers/CommandHandler.js';
|
|
2
|
+
import { BackupResultRepository } from '../../domain/repositories/BackupResultRepository.js';
|
|
3
|
+
import type { CommandExecutorFactory } from '../../../shared/domain/factories/CommandExecutorFactory.js';
|
|
4
|
+
import type { CreateBackupCommand } from './CreateBackupCommand.js';
|
|
5
|
+
import type { BackupEngineFactory } from '../../domain/factories/BackupEngineFactory.js';
|
|
6
|
+
export declare class CreateBackupCommandHandler implements CommandHandler<CreateBackupCommand, string> {
|
|
7
|
+
private repository;
|
|
8
|
+
private engineFactory;
|
|
9
|
+
private executorFactory;
|
|
10
|
+
constructor(repository: BackupResultRepository, engineFactory: BackupEngineFactory, executorFactory: CommandExecutorFactory);
|
|
11
|
+
handle(command: CreateBackupCommand): Promise<string>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=CreateBackupCommandHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateBackupCommandHandler.d.ts","sourceRoot":"","sources":["../../../../src/backup/application/commands/CreateBackupCommandHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AACxF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAC7F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4DAA4D,CAAC;AACzG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAEzF,qBAAa,0BAA2B,YAAW,cAAc,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAC5F,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,eAAe,CAAyB;gBAG9C,UAAU,EAAE,sBAAsB,EAClC,aAAa,EAAE,mBAAmB,EAClC,eAAe,EAAE,sBAAsB;IAOnC,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;CAuB5D"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { CommandHandler } from '../../../shared/application/handlers/CommandHandler.js';
|
|
2
|
+
import { BackupResultRepository } from '../../domain/repositories/BackupResultRepository.js';
|
|
3
|
+
import { BackupResult } from '../../domain/entities/BackupResult.js';
|
|
4
|
+
import { BackupFailedError } from '../../domain/errors/BackupFailedError.js';
|
|
5
|
+
export class CreateBackupCommandHandler {
|
|
6
|
+
repository;
|
|
7
|
+
engineFactory;
|
|
8
|
+
executorFactory;
|
|
9
|
+
constructor(repository, engineFactory, executorFactory) {
|
|
10
|
+
this.repository = repository;
|
|
11
|
+
this.engineFactory = engineFactory;
|
|
12
|
+
this.executorFactory = executorFactory;
|
|
13
|
+
}
|
|
14
|
+
async handle(command) {
|
|
15
|
+
const executor = await this.executorFactory.create(command.execution);
|
|
16
|
+
const backupEngine = await this.engineFactory.create(command.connection.type, executor);
|
|
17
|
+
try {
|
|
18
|
+
const backupResult = await backupEngine.backup(command.connection, command.outputDir);
|
|
19
|
+
await this.repository.create(backupResult);
|
|
20
|
+
return backupResult.getId();
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
if (err instanceof BackupFailedError) {
|
|
24
|
+
const failed = BackupResult.create(command.connection.type, command.outputDir, 0, 'failed', command.connection.database, err.message);
|
|
25
|
+
await this.repository.create(failed);
|
|
26
|
+
}
|
|
27
|
+
throw err;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=CreateBackupCommandHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateBackupCommandHandler.js","sourceRoot":"","sources":["../../../../src/backup/application/commands/CreateBackupCommandHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AACxF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAG7F,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,MAAM,OAAO,0BAA0B;IAC7B,UAAU,CAAyB;IACnC,aAAa,CAAsB;IACnC,eAAe,CAAyB;IAEhD,YACE,UAAkC,EAClC,aAAkC,EAClC,eAAuC;QAEvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA4B;QACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACtE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAExF,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACtF,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3C,OAAO,YAAY,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAChC,OAAO,CAAC,UAAU,CAAC,IAAI,EACvB,OAAO,CAAC,SAAS,EACjB,CAAC,EACD,QAAQ,EACR,OAAO,CAAC,UAAU,CAAC,QAAQ,EAC3B,GAAG,CAAC,OAAO,CACZ,CAAC;gBACF,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { DriverType, Status } from '../../domain/entities/BackupResult.js';
|
|
2
|
+
export interface ListBackupQuery {
|
|
3
|
+
limit: number;
|
|
4
|
+
status?: Status | undefined;
|
|
5
|
+
driver?: DriverType | undefined;
|
|
6
|
+
all?: boolean | undefined;
|
|
7
|
+
}
|
|
8
|
+
export interface BackupListItem {
|
|
9
|
+
id: string;
|
|
10
|
+
driverType: DriverType;
|
|
11
|
+
filePath: string;
|
|
12
|
+
sizeBytes: number;
|
|
13
|
+
status: Status;
|
|
14
|
+
name: string;
|
|
15
|
+
createdAt: Date;
|
|
16
|
+
errorMessage?: string | undefined;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=ListBackupQuery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListBackupQuery.d.ts","sourceRoot":"","sources":["../../../../src/backup/application/queries/ListBackupQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAEhF,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAChC,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,IAAI,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListBackupQuery.js","sourceRoot":"","sources":["../../../../src/backup/application/queries/ListBackupQuery.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { QueryHandler } from '../../../shared/application/handlers/QueryHandler.js';
|
|
2
|
+
import type { BackupResultRepository } from '../../domain/repositories/BackupResultRepository.js';
|
|
3
|
+
import type { BackupListItem, ListBackupQuery } from './ListBackupQuery.js';
|
|
4
|
+
export declare class ListBackupQueryHandler implements QueryHandler<ListBackupQuery, BackupListItem[]> {
|
|
5
|
+
private repository;
|
|
6
|
+
constructor(repository: BackupResultRepository);
|
|
7
|
+
handle(query: ListBackupQuery): Promise<BackupListItem[]>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=ListBackupQueryHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListBackupQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/backup/application/queries/ListBackupQueryHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5E,qBAAa,sBAAuB,YAAW,YAAY,CAAC,eAAe,EAAE,cAAc,EAAE,CAAC;IAC5F,OAAO,CAAC,UAAU,CAAyB;gBAE/B,UAAU,EAAE,sBAAsB;IAIxC,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;CAgBhE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export class ListBackupQueryHandler {
|
|
2
|
+
repository;
|
|
3
|
+
constructor(repository) {
|
|
4
|
+
this.repository = repository;
|
|
5
|
+
}
|
|
6
|
+
async handle(query) {
|
|
7
|
+
const backupResults = query.all
|
|
8
|
+
? await this.repository.getAll()
|
|
9
|
+
: await this.repository.find(query.limit, query.status, query.driver);
|
|
10
|
+
return backupResults.map((r) => ({
|
|
11
|
+
id: r.getId(),
|
|
12
|
+
driverType: r.getDriverType(),
|
|
13
|
+
filePath: r.getFilePath(),
|
|
14
|
+
sizeBytes: r.getSizeBytes(),
|
|
15
|
+
status: r.getStatus(),
|
|
16
|
+
name: r.getName(),
|
|
17
|
+
createdAt: r.getCreatedAt(),
|
|
18
|
+
errorMessage: r.getErrorMessage(),
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=ListBackupQueryHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ListBackupQueryHandler.js","sourceRoot":"","sources":["../../../../src/backup/application/queries/ListBackupQueryHandler.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,sBAAsB;IACzB,UAAU,CAAyB;IAE3C,YAAY,UAAkC;QAC5C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAsB;QACjC,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG;YAC7B,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAChC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAExE,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/B,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE;YACb,UAAU,EAAE,CAAC,CAAC,aAAa,EAAE;YAC7B,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE;YACzB,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE;YAC3B,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE;YACrB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;YACjB,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE;YAC3B,YAAY,EAAE,CAAC,CAAC,eAAe,EAAE;SAClC,CAAC,CAAC,CAAC;IACN,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateBackupHandler.d.ts","sourceRoot":"","sources":["../../../src/backup/composition/CreateBackupHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,uDAAuD,CAAC;AAKnG,wBAAgB,mBAAmB,IAAI,0BAA0B,CAMhE"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CreateBackupCommandHandler } from '../application/commands/CreateBackupCommandHandler.js';
|
|
2
|
+
import { BackupEngineFactoryImpl } from '../infrastructure/factories/BackupEngineFactoryImpl.js';
|
|
3
|
+
import { CommandExecutorFactoryImpl } from '../../shared/infrastructure/factories/CommandExecutorFactoryImpl.js';
|
|
4
|
+
import { BackupResultRepositoryImpl } from '../infrastructure/persistance/repositories/BackupResultRepositoryImpl.js';
|
|
5
|
+
export function createBackupHandler() {
|
|
6
|
+
const repository = new BackupResultRepositoryImpl();
|
|
7
|
+
const engineFactory = new BackupEngineFactoryImpl();
|
|
8
|
+
const executorFactory = new CommandExecutorFactoryImpl();
|
|
9
|
+
return new CreateBackupCommandHandler(repository, engineFactory, executorFactory);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=CreateBackupHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateBackupHandler.js","sourceRoot":"","sources":["../../../src/backup/composition/CreateBackupHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,uDAAuD,CAAC;AACnG,OAAO,EAAE,uBAAuB,EAAE,MAAM,wDAAwD,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,qEAAqE,CAAC;AACjH,OAAO,EAAE,0BAA0B,EAAE,MAAM,0EAA0E,CAAC;AAEtH,MAAM,UAAU,mBAAmB;IACjC,MAAM,UAAU,GAAG,IAAI,0BAA0B,EAAE,CAAC;IACpD,MAAM,aAAa,GAAG,IAAI,uBAAuB,EAAE,CAAC;IACpD,MAAM,eAAe,GAAG,IAAI,0BAA0B,EAAE,CAAC;IAEzD,OAAO,IAAI,0BAA0B,CAAC,UAAU,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;AACpF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateListBackupHandler.d.ts","sourceRoot":"","sources":["../../../src/backup/composition/CreateListBackupHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAG1F,wBAAgB,uBAAuB,IAAI,sBAAsB,CAIhE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ListBackupQueryHandler } from '../application/queries/ListBackupQueryHandler.js';
|
|
2
|
+
import { BackupResultRepositoryImpl } from '../infrastructure/persistance/repositories/BackupResultRepositoryImpl.js';
|
|
3
|
+
export function createListBackupHandler() {
|
|
4
|
+
const repository = new BackupResultRepositoryImpl();
|
|
5
|
+
return new ListBackupQueryHandler(repository);
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=CreateListBackupHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateListBackupHandler.js","sourceRoot":"","sources":["../../../src/backup/composition/CreateListBackupHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAAE,0BAA0B,EAAE,MAAM,0EAA0E,CAAC;AAEtH,MAAM,UAAU,uBAAuB;IACrC,MAAM,UAAU,GAAG,IAAI,0BAA0B,EAAE,CAAC;IAEpD,OAAO,IAAI,sBAAsB,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { DatabaseConnectionProps } from '../../../shared/domain/value-objects/ConnectionConfig.js';
|
|
2
|
+
export type Status = 'success' | 'failed';
|
|
3
|
+
export type DriverType = DatabaseConnectionProps['type'];
|
|
4
|
+
export declare class BackupResult {
|
|
5
|
+
private readonly id;
|
|
6
|
+
private readonly driverType;
|
|
7
|
+
private readonly filePath;
|
|
8
|
+
private readonly sizeBytes;
|
|
9
|
+
private readonly status;
|
|
10
|
+
private readonly name;
|
|
11
|
+
private readonly errorMessage?;
|
|
12
|
+
private readonly createdAt;
|
|
13
|
+
private constructor();
|
|
14
|
+
static create(driverType: DriverType, filePath: string, sizeBytes: number, status: Status, name: string, errorMessage?: string): BackupResult;
|
|
15
|
+
static reconstitute(id: string, driverType: DriverType, filePath: string, sizeBytes: number, status: Status, name: string, createdAt: Date, errorMessage?: string): BackupResult;
|
|
16
|
+
getId(): string;
|
|
17
|
+
getDriverType(): DriverType;
|
|
18
|
+
getFilePath(): string;
|
|
19
|
+
getSizeBytes(): number;
|
|
20
|
+
getStatus(): Status;
|
|
21
|
+
getErrorMessage(): string | undefined;
|
|
22
|
+
getCreatedAt(): Date;
|
|
23
|
+
getName(): string;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=BackupResult.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupResult.d.ts","sourceRoot":"","sources":["../../../../src/backup/domain/entities/BackupResult.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AAExG,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAC1C,MAAM,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAEzD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAO;IAEjC,OAAO;IAoBP,MAAM,CAAC,MAAM,CACX,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,MAAM,GACpB,YAAY;IAaf,MAAM,CAAC,YAAY,CACjB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,IAAI,EACf,YAAY,CAAC,EAAE,MAAM,GACpB,YAAY;IAaf,KAAK,IAAI,MAAM;IAIf,aAAa,IAAI,UAAU;IAI3B,WAAW,IAAI,MAAM;IAIrB,YAAY,IAAI,MAAM;IAItB,SAAS,IAAI,MAAM;IAInB,eAAe,IAAI,MAAM,GAAG,SAAS;IAIrC,YAAY,IAAI,IAAI;IAIpB,OAAO,IAAI,MAAM;CAGlB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
2
|
+
export class BackupResult {
|
|
3
|
+
id;
|
|
4
|
+
driverType;
|
|
5
|
+
filePath;
|
|
6
|
+
sizeBytes;
|
|
7
|
+
status;
|
|
8
|
+
name;
|
|
9
|
+
errorMessage = undefined;
|
|
10
|
+
createdAt;
|
|
11
|
+
constructor(id, driverType, filePath, sizeBytes, status, name, createdAt, errorMessage) {
|
|
12
|
+
this.id = id;
|
|
13
|
+
this.driverType = driverType;
|
|
14
|
+
this.filePath = filePath;
|
|
15
|
+
this.sizeBytes = sizeBytes;
|
|
16
|
+
this.status = status;
|
|
17
|
+
this.name = name;
|
|
18
|
+
this.errorMessage = errorMessage;
|
|
19
|
+
this.createdAt = createdAt;
|
|
20
|
+
}
|
|
21
|
+
static create(driverType, filePath, sizeBytes, status, name, errorMessage) {
|
|
22
|
+
return new BackupResult(uuidv4(), driverType, filePath, sizeBytes, status, name, new Date(), errorMessage);
|
|
23
|
+
}
|
|
24
|
+
static reconstitute(id, driverType, filePath, sizeBytes, status, name, createdAt, errorMessage) {
|
|
25
|
+
return new BackupResult(id, driverType, filePath, sizeBytes, status, name, createdAt, errorMessage);
|
|
26
|
+
}
|
|
27
|
+
getId() {
|
|
28
|
+
return this.id;
|
|
29
|
+
}
|
|
30
|
+
getDriverType() {
|
|
31
|
+
return this.driverType;
|
|
32
|
+
}
|
|
33
|
+
getFilePath() {
|
|
34
|
+
return this.filePath;
|
|
35
|
+
}
|
|
36
|
+
getSizeBytes() {
|
|
37
|
+
return this.sizeBytes;
|
|
38
|
+
}
|
|
39
|
+
getStatus() {
|
|
40
|
+
return this.status;
|
|
41
|
+
}
|
|
42
|
+
getErrorMessage() {
|
|
43
|
+
return this.errorMessage;
|
|
44
|
+
}
|
|
45
|
+
getCreatedAt() {
|
|
46
|
+
return this.createdAt;
|
|
47
|
+
}
|
|
48
|
+
getName() {
|
|
49
|
+
return this.name;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=BackupResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupResult.js","sourceRoot":"","sources":["../../../../src/backup/domain/entities/BackupResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAMpC,MAAM,OAAO,YAAY;IACN,EAAE,CAAS;IACX,UAAU,CAAa;IACvB,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,MAAM,CAAS;IACf,IAAI,CAAS;IACb,YAAY,GAAwB,SAAS,CAAC;IAC9C,SAAS,CAAO;IAEjC,YACE,EAAU,EACV,UAAsB,EACtB,QAAgB,EAChB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,SAAe,EACf,YAAqB;QAErB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,MAAM,CACX,UAAsB,EACtB,QAAgB,EAChB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,YAAqB;QAErB,OAAO,IAAI,YAAY,CACrB,MAAM,EAAE,EACR,UAAU,EACV,QAAQ,EACR,SAAS,EACT,MAAM,EACN,IAAI,EACJ,IAAI,IAAI,EAAE,EACV,YAAY,CACb,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CACjB,EAAU,EACV,UAAsB,EACtB,QAAgB,EAChB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,SAAe,EACf,YAAqB;QAErB,OAAO,IAAI,YAAY,CACrB,EAAE,EACF,UAAU,EACV,QAAQ,EACR,SAAS,EACT,MAAM,EACN,IAAI,EACJ,SAAS,EACT,YAAY,CACb,CAAC;IACJ,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupFailedError.d.ts","sourceRoot":"","sources":["../../../../src/backup/domain/errors/BackupFailedError.ts"],"names":[],"mappings":"AAAA,qBAAa,iBAAkB,SAAQ,KAAK;aAExB,MAAM,EAAE,MAAM;aACd,QAAQ,EAAE,MAAM;gBADhB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM;CAKnC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export class BackupFailedError extends Error {
|
|
2
|
+
reason;
|
|
3
|
+
filePath;
|
|
4
|
+
constructor(reason, filePath) {
|
|
5
|
+
super(`Backup failed: ${reason}`);
|
|
6
|
+
this.reason = reason;
|
|
7
|
+
this.filePath = filePath;
|
|
8
|
+
this.name = 'BackupFailedError';
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=BackupFailedError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupFailedError.js","sourceRoot":"","sources":["../../../../src/backup/domain/errors/BackupFailedError.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAExB;IACA;IAFlB,YACkB,MAAc,EACd,QAAgB;QAEhC,KAAK,CAAC,kBAAkB,MAAM,EAAE,CAAC,CAAC;QAHlB,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAQ;QAGhC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CommandExecutor } from '../../../shared/domain/interfaces/CommandExecutor.js';
|
|
2
|
+
import type { BackupEngine } from '../interfaces/BackupEngine.js';
|
|
3
|
+
export declare abstract class BackupEngineFactory {
|
|
4
|
+
abstract create(type: string, executor: CommandExecutor): Promise<BackupEngine>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=BackupEngineFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupEngineFactory.d.ts","sourceRoot":"","sources":["../../../../src/backup/domain/factories/BackupEngineFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AAC5F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE,8BAAsB,mBAAmB;IACvC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC;CAChF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupEngineFactory.js","sourceRoot":"","sources":["../../../../src/backup/domain/factories/BackupEngineFactory.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,mBAAmB;CAExC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CommandExecutor } from '../../../shared/domain/interfaces/CommandExecutor.js';
|
|
2
|
+
import type { BackupResult, DriverType } from '../entities/BackupResult.js';
|
|
3
|
+
import type { DatabaseConnectionProps } from '../../../shared/domain/value-objects/ConnectionConfig.js';
|
|
4
|
+
export declare abstract class BackupEngine<T extends DatabaseConnectionProps = DatabaseConnectionProps> {
|
|
5
|
+
protected executor: CommandExecutor;
|
|
6
|
+
constructor(executor: CommandExecutor);
|
|
7
|
+
abstract backup(config: T, outputDir: string): Promise<BackupResult>;
|
|
8
|
+
protected buildBackupFileName(type: DriverType, database: string, at: Date): string;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=BackupEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupEngine.d.ts","sourceRoot":"","sources":["../../../../src/backup/domain/interfaces/BackupEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AAC5F,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AAExG,8BAAsB,YAAY,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB;IAChF,SAAS,CAAC,QAAQ,EAAE,eAAe;gBAAzB,QAAQ,EAAE,eAAe;IAC/C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAEpE,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,GAAG,MAAM;CAGpF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class BackupEngine {
|
|
2
|
+
executor;
|
|
3
|
+
constructor(executor) {
|
|
4
|
+
this.executor = executor;
|
|
5
|
+
}
|
|
6
|
+
buildBackupFileName(type, database, at) {
|
|
7
|
+
return `${type}-${database}-${at.toISOString().replace(/[:.]/g, '-')}.dump`;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=BackupEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupEngine.js","sourceRoot":"","sources":["../../../../src/backup/domain/interfaces/BackupEngine.ts"],"names":[],"mappings":"AAIA,MAAM,OAAgB,YAAY;IACV;IAAtB,YAAsB,QAAyB;QAAzB,aAAQ,GAAR,QAAQ,CAAiB;IAAG,CAAC;IAGzC,mBAAmB,CAAC,IAAgB,EAAE,QAAgB,EAAE,EAAQ;QACxE,OAAO,GAAG,IAAI,IAAI,QAAQ,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC;IAC9E,CAAC;CACF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { BackupResult, DriverType, Status } from '../entities/BackupResult.js';
|
|
2
|
+
export declare abstract class BackupResultRepository {
|
|
3
|
+
abstract create(result: BackupResult): Promise<string>;
|
|
4
|
+
abstract getAll(): Promise<BackupResult[]>;
|
|
5
|
+
abstract find(limit: number, status?: Status, driver?: DriverType): Promise<BackupResult[]>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=BackupResultRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupResultRepository.d.ts","sourceRoot":"","sources":["../../../../src/backup/domain/repositories/BackupResultRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAEpF,8BAAsB,sBAAsB;IAC1C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IACtD,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAC1C,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CAC5F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupResultRepository.js","sourceRoot":"","sources":["../../../../src/backup/domain/repositories/BackupResultRepository.ts"],"names":[],"mappings":"AAEA,MAAM,OAAgB,sBAAsB;CAI3C"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BackupEngine } from '../../domain/interfaces/BackupEngine.js';
|
|
2
|
+
import { BackupResult } from '../../domain/entities/BackupResult.js';
|
|
3
|
+
import type { DatabaseConnectionProps } from '../../../shared/domain/value-objects/ConnectionConfig.js';
|
|
4
|
+
import type { CommandExecutor, CommandSpec } from '../../../shared/domain/interfaces/CommandExecutor.js';
|
|
5
|
+
export declare abstract class BaseBackupEngine<T extends DatabaseConnectionProps> extends BackupEngine<T> {
|
|
6
|
+
abstract buildBackupCommandSpec(config: T, filePath: string): CommandSpec;
|
|
7
|
+
constructor(executor: CommandExecutor);
|
|
8
|
+
backup(config: T, outputDir: string): Promise<BackupResult>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=BaseBackupEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseBackupEngine.d.ts","sourceRoot":"","sources":["../../../../src/backup/infrastructure/engines/BaseBackupEngine.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AAGxG,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EACZ,MAAM,sDAAsD,CAAC;AAE9D,8BAAsB,gBAAgB,CAAC,CAAC,SAAS,uBAAuB,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IAC/F,QAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW;gBAE7D,QAAQ,EAAE,eAAe;IAI/B,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CAsBlE"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { join } from 'node:path';
|
|
2
|
+
import * as fs from 'node:fs/promises';
|
|
3
|
+
import { BackupEngine } from '../../domain/interfaces/BackupEngine.js';
|
|
4
|
+
import { BackupResult } from '../../domain/entities/BackupResult.js';
|
|
5
|
+
import { errorMessage } from '../../../shared/utils/ErrorMessage.js';
|
|
6
|
+
import { BackupFailedError } from '../../domain/errors/BackupFailedError.js';
|
|
7
|
+
export class BaseBackupEngine extends BackupEngine {
|
|
8
|
+
constructor(executor) {
|
|
9
|
+
super(executor);
|
|
10
|
+
}
|
|
11
|
+
async backup(config, outputDir) {
|
|
12
|
+
const fileName = this.buildBackupFileName(config.type, config.database, new Date());
|
|
13
|
+
const filePath = join(outputDir, fileName);
|
|
14
|
+
try {
|
|
15
|
+
await this.executor.execute(this.buildBackupCommandSpec(config, filePath));
|
|
16
|
+
}
|
|
17
|
+
catch (err) {
|
|
18
|
+
await fs.rm(filePath, { force: true });
|
|
19
|
+
throw new BackupFailedError(errorMessage(err), filePath);
|
|
20
|
+
}
|
|
21
|
+
const stats = await fs.stat(filePath);
|
|
22
|
+
const backupResult = BackupResult.create(config.type, filePath, stats.size, 'success', config.database);
|
|
23
|
+
return backupResult;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=BaseBackupEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseBackupEngine.js","sourceRoot":"","sources":["../../../../src/backup/infrastructure/engines/BaseBackupEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAM7E,MAAM,OAAgB,gBAAoD,SAAQ,YAAe;IAG/F,YAAY,QAAyB;QACnC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAS,EAAE,SAAiB;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QACpF,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE3C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC7E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CACtC,MAAM,CAAC,IAAI,EACX,QAAQ,EACR,KAAK,CAAC,IAAI,EACV,SAAS,EACT,MAAM,CAAC,QAAQ,CAChB,CAAC;QAEF,OAAO,YAAY,CAAC;IACtB,CAAC;CACF"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CommandExecutor, CommandSpec } from '../../../shared/domain/interfaces/CommandExecutor.js';
|
|
2
|
+
import type { MySqlConnectionProps } from '../../../shared/domain/value-objects/ConnectionConfig.js';
|
|
3
|
+
import { BaseBackupEngine } from './BaseBackupEngine.js';
|
|
4
|
+
export declare class MySqlBackupEngine extends BaseBackupEngine<MySqlConnectionProps> {
|
|
5
|
+
constructor(executor: CommandExecutor);
|
|
6
|
+
buildBackupCommandSpec(config: MySqlConnectionProps, filePath: string): CommandSpec;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=MySqlBackupEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlBackupEngine.d.ts","sourceRoot":"","sources":["../../../../src/backup/infrastructure/engines/MySqlBackupEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EACZ,MAAM,sDAAsD,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,qBAAa,iBAAkB,SAAQ,gBAAgB,CAAC,oBAAoB,CAAC;gBAC/D,QAAQ,EAAE,eAAe;IAIrC,sBAAsB,CAAC,MAAM,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW;CAiBpF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { BaseBackupEngine } from './BaseBackupEngine.js';
|
|
2
|
+
export class MySqlBackupEngine extends BaseBackupEngine {
|
|
3
|
+
constructor(executor) {
|
|
4
|
+
super(executor);
|
|
5
|
+
}
|
|
6
|
+
buildBackupCommandSpec(config, filePath) {
|
|
7
|
+
return {
|
|
8
|
+
bin: 'mysql_dump',
|
|
9
|
+
args: [
|
|
10
|
+
'-h',
|
|
11
|
+
`${config.host}`,
|
|
12
|
+
'-p',
|
|
13
|
+
`${config.port}`,
|
|
14
|
+
'-U',
|
|
15
|
+
`${config.username}`,
|
|
16
|
+
'-d',
|
|
17
|
+
`${config.database}`,
|
|
18
|
+
],
|
|
19
|
+
env: {},
|
|
20
|
+
stdoutFile: filePath,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=MySqlBackupEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlBackupEngine.js","sourceRoot":"","sources":["../../../../src/backup/infrastructure/engines/MySqlBackupEngine.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,OAAO,iBAAkB,SAAQ,gBAAsC;IAC3E,YAAY,QAAyB;QACnC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClB,CAAC;IAED,sBAAsB,CAAC,MAA4B,EAAE,QAAgB;QACnE,OAAO;YACL,GAAG,EAAE,YAAY;YACjB,IAAI,EAAE;gBACJ,IAAI;gBACJ,GAAG,MAAM,CAAC,IAAI,EAAE;gBAChB,IAAI;gBACJ,GAAG,MAAM,CAAC,IAAI,EAAE;gBAChB,IAAI;gBACJ,GAAG,MAAM,CAAC,QAAQ,EAAE;gBACpB,IAAI;gBACJ,GAAG,MAAM,CAAC,QAAQ,EAAE;aACrB;YACD,GAAG,EAAE,EAAE;YACP,UAAU,EAAE,QAAQ;SACrB,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CommandExecutor, CommandSpec } from '../../../shared/domain/interfaces/CommandExecutor.js';
|
|
2
|
+
import type { PostgresConnectionProps } from '../../../shared/domain/value-objects/ConnectionConfig.js';
|
|
3
|
+
import { BaseBackupEngine } from './BaseBackupEngine.js';
|
|
4
|
+
export declare class PostgresBackupEngine extends BaseBackupEngine<PostgresConnectionProps> {
|
|
5
|
+
constructor(executor: CommandExecutor);
|
|
6
|
+
buildBackupCommandSpec(config: PostgresConnectionProps, filePath: string): CommandSpec;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=PostgresBackupEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresBackupEngine.d.ts","sourceRoot":"","sources":["../../../../src/backup/infrastructure/engines/PostgresBackupEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EACZ,MAAM,sDAAsD,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0DAA0D,CAAC;AACxG,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,qBAAa,oBAAqB,SAAQ,gBAAgB,CAAC,uBAAuB,CAAC;gBACrE,QAAQ,EAAE,eAAe;IAIrC,sBAAsB,CAAC,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW;CAiBvF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { BaseBackupEngine } from './BaseBackupEngine.js';
|
|
2
|
+
export class PostgresBackupEngine extends BaseBackupEngine {
|
|
3
|
+
constructor(executor) {
|
|
4
|
+
super(executor);
|
|
5
|
+
}
|
|
6
|
+
buildBackupCommandSpec(config, filePath) {
|
|
7
|
+
return {
|
|
8
|
+
bin: 'pg_dump',
|
|
9
|
+
args: [
|
|
10
|
+
'-h',
|
|
11
|
+
`${config.host}`,
|
|
12
|
+
'-p',
|
|
13
|
+
`${config.port}`,
|
|
14
|
+
'-U',
|
|
15
|
+
`${config.username}`,
|
|
16
|
+
'-d',
|
|
17
|
+
`${config.database}`,
|
|
18
|
+
],
|
|
19
|
+
env: {},
|
|
20
|
+
stdoutFile: filePath,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=PostgresBackupEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresBackupEngine.js","sourceRoot":"","sources":["../../../../src/backup/infrastructure/engines/PostgresBackupEngine.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,OAAO,oBAAqB,SAAQ,gBAAyC;IACjF,YAAY,QAAyB;QACnC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClB,CAAC;IAED,sBAAsB,CAAC,MAA+B,EAAE,QAAgB;QACtE,OAAO;YACL,GAAG,EAAE,SAAS;YACd,IAAI,EAAE;gBACJ,IAAI;gBACJ,GAAG,MAAM,CAAC,IAAI,EAAE;gBAChB,IAAI;gBACJ,GAAG,MAAM,CAAC,IAAI,EAAE;gBAChB,IAAI;gBACJ,GAAG,MAAM,CAAC,QAAQ,EAAE;gBACpB,IAAI;gBACJ,GAAG,MAAM,CAAC,QAAQ,EAAE;aACrB;YACD,GAAG,EAAE,EAAE;YACP,UAAU,EAAE,QAAQ;SACrB,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { DriverType } from '../../domain/entities/BackupResult.js';
|
|
2
|
+
import type { BackupEngine } from '../../domain/interfaces/BackupEngine.js';
|
|
3
|
+
import type { CommandExecutor } from '../../../shared/domain/interfaces/CommandExecutor.js';
|
|
4
|
+
import { BackupEngineFactory } from '../../domain/factories/BackupEngineFactory.js';
|
|
5
|
+
type BackupEngineConstructor = new (executor: CommandExecutor) => BackupEngine;
|
|
6
|
+
export declare const engines: Record<DriverType, BackupEngineConstructor>;
|
|
7
|
+
export declare class BackupEngineFactoryImpl extends BackupEngineFactory {
|
|
8
|
+
create(type: DriverType, executor: CommandExecutor): Promise<BackupEngine>;
|
|
9
|
+
private getEngineClass;
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=BackupEngineFactoryImpl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupEngineFactoryImpl.d.ts","sourceRoot":"","sources":["../../../../src/backup/infrastructure/factories/BackupEngineFactoryImpl.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAEpF,KAAK,uBAAuB,GAAG,KAAK,QAAQ,EAAE,eAAe,KAAK,YAAY,CAAC;AAG/E,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,uBAAuB,CAG/D,CAAC;AAEF,qBAAa,uBAAwB,SAAQ,mBAAmB;IACxD,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC;IAKhF,OAAO,CAAC,cAAc;CAGvB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { PostgresBackupEngine } from '../engines/PostgresBackupEngine.js';
|
|
2
|
+
import { BackupEngineFactory } from '../../domain/factories/BackupEngineFactory.js';
|
|
3
|
+
// @ts-expect-error TS2741: mysql engine is not implemented yet
|
|
4
|
+
export const engines = {
|
|
5
|
+
postgresql: PostgresBackupEngine,
|
|
6
|
+
// mysql: MySqlBackupEngine,
|
|
7
|
+
};
|
|
8
|
+
export class BackupEngineFactoryImpl extends BackupEngineFactory {
|
|
9
|
+
async create(type, executor) {
|
|
10
|
+
const engine = this.getEngineClass(type);
|
|
11
|
+
return new engine(executor);
|
|
12
|
+
}
|
|
13
|
+
getEngineClass(type) {
|
|
14
|
+
return engines[type];
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=BackupEngineFactoryImpl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackupEngineFactoryImpl.js","sourceRoot":"","sources":["../../../../src/backup/infrastructure/factories/BackupEngineFactoryImpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAI1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AAIpF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,OAAO,GAAgD;IAClE,UAAU,EAAE,oBAAoB;IAChC,4BAA4B;CAC7B,CAAC;AAEF,MAAM,OAAO,uBAAwB,SAAQ,mBAAmB;IAC9D,KAAK,CAAC,MAAM,CAAC,IAAgB,EAAE,QAAyB;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAEO,cAAc,CAAC,IAAgB;QACrC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;CACF"}
|