20 lines
643 B
TypeScript
20 lines
643 B
TypeScript
import {AbstractServerConnection} from "../connection/ConnectionBase";
|
|
import {ConnectionHandler} from "../ConnectionHandler";
|
|
|
|
export interface ServerConnectionFactory {
|
|
create(client: ConnectionHandler) : AbstractServerConnection;
|
|
destroy(instance: AbstractServerConnection);
|
|
}
|
|
|
|
let factoryInstance: ServerConnectionFactory;
|
|
export function setServerConnectionFactory(factory: ServerConnectionFactory) {
|
|
factoryInstance = factory;
|
|
}
|
|
|
|
export function getServerConnectionFactory() : ServerConnectionFactory {
|
|
if(!factoryInstance) {
|
|
throw "server connection factory hasn't been set";
|
|
}
|
|
|
|
return factoryInstance;
|
|
} |