public void Run() { Console.Title = "Server: " + _serverId; Console.WriteLine("Running base version"); var freezeUtilities = new FreezeUtilities(); var serverParameters = UrlParameters.From(_serverUrl); var serverService = new ServerService(_storage, freezeUtilities, _serverUrl, DelayMessage); var nodeService = new NodeService(freezeUtilities, DelayMessage, RegisterServers, RegisterPartitions); var registerSlavesService = new SlaveRegisteringService(_storage); AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true); var server = new Grpc.Core.Server { Services = { DIDAService.BindService(serverService), NodeControlService.BindService(nodeService), RegisterSlaveToMasterService.BindService(registerSlavesService), BaseSlaveService.BindService(new BaseSlaveServerService(_storage)) }, Ports = { new ServerPort(serverParameters.Hostname, serverParameters.Port, ServerCredentials.Insecure) } }; server.Start(); Console.WriteLine("Server " + _serverId + " listening on port " + serverParameters.Port); ReadCommands(); server.ShutdownAsync().Wait(); }
public ServerService(IStorage storage, FreezeUtilities freezeUtilities, string myUrl, Action delayFunction) { _storage = storage; _freezeUtilities = freezeUtilities; _myUrl = myUrl; this.delayFunction = delayFunction; }
public NodeService(FreezeUtilities freezeUtilities, Action delayFunction, Action <ServerInfo[]> registerServersFunction, Action <PartitionInfo[]> registerPartitionsFunction) { this.freezeUtilities = freezeUtilities; this.delayFunction = delayFunction; this.registerServersFunction = registerServersFunction; this.registerPartitionsFunction = registerPartitionsFunction; }
public AdvancedSlaveServerService(AdvancedServerStorage storage, FreezeUtilities freeze) { _storage = storage; _freezeUtilities = freeze; }