You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.4 KiB
63 lines
2.4 KiB
import {
|
|
CONNECTION_ERROR_MSG_ALREADY_EXISTS_PREFIX,
|
|
CONNECTION_ERROR_MSG_CHANNEL_ALREADY_EXISTS_PREFIX,
|
|
CONNECTION_ERROR_MSG_CHANNEL_NOT_FOUND_PREFIX,
|
|
CONNECTION_ERROR_MSG_DISPOSED_SUFFIX,
|
|
CONNECTION_ERROR_MSG_INVALID_NAME_PREFIX,
|
|
CONNECTION_ERROR_MSG_NOT_FOUND_PREFIX,
|
|
CONNECTION_ERROR_PREFIX,
|
|
CONNECTION_ID_PREFIX,
|
|
CONNECTION_ID_SEPARATOR,
|
|
CONNECTION_MODULE,
|
|
CONNECTION_LOGGER_SCOPE_SEPARATOR,
|
|
CONNECTION_LOG_MSG_LISTENER_THREW_PREFIX
|
|
} from './consts.ts';
|
|
|
|
export function disposedErrorMessage(method: string): string {
|
|
return `${CONNECTION_ERROR_PREFIX}${method}${CONNECTION_ERROR_MSG_DISPOSED_SUFFIX}`;
|
|
}
|
|
|
|
export function alreadyExistsErrorMessage(name: string): string {
|
|
return `${CONNECTION_ERROR_PREFIX}${CONNECTION_ERROR_MSG_ALREADY_EXISTS_PREFIX}${name}`;
|
|
}
|
|
|
|
export function notFoundErrorMessage(name: string): string {
|
|
return `${CONNECTION_ERROR_PREFIX}${CONNECTION_ERROR_MSG_NOT_FOUND_PREFIX}${name}`;
|
|
}
|
|
|
|
export function invalidNameErrorMessage(name: unknown): string {
|
|
return `${CONNECTION_ERROR_PREFIX}${CONNECTION_ERROR_MSG_INVALID_NAME_PREFIX}${String(name)}`;
|
|
}
|
|
|
|
export function channelAlreadyExistsErrorMessage(name: string): string {
|
|
return `${CONNECTION_ERROR_PREFIX}${CONNECTION_ERROR_MSG_CHANNEL_ALREADY_EXISTS_PREFIX}${name}`;
|
|
}
|
|
|
|
export function channelNotFoundErrorMessage(name: string): string {
|
|
return `${CONNECTION_ERROR_PREFIX}${CONNECTION_ERROR_MSG_CHANNEL_NOT_FOUND_PREFIX}${name}`;
|
|
}
|
|
|
|
export function listenerThrewMessage(event: string): string {
|
|
return `${CONNECTION_LOG_MSG_LISTENER_THREW_PREFIX}${event}`;
|
|
}
|
|
|
|
export function loggerScope(name: string, topic?: string): string {
|
|
return topic === undefined
|
|
? `${CONNECTION_MODULE}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${name}`
|
|
: `${CONNECTION_MODULE}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${name}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${topic}`;
|
|
}
|
|
|
|
export function timerKey(connection: string, kind: string, id?: string): string {
|
|
return id === undefined
|
|
? `${CONNECTION_MODULE}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${connection}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${kind}`
|
|
: `${CONNECTION_MODULE}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${connection}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${kind}${CONNECTION_LOGGER_SCOPE_SEPARATOR}${id}`;
|
|
}
|
|
|
|
export function createConnectionIdFactory(connectionName: string): () => string {
|
|
let next = 0;
|
|
return () => {
|
|
next += 1;
|
|
return [CONNECTION_ID_PREFIX, connectionName, String(next)].join(CONNECTION_ID_SEPARATOR);
|
|
};
|
|
}
|