Example #1
0
        private static async Task PublishFileScan(int sleepTime)
        {
            Guid fileId = Guid.NewGuid();
            string fileName = "File.jpg";

            using (var client = new ChannelFactoryWrapper<IFileScanning>(new ChannelFactory<IFileScanning>("*"), f => f.CreateChannel()))
            {
                await client.Invoke(async c => await c.HandleFileScanRequest(fileId, fileName, sleepTime));
            }
            
        }
Example #2
0
        public async Task HandleFileScanRequest(Guid id, string fileName, int sleepTime)
        {
            Console.WriteLine($"File Scan Command Received for file Id: {id}");
            Console.WriteLine("Sleeping for {0} second(s)", sleepTime / 1000);
            await Task.Delay(sleepTime);

            using (var client = new ChannelFactoryWrapper <IFileDelivery>(new ChannelFactory <IFileDelivery>("*"), f => f.CreateChannel()))
            {
                await client.Invoke(async c => await c.HandleFileDeliveryRequest(id, fileName));
            }
        }
Example #3
0
        private static void HostAllServices()
        {
            var personDataBase             = new PersonDatabase();
            var personService              = new PersonService(personDataBase);
            var personServiceHost          = new ServiceHost(personService, new Uri(PersonServiceEndPoint));
            var personServiceHostBehaviour = personServiceHost.Description.Behaviors.Find <ServiceBehaviorAttribute>();

            personServiceHostBehaviour.InstanceContextMode = InstanceContextMode.Single;
            personServiceHost.Open();

            var teamDataBase             = new TeamDatabase();
            var channelFactoryWrapper    = new ChannelFactoryWrapper();
            var teamService              = new TeamService(teamDataBase, channelFactoryWrapper);
            var teamServiceHost          = new ServiceHost(teamService, new Uri(TeamServiceEndPoint));
            var teamServiceHostBehaviour = teamServiceHost.Description.Behaviors.Find <ServiceBehaviorAttribute>();

            teamServiceHostBehaviour.InstanceContextMode = InstanceContextMode.Single;
            teamServiceHost.Open();
        }