示例#1
0
        public T Deserialize <T>(byte[] content, EncodingType type)
        {
            switch (type)
            {
            case EncodingType.Json:
                return(_jsonSerializerService.Deserialize <T>(content));

            default:
                throw new ArgumentOutOfRangeException(nameof(type));
            }
        }
        MqttAdapterEntry[] ReadConfigFile()
        {
            var adapterConfigFile = Path.Combine(_webHostEnvironment.ContentRootPath, "configuration", "mqttAdapter.json");
            var content           = _fileSystemService.ReadFileAsString(adapterConfigFile);

            return(_jsonSerializerService.Deserialize <MqttAdapterEntry[]>(content));
        }
示例#3
0
        public void HandleMqttMessage(MqttApplicationMessageReceivedEventArgs eventArguments)
        {
            var message = eventArguments.ApplicationMessage;

            if (message.Topic.ToLower() ==
                $"{_weatherAdapterInitializationArgument.TopicPrefix}weather/{_weatherAdapterInitializationArgument.Identifier}")
            {
                var decodedString = _encodingService.Decode(eventArguments.ApplicationMessage.Payload);
                try
                {
                    var payload = _jsonSerializerService.Deserialize <WeatherAdapterPayload>(decodedString);
                    if (payload != null)
                    {
                        _status = new WeatherStatus
                        {
                            Temperature = payload.Temperature,
                            Humidity    = payload.Humidity,
                            Pressure    = payload.Pressure,
                            TimeStamp   = DateTime.Now
                        };

                        Console.WriteLine($"Serialized: {decodedString}");
                        Console.WriteLine(_status);
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine("Deserialize failed");
                    Console.WriteLine(e);
                    Console.WriteLine(e.StackTrace);
                    // log message
                }
            }
        }
示例#4
0
        public List <Command> ReadCustomCommands()
        {
            var configFile = _fileSystemService.CombinePath(_fileSystemService.GetConfigurationPath(), _configurationFile);
            var content    = _fileSystemService.ReadFileAsString(configFile);
            var commands   = _jsonSerializerService.Deserialize <Command[]>(content);

            return(commands.ToList());
        }
        public void ReadAllConfigurationFiles()
        {
            var configFolder = Path.Combine(_hostingEnvironment.ContentRootPath, BaseFolder);

            foreach (var config in _fileSystemService.ReadFilesInFolder(configFolder))
            {
                var fileContent = _fileSystemService.ReadFileAsString(config);
                var root        = _jsonSerializerService.Deserialize <UiConfigurationRoot>(fileContent);
                if (root != null)
                {
                    root.Id ??= Guid.NewGuid();

                    _configurations[root.Name] = root;
                    _adapterSettingService.LoadSettingFromUiConfig(root);
                }
            }
        }
示例#6
0
        public void ReadSettings()
        {
            var content = _fileSystemService.ReadFileAsString("settings.json");

            _settings = _jsonSerializerService.Deserialize <Settings>(content);
        }