mirror of
https://github.com/YuzuZensai/Minikura.git
synced 2026-09-13 10:49:21 +00:00
69 lines
1.8 KiB
TypeScript
69 lines
1.8 KiB
TypeScript
import type { ReverseProxyWithEnvVars } from "@minikura/db";
|
|
import {
|
|
ReverseProxyCreatedEvent,
|
|
ReverseProxyDeletedEvent,
|
|
ReverseProxyUpdatedEvent,
|
|
} from "../../domain/events/reverse-proxy-lifecycle.events";
|
|
import type {
|
|
ReverseProxyCreateInput,
|
|
ReverseProxyRepository,
|
|
ReverseProxyUpdateInput,
|
|
} from "../../domain/repositories/reverse-proxy.repository";
|
|
import type { IReverseProxyService } from "../interfaces/reverse-proxy.service.interface";
|
|
import { BaseCrudService } from "./base-crud.service";
|
|
|
|
export class ReverseProxyService
|
|
extends BaseCrudService<
|
|
ReverseProxyWithEnvVars,
|
|
ReverseProxyCreateInput,
|
|
ReverseProxyUpdateInput,
|
|
ReverseProxyRepository,
|
|
{
|
|
created: typeof ReverseProxyCreatedEvent;
|
|
updated: typeof ReverseProxyUpdatedEvent;
|
|
deleted: typeof ReverseProxyDeletedEvent;
|
|
}
|
|
>
|
|
implements IReverseProxyService
|
|
{
|
|
constructor(reverseProxyRepo: ReverseProxyRepository) {
|
|
super(
|
|
reverseProxyRepo,
|
|
{
|
|
created: ReverseProxyCreatedEvent,
|
|
updated: ReverseProxyUpdatedEvent,
|
|
deleted: ReverseProxyDeletedEvent,
|
|
},
|
|
"ReverseProxyServer"
|
|
);
|
|
}
|
|
|
|
protected getEntityType(input: ReverseProxyCreateInput) {
|
|
return input.type || "VELOCITY";
|
|
}
|
|
|
|
protected getInputId(input: ReverseProxyCreateInput): string {
|
|
return typeof input.id === "string" ? input.id : String(input.id);
|
|
}
|
|
|
|
getAllReverseProxies(omitSensitive = false) {
|
|
return this.getAll(omitSensitive);
|
|
}
|
|
|
|
getReverseProxyById(id: string, omitSensitive = false) {
|
|
return this.getById(id, omitSensitive);
|
|
}
|
|
|
|
createReverseProxy(input: ReverseProxyCreateInput) {
|
|
return this.create(input);
|
|
}
|
|
|
|
updateReverseProxy(id: string, input: ReverseProxyUpdateInput) {
|
|
return this.update(id, input);
|
|
}
|
|
|
|
deleteReverseProxy(id: string) {
|
|
return this.delete(id);
|
|
}
|
|
}
|