Example #1
0
        private static CqsHttpListener CreateServer()
        {
            //can be an ioc bus too.
            var commandBus = new SimpleCommandBus();

            commandBus.Register(Assembly.GetExecutingAssembly());

            var queryBus = new SimpleQueryBus();

            queryBus.Register(Assembly.GetExecutingAssembly());

            //takes care of execution
            var processor = new CqsMessageProcessor {
                CommandBus = commandBus, QueryBus = queryBus
            };

            //receive through HTTP
            var server = new CqsHttpListener(processor);

            return(server);
        }
Example #2
0
        private static void Main(string[] args)
        {
            // tell library to authorize the usage of command/queries
            GlobalConfiguration.AuthorizationFilter = new RoleAuthorizer();

            // build autofac
            var adapter = BuildContainer();

            var builder  = new IocBusBuilder(adapter);
            var listener = new CqsHttpListener(builder.BuildMessageProcessor());

            listener.ScanAssembly(typeof(GetUsers).Assembly);
            listener.Authenticator  = CreateAuthenticator();
            listener.Logger         = Console.WriteLine;
            listener.RequestFilter += OnServeFiles;
            listener.Start(new IPEndPoint(IPAddress.Any, 8899));

            Console.WriteLine("Browse to http://localhost:8899 and login with user/user or admin/admin.");
            Console.WriteLine("Press ENTER to quit");
            Console.ReadLine();
        }
Example #3
0
        public async Task Try_server_and_client_together_for_queries()
        {
            //can be an ioc bus too.
            var bus = new SimpleQueryBus();

            bus.Register(Assembly.GetExecutingAssembly());

            //takes care of execution
            var processor = new CqsMessageProcessor {
                QueryBus = bus
            };

            //receive through HTTP
            var server = new CqsHttpListener(processor);

            server.Map(typeof(GetUsers));
            server.Start(new IPEndPoint(IPAddress.Loopback, 0));

            //Our cqs HTTP client.
            var client = new CqsHttpClient("http://localhost:" + server.LocalPort);
            var result = await client.QueryAsync(new GetUsers { FirstName = "Jonas" });
        }
Example #4
0
        public async Task Try_server_and_client_together()
        {
            //can be an ioc bus too.
            var commandBus = new SimpleCommandBus();

            commandBus.Register(Assembly.GetExecutingAssembly());

            //takes care of execution
            var processor = new CqsMessageProcessor {
                CommandBus = commandBus
            };

            //receive through HTTP
            var server = new CqsHttpListener(processor);

            server.Map(typeof(RaiseHands));
            server.Start(new IPEndPoint(IPAddress.Loopback, 0));

            //Our cqs HTTP client.
            var client = new CqsHttpClient("http://localhost:" + server.LocalPort);
            await client.ExecuteAsync(new RaiseHands { Reason = "all YOUR base" });
        }