mirror of
https://github.com/bluewave-labs/Checkmate.git
synced 2026-05-14 21:48:39 -05:00
port provider
This commit is contained in:
@@ -81,6 +81,7 @@ import { AdvancedMatcher } from "@/service/infrastructure/network/AdvancedMatche
|
||||
import { PageSpeedProvider } from "@/service/infrastructure/network/PageSpeedProvider.js";
|
||||
import { HardwareProvider } from "@/service/infrastructure/network/HardwareProvider.js";
|
||||
import { DockerProvider } from "@/service/infrastructure/network/DockerProvider.js";
|
||||
import { PortProvider } from "@/service/infrastructure/network/PortProvider.js";
|
||||
|
||||
export type InitializedServices = {
|
||||
settingsService: any;
|
||||
@@ -157,6 +158,7 @@ export const initializeServices = async ({
|
||||
const pageSpeedProvider = new PageSpeedProvider(httpProvider, settingsService, logger);
|
||||
const hardwareProvider = new HardwareProvider(httpProvider);
|
||||
const dockerProvider = new DockerProvider(logger, Docker);
|
||||
const portProvider = new PortProvider(net);
|
||||
|
||||
const networkService = new NetworkService(
|
||||
axios,
|
||||
@@ -177,7 +179,8 @@ export const initializeServices = async ({
|
||||
httpProvider,
|
||||
pageSpeedProvider,
|
||||
hardwareProvider,
|
||||
dockerProvider
|
||||
dockerProvider,
|
||||
portProvider
|
||||
);
|
||||
const emailService = new EmailService(settingsService, fs, path, compile, mjml2html, nodemailer, logger);
|
||||
|
||||
|
||||
@@ -62,10 +62,6 @@ export class PortProvider implements IStatusProvider<PortStatusPayload> {
|
||||
responseTime: responseTime,
|
||||
timings: undefined,
|
||||
payload: { success: false },
|
||||
jsonPath: monitor.jsonPath,
|
||||
matchMethod: monitor.matchMethod,
|
||||
expectedValue: monitor.expectedValue,
|
||||
extracted: undefined,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -79,10 +75,6 @@ export class PortProvider implements IStatusProvider<PortStatusPayload> {
|
||||
responseTime: responseTime,
|
||||
timings: undefined,
|
||||
payload: { success: true },
|
||||
jsonPath: monitor.jsonPath,
|
||||
matchMethod: monitor.matchMethod,
|
||||
expectedValue: monitor.expectedValue,
|
||||
extracted: undefined,
|
||||
};
|
||||
} catch (err: unknown) {
|
||||
const originalMessage = err instanceof Error ? err.message : String(err);
|
||||
@@ -90,7 +82,7 @@ export class PortProvider implements IStatusProvider<PortStatusPayload> {
|
||||
message: originalMessage || "Error performing port check",
|
||||
status: 500,
|
||||
service: SERVICE_NAME,
|
||||
method: "requestPort",
|
||||
method: "handle",
|
||||
details: { url: monitor.url, port: monitor.port },
|
||||
});
|
||||
}
|
||||
|
||||
@@ -100,6 +100,7 @@ class NetworkService implements INetworkService {
|
||||
private pageSpeedProvider;
|
||||
private hardwareProvider;
|
||||
private dockerProvider;
|
||||
private portProvider;
|
||||
|
||||
private buildStatusResponse = <T>({
|
||||
monitor,
|
||||
@@ -174,7 +175,8 @@ class NetworkService implements INetworkService {
|
||||
httpProvider: IStatusProvider<HttpStatusPayload>,
|
||||
pagespeedProvider: IStatusProvider<PageSpeedStatusPayload>,
|
||||
hardwareProvider: IStatusProvider<HardwareStatusPayload>,
|
||||
dockerProvider: IStatusProvider<DockerStatusPayload>
|
||||
dockerProvider: IStatusProvider<DockerStatusPayload>,
|
||||
portProvider: IStatusProvider<PortStatusPayload>
|
||||
) {
|
||||
this.TYPE_PING = "ping";
|
||||
this.TYPE_HTTP = "http";
|
||||
@@ -205,6 +207,7 @@ class NetworkService implements INetworkService {
|
||||
this.pageSpeedProvider = pagespeedProvider;
|
||||
this.hardwareProvider = hardwareProvider;
|
||||
this.dockerProvider = dockerProvider;
|
||||
this.portProvider = portProvider;
|
||||
const cacheable = new CacheableLookup();
|
||||
|
||||
this.got = got.extend({
|
||||
@@ -261,7 +264,7 @@ class NetworkService implements INetworkService {
|
||||
case this.TYPE_DOCKER:
|
||||
return await this.dockerProvider.handle(monitor);
|
||||
case this.TYPE_PORT:
|
||||
return await this.requestPort(monitor);
|
||||
return await this.portProvider.handle(monitor);
|
||||
case this.TYPE_GAME:
|
||||
return await this.requestGame(monitor);
|
||||
case this.TYPE_GRPC:
|
||||
|
||||
Reference in New Issue
Block a user