Esempio n. 1
0
        public PoolRouter(Func <string, PID> func, int poolSize = 5, RouterEnum routerconfig = RouterEnum.RoundRobin)
        {
            _poolSize = poolSize;

            if (routerconfig == RouterEnum.RoundRobin)
            {
                _router = new RoundRobinRouter();
            }
            else
            {
                _router = new BroadcastRouter();
            }

            var routees = Enumerable.Range(0, _poolSize).Select(x => func(string.Format("Pool-{0}", ProcessRegistry.Instance.NextId())));

            _router.SetInstance(new HashSet <PID>(routees));
        }
Esempio n. 2
0
 public void ExecuteRouter(RouterEnum routerEnum)
 {
     Console.WriteLine("Executing walking strategy algorithm...");
 }
 public void ExecuteRouter(RouterEnum routerEnum)
 {
     Console.WriteLine("Executing public transport strategy algorithm...");
 }
 public void ExecuteStrategy(RouterEnum routerEnum) =>
 _routerStrategy.ExecuteRouter(routerEnum);