public bool read_bool(string path, bool defaultValue = false)
        {
            if (_valueStorageService.TryRead <bool>(RelativeValueStoragePath.Parse(path), out var value))
            {
                return(value);
            }

            return(defaultValue);
        }
        public int read_int(string path, int defaultValue = 0)
        {
            if (_valueStorageService.TryRead <int>(RelativeValueStoragePath.Parse(path), out var value))
            {
                return(value);
            }

            return(defaultValue);
        }
        public float read_float(string path, float defaultValue = 0.0F)
        {
            if (_valueStorageService.TryRead <float>(RelativeValueStoragePath.Parse(path), out var value))
            {
                return(value);
            }

            return(defaultValue);
        }
        public PythonDictionary read_object(string path, PythonDictionary defaultValue = null)
        {
            if (_valueStorageService.TryRead <IDictionary <object, object> >(RelativeValueStoragePath.Parse(path), out var value))
            {
                return(PythonConvert.ToPythonDictionary(value));
            }

            return(defaultValue);
        }
        public string read_string(string path, string defaultValue = null)
        {
            if (_valueStorageService.TryRead <string>(RelativeValueStoragePath.Parse(path), out var value))
            {
                return(value);
            }

            return(defaultValue);
        }
        public object read(string path, object defaultValue = null)
        {
            if (_valueStorageService.TryRead <object>(RelativeValueStoragePath.Parse(path), out var value))
            {
                return(value);
            }

            return(defaultValue);
        }
        public void Delete(RelativeValueStoragePath relativePath)
        {
            if (relativePath is null)
            {
                throw new ArgumentNullException(nameof(relativePath));
            }

            var path = BuildPath(relativePath);

            _storageService.DeletePath(path);
            _logger.LogTrace($"Value '{relativePath}' deleted.");
        }
        public void Write(RelativeValueStoragePath relativePath, object value)
        {
            if (relativePath is null)
            {
                throw new ArgumentNullException(nameof(relativePath));
            }

            var path = BuildPath(relativePath);

            _storageService.Write(value, path);
            _logger.LogTrace($"Value '{relativePath}' written ({value}).");
        }
        string BuildPath(RelativeValueStoragePath relativePath)
        {
            if (relativePath.Paths.Any(p => p.Contains("/", StringComparison.Ordinal)) || relativePath.Paths.Any(p => p.Contains("\\", StringComparison.Ordinal)))
            {
                throw new InvalidOperationException("The path is invalid.");
            }

            var path = global::System.IO.Path.Combine(relativePath.Paths.ToArray());

            path = global::System.IO.Path.Combine(ValueStorageDirectoryName, path);

            return(path);
        }
        public bool TryRead <TValue>(RelativeValueStoragePath relativePath, out TValue value)
        {
            if (relativePath is null)
            {
                throw new ArgumentNullException(nameof(relativePath));
            }

            var path = BuildPath(relativePath);

            if (_storageService.TryRead(out value, path))
            {
                _logger.LogTrace($"Value '{relativePath}' read ({value}).");
                return(true);
            }

            _logger.LogTrace($"Value '{relativePath}' not found.");
            return(false);
        }
 public void delete(string path)
 {
     _valueStorageService.Delete(RelativeValueStoragePath.Parse(path));
 }
 public void write(string path, object value)
 {
     _valueStorageService.Write(RelativeValueStoragePath.Parse(path), value);
 }
Example #13
0
        static string BuildPath(RelativeValueStoragePath relativePath)
        {
            var path = global::System.IO.Path.Combine(relativePath.Segments.ToArray());

            return(global::System.IO.Path.Combine(ValueStorageDirectoryName, path));
        }