public void Add(CommandType primaryInput, CommandType primaryOutput, string secondaryInput = null, string secondaryOutput = null, Dictionary <StringEnum, string> stringParams = null, string sourceAddress = null, NetomityObject sourceObject = null, int delaySecs = 0 ) { if (_mappings == null) { _mappings = new List <Mapping>(); } _mappings.Add(new Mapping() { PrimaryInput = primaryInput, PrimaryOutput = primaryOutput, SecondaryInput = secondaryInput, SecondaryOutput = secondaryOutput, StringParams = stringParams, SourceAddress = sourceAddress, SourceObject = sourceObject, DelaySecs = delaySecs, }); }
internal void DelegateCommand(CommandType primary, string secondary, NetomityObject sourceObject) { Targets.ForEach(t => { Log("Delegating Command: {0} to {1}", primary, t.Name); t.Command(primary: primary, secondary: secondary, sourceObject: sourceObject); } ); }
public Task <bool> Command(CommandType primary, string secondary = null, NetomityObject sourceObject = null, Dictionary <StringEnum, string> stringParams = null) { return(Command(command: new Command() { Destination = Address, Primary = primary, Secondary = secondary, SourceObject = sourceObject, StringParams = stringParams })); }
public void SetUp() { // Reset the static parameters of the class Type staticType = typeof(NetomityObject); ConstructorInfo ci = staticType.TypeInitializer; object[] parameters = new object[0]; ci.Invoke(null, parameters); // New clean instance without static leftovers from prior unit test _no = new NetomityObjectTestObj(); }
public IHttpActionResult SetNetomityObjectProperty(string id, string property, string primary, string secondary = null) { Int32 iid = 0; IQueryable <NetomityObject> nsojbs = null; List <NetomityObject> objs = null; NetomityObject obj = null; bool status = false; nsojbs = NetomitySystem.Factory().NetomityObjects; // var objs = c_objects.Where(o =>).ToList(); if (Int32.TryParse(id, out iid)) { objs = nsojbs.Where(o => o.Id == iid).ToList(); } if (iid == 0 || objs.Count() == 0) { objs = nsojbs.Where(o => o.Name != null && o.Name.ToLower() == id.ToLower()).ToList(); } if (objs.Count() > 0) { obj = objs.First(); var sd = (StateDevice)obj; switch (property.ToLower()) { case "command": sd.Command(Conversions.ValueToStringEnum <CommandType>(primary), secondary); status = true; break; case "state": var state = new State() { Primary = Conversions.ValueToStringEnum <StateType>(primary), Secondary = secondary }; sd.State = state; status = true; break; } } //return _JSONResponse<NetomityObject>(status, obj); return(Json(obj)); }
public void FilterPriorityTest2() { NetomityObject lastCalled = null; var commandOutput = new Command() { Primary = CommandType.On }; var b1 = new Netomity.Devices.Behaviors.Fakes.StubBehaviorBase() { Priority = BehaviorPriority.Medium }; b1.FilterCommandCommand = (c) => { lastCalled = b1; return(commandOutput); }; var b2 = new Netomity.Devices.Behaviors.Fakes.StubBehaviorBase() { Priority = BehaviorPriority.MediumMediumLast }; b2.FilterCommandCommand = (c) => { lastCalled = b2; return(commandOutput); }; var sd = new StateDevice(behaviors: new List <BehaviorBase>() { b1, b2 }); sd.Command(primary: CommandType.Off); Assert.AreEqual(sd.State.Primary, StateType.On); Assert.AreEqual(b2, lastCalled); b2.Priority = BehaviorPriority.First; sd.Command(primary: CommandType.Off); Assert.AreEqual(b1, lastCalled); }
public MapCommand(CommandType primaryInput = null, CommandType primaryOutput = null, string secondaryInput = null, string secondaryOutput = null, Dictionary <StringEnum, string> stringParams = null, string sourceAddress = null, NetomityObject sourceObject = null, int delaySecs = 0 ) { if (primaryInput != null) { Add(primaryInput: primaryInput, primaryOutput: primaryOutput, secondaryInput: secondaryInput, secondaryOutput: secondaryOutput, stringParams: stringParams, sourceAddress: sourceAddress, sourceObject: sourceObject, delaySecs: delaySecs ); } }