public ConnectionSourceCfg Pack(ConnectionSourceAbstract connectionSource) { var src = (TcpConnectionSource)connectionSource; var config = new ConnectionSourceCfg { Name = src.Name, Description = src.Description, ClassName = ClassName, Cfg = JsonConvert.SerializeObject(new { src.Host, src.Port, }), }; return(config); }
public ConnectionSourceCfg Pack(ConnectionSourceAbstract connectionSource) { var src = (SerialConnectionSource)connectionSource; var config = new ConnectionSourceCfg { Name = src.Name, Description = src.Description, ClassName = ClassName, Cfg = JsonConvert.SerializeObject(new { src.Port, src.Baud, src.Data, src.Parity, src.StopBits, }), }; return(config); }
public ConnectionSourceAbstract Unpack(ConnectionSourceCfg config) { var connectionSource = new TcpConnectionSource { Name = config.Name, Description = config.Description, }; var jo = (Newtonsoft.Json.Linq.JObject)JsonConvert.DeserializeObject(config.Cfg); if (jo.ContainsKey(nameof(connectionSource.Host))) { connectionSource.Host = (string)jo[nameof(connectionSource.Host)].ToObject(typeof(string)); } if (jo.ContainsKey(nameof(connectionSource.Port))) { connectionSource.Port = (int)jo[nameof(connectionSource.Port)].ToObject(typeof(int)); } return(connectionSource); }
public ConnectionSourceAbstract Unpack(ConnectionSourceCfg config) { var connectionSource = new SerialConnectionSource { Name = config.Name, Description = config.Description, }; var jo = (Newtonsoft.Json.Linq.JObject)JsonConvert.DeserializeObject(config.Cfg); if (jo.ContainsKey(nameof(connectionSource.Port))) { connectionSource.Port = (string)jo[nameof(connectionSource.Port)].ToObject(typeof(string)); } if (jo.ContainsKey(nameof(connectionSource.Baud))) { connectionSource.Baud = (int)jo[nameof(connectionSource.Baud)].ToObject(typeof(int)); } if (jo.ContainsKey(nameof(connectionSource.Data))) { connectionSource.Data = (int)jo[nameof(connectionSource.Data)].ToObject(typeof(int)); } if (jo.ContainsKey(nameof(connectionSource.Parity))) { connectionSource.Parity = (RJCP.IO.Ports.Parity)jo[nameof(connectionSource.Parity)].ToObject(typeof(RJCP.IO.Ports.Parity)); } if (jo.ContainsKey(nameof(connectionSource.StopBits))) { connectionSource.StopBits = (RJCP.IO.Ports.StopBits)jo[nameof(connectionSource.StopBits)].ToObject(typeof(RJCP.IO.Ports.StopBits)); } return(connectionSource); }