﻿using System.Collections.Generic;
using MiniJSON;

namespace AsmodeeDigital.CrossPromo.Plugin.Domain
{
    public class AnalyticsItem
    {
        public Dictionary<string, object> Headers { get; protected set; }

        public string MetricName
        {
            get
            {
                return Headers["metric_name"] as string;
            }
            protected set
            {
                Headers["metric_name"] = value;
            }
        }

        public AnalyticsItem(Dictionary<string, object> headers)
        {
            Headers = new Dictionary<string, object>(headers);
        }

        public override string ToString()
        {
            return Json.Serialize(Headers);
        }

        public virtual Dictionary<string, object> ToDictionary()
        {
            return new Dictionary<string, object>(Headers);
        }
    }
}
