<commit_before>﻿using System;
using System.Threading.Tasks;

using Newtonsoft.Json;

using SensorThings.Client;
using SensorThings.Converters;
using SensorThings.OData;

namespace SensorThings.Core
{
    public class Observation : AbstractEntity
    {
        private DateTimeRange _phenomenonTime;
        private DateTime? _resultTime;
        private DateTimeRange _validTime;
        private object _resultQuality;
        private object _result;
        private object _parameters;
        private string _datastreamNavigationLink;
        private string _featureOfInterestNavigationLink;
        private Datastream _datastream;
        private FeatureOfInterest _featureOfInterest;

        [JsonProperty("phenomenonTime")]
        [JsonConverter(typeof(DateTimeRangeConverter))]
        public DateTimeRange PhenomenonTime
        {
            get => _phenomenonTime;
            set => SetProperty(ref _phenomenonTime, value);
        }

        [JsonProperty("resultTime")]
        public DateTime? ResultTime
        {
            get => _resultTime;
            set => SetProperty(ref _resultTime, value);
        }

        [JsonProperty("validTime")]
        [JsonConverter(typeof(DateTimeRangeConverter))]
        public DateTimeRange ValidTime
        {
            get => _validTime;
            set => SetProperty(ref _validTime, value);
        }

        [JsonProperty("resultQuality")]
        public object ResultQuality
        {
            get => _resultQuality;
            set => SetProperty(ref _resultQuality, value);
        }

        [JsonProperty("result")]
        public object Result
        {
            get => _result;
            set => SetProperty(ref _result, value);
        }

        [JsonProperty("parameters")]
        public object Parameters
        {
            get => _parameters;
            set => SetProperty(ref _parameters, value);
        }

        [JsonProperty("<EMAIL>")]
        public string DatastreamNavigationLink
        {
            get => _datastreamNavigationLink;
            set => SetProperty(ref _datastreamNavigationLink, value);
        }

        [JsonProperty("<EMAIL>")]
        public string FeatureOfInterestNavigationLink
        {
            get => _featureOfInterestNavigationLink;
            set => SetProperty(ref _featureOfInterestNavigationLink, value);
        }<commit_msg>Fixed 27: Parameters is a Dictionary not an object (like 'Thing.Properties').<commit_after>﻿using System;
using System.Collections.Generic;
using System.Threading.Tasks;

using Newtonsoft.Json;

using SensorThings.Client;
using SensorThings.Converters;
using SensorThings.OData;

namespace SensorThings.Core
{
    public class Observation : AbstractEntity
    {
        private DateTimeRange _phenomenonTime;
        private DateTime? _resultTime;
        private DateTimeRange _validTime;
        private object _resultQuality;
        private object _result;
        private IDictionary<string, object> _parameters;
        private string _datastreamNavigationLink;
        private string _featureOfInterestNavigationLink;
        private Datastream _datastream;
        private FeatureOfInterest _featureOfInterest;

        [JsonProperty("phenomenonTime")]
        [JsonConverter(typeof(DateTimeRangeConverter))]
        public DateTimeRange PhenomenonTime
        {
            get => _phenomenonTime;
            set => SetProperty(ref _phenomenonTime, value);
        }

        [JsonProperty("resultTime")]
        public DateTime? ResultTime
        {
            get => _resultTime;
            set => SetProperty(ref _resultTime, value);
        }

        [JsonProperty("validTime")]
        [JsonConverter(typeof(DateTimeRangeConverter))]
        public DateTimeRange ValidTime
        {
            get => _validTime;
            set => SetProperty(ref _validTime, value);
        }

        [JsonProperty("resultQuality")]
        public object ResultQuality
        {
            get => _resultQuality;
            set => SetProperty(ref _resultQuality, value);
        }

        [JsonProperty("result")]
        public object Result
        {
            get => _result;
            set => SetProperty(ref _result, value);
        }

        [JsonProperty("parameters")]
        public IDictionary<string, object> Parameters
        {
            get => _parameters;
            set => SetProperty(ref _parameters, value);
        }

        [JsonProperty("<EMAIL>")]
        public string DatastreamNavigationLink
        {
            get => _datastreamNavigationLink;
            set => SetProperty(ref _datastream<EMAIL>Link, value);
        }

        [JsonProperty("<EMAIL>")]
        public string FeatureOfInterestNavigationLink
        {
            get => _featureOfInterestNavigationLink;
            set => SetProperty(ref _featureOfInterestNavigationLink, value);
        }
{'fraction_non_alphanumeric': 0.07924450831451448, 'fraction_numerical': 0.0004105933073290905, 'mean_word_length': 2.276395427034297, 'pattern_counts': {'":': 0, '<': 10, '<?xml version=': 0, '>': 42, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '404263', 'n_tokens_mistral': 1231, 'n_tokens_neox': 1173, 'n_words': 274}