mysimulation/server/FSO.Server.Domain/IGluonHostPool.cs

31 lines
769 B
C#
Raw Permalink Normal View History

using FSO.Server.Database.DA.Hosts;
using FSO.Server.Framework.Gluon;
using FSO.Server.Protocol.Gluon.Packets;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace FSO.Server.Domain
{
public interface IGluonHostPool
{
string PoolHash { get; }
IGluonHost Get(string callSign);
IGluonHost GetByShardId(int shard_id);
IEnumerable<IGluonHost> GetByRole(DbHostRole role);
IEnumerable<IGluonHost> GetAll();
void Start();
void Stop();
}
public interface IGluonHost : IGluonSession
{
DbHostRole Role { get; }
bool Connected { get; }
DateTime BootTime { get; }
Task<IGluonCall> Call<IN>(IN input) where IN : IGluonCall;
}
}