using System.Collections.Generic;
using System.Web.Http;
using iiie.Logs.DataAccess;
using iiie.Logs.DBO;

namespace Logs_test.Controllers
{
    public class ValuesController : ApiController
    {
        // GET api/values
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        // GET api/values/5
        public string Get(int id)
        {
            Logger.Error<int>(ResultStatus.DBError, "my private data", "my public data");
            Logger.Error<int>(ResultStatus.DBError, "my private/public data", "");
            Logger.Error<int>(ResultStatus.DBError, "my private data");
            var value = "value";
            if (OpResult<int>.Ok(42))
                value += " ok";
            if (!OpResult<int>.Error(ResultStatus.InputError, "", ""))
                value += " error";
            return value;
        }

        public OpResult<int> Test()
        {
            var res = OpResult<bool>.Error(ResultStatus.DBError, "Test");
            return res.To<int>();
        }

        // POST api/values
        public void Post([FromBody]string value)
        {
        }

        // PUT api/values/5
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE api/values/5
        public void Delete(int id)
        {
        }
    }
}
