Ejemplo n.º 1
0
        public string Serialize()
        {
            StateTemplate temp = new StateTemplate();

            foreach (Output o in Outputs)
            {
                OutputTemplate ot = new OutputTemplate();
                ot.ID        = o.ID;
                ot.Ports     = o.Ports;
                ot.Name      = o.Name;
                ot.IPAddress = o.IP;
                foreach (Fixture f in o.GetFixtures())
                {
                    ot.Fixtures.Add(FixtureTemplateFactory.createFixtureTemplate(f));
                }
                temp.Outputs.Add(ot);
            }

            foreach (Fixture f in FixturePool)
            {
                temp.FixturePool.Add(FixtureTemplateFactory.createFixtureTemplate(f));
            }
            temp.ActionMessage = ActionMessage;

            return(JsonConvert.SerializeObject(temp));
        }
Ejemplo n.º 2
0
        // currently this generae only one default 1pix template....
        public static List <FixtureTemplate> GenerateDefaultTemplates()
        {
            List <FixtureTemplate> templates = new List <FixtureTemplate>();
            IMode        mode  = new ModeGridTopLeft(1, 1);
            List <IMode> modes = new List <IMode>();

            modes.Add(mode);
            IPixelPatch patch = new PixelPatchSnakeRowWiseTopLeft(1, 1, 0, 3);
            Fixture     f     = new Fixture(modes, patch)
            {
                Name = "Generic 1pix"
            };
            FixtureTemplate template = FixtureTemplateFactory.createFixtureTemplate(f);

            templates.Add(template);
            FixtureTemplateUtils.StoreTemplate(template);
            return(templates);
        }
Ejemplo n.º 3
0
        public override void HandleRequest(HttpListenerContext context)
        {
            try
            {
                var q         = context.Request.QueryString;
                var fixtureId = q.Get(KEY_FIXTURE_ID);

                if (fixtureId == null)
                {
                    throw new ArgumentNullException("Some of fixture template properties was null");
                }

                if (!StateManager.Instance.State.TryGetFixture(int.Parse(fixtureId), out Fixture fixture))
                {
                    throw new ArgumentException("Fixture with id: " + fixtureId + " does not exist: sorry!");
                }

                var template = FixtureTemplateFactory.createFixtureTemplate(fixture);

                FixtureTemplateUtils.StoreTemplate(template);

                SetInfoMessage(
                    "Fixture template: '" + template.Name + "' successfully stored.",
                    IS_NOT_PART_OF_STATE,
                    Talker.Talk.GetSource()
                    );

                //get all templates and send back as a new template state
                List <FixtureTemplate> templates = FixtureTemplateUtils.GetTemplates();
                ResponseMessage        msg       = new ResponseMessage(ResponseMessage.TYPE_FIXTURE_TEMPLATE, templates);
                WriteResponse(context, RestConst.RESPONSE_OK, RestConst.CONTENT_TEXT_JSON, StaticSerializer.Serialize(msg));
            }
            catch (Exception e) {
                SetErrorMessage(e.ToString(), IS_NOT_PART_OF_STATE, Talker.Talk.GetSource());
                WriteErrorMessage(context, e);
            }
        }