Ejemplo n.º 1
0
        public WaymarkNancyModule()
        {
            Post["/place"] = data =>
            {
                // Bind the param to RESTWaymark.
                var waymarks = this.Bind <RESTWaymark>();
                // Get event to publish to.
                var e = MainWindowViewModel.EventAggregator.GetEvent <WaymarkEvent>();
                // Publish the waymarks from the request.
                e.Publish(waymarks);

                // Create response.
                var response = new RESTWaymark
                {
                    A   = MainWindowViewModel.GameMemory.A,
                    B   = MainWindowViewModel.GameMemory.B,
                    C   = MainWindowViewModel.GameMemory.C,
                    D   = MainWindowViewModel.GameMemory.D,
                    One = MainWindowViewModel.GameMemory.One,
                    Two = MainWindowViewModel.GameMemory.Two
                };

                // Serialize and return the response.
                return(JsonConvert.SerializeObject(response));
            };

            Post["/preset/{name}/load"] = data => Load(data);
            Get["/preset/{name}/load"]  = data => Load(data);

            dynamic Load(dynamic data)
            {
                var name = data.name;

                if (string.IsNullOrEmpty(name))
                {
                    return(null);
                }

                var e = MainWindowViewModel.EventAggregator.GetEvent <LoadPresetEvent>();

                e?.Publish(name);

                return(null);
            }

            Post["/preset/{name}/save"] = data =>
            {
                var name = data.name;

                if (string.IsNullOrEmpty(name))
                {
                    return(null);
                }

                var e = MainWindowViewModel.EventAggregator.GetEvent <SavePresetEvent>();
                e?.Publish(name);

                return(null);
            };
        }
Ejemplo n.º 2
0
        public WaymarkNancyModule()
        {
            Post["/place"] = data =>
            {
                // Bind the param to RESTWaymark.
                var waymarks = this.Bind <RESTWaymark>();
                // Get event to publish to.
                var e = MainWindowViewModel.EventAggregator.GetEvent <WaymarkEvent>();
                // Publish the waymarks from the request.
                e.Publish(waymarks);

                // Create response.
                var response = new RESTWaymark
                {
                    A   = MainWindowViewModel.GameMemory.A,
                    B   = MainWindowViewModel.GameMemory.B,
                    C   = MainWindowViewModel.GameMemory.C,
                    D   = MainWindowViewModel.GameMemory.D,
                    One = MainWindowViewModel.GameMemory.One,
                    Two = MainWindowViewModel.GameMemory.Two
                };

                // Serialize and return the response.
                return(JsonConvert.SerializeObject(response));
            };
        }