using SQLite;
using System;
using System.Collections.Generic;
using Vinno.IUS.Common.Log;
using Vinno.vCloud.Disk.Database.Dto;

namespace Vinno.vCloud.Disk.Database
{
    /// <summary>
    /// Db helper
    /// </summary>
    public class DbHelper : IDisposable
    {
        public int MaxRecordCount = 800;

        /// <summary>
        /// The sqlite connection.
        /// </summary>
        public SQLiteConnection DB { get; set; }

        /// <summary>
        /// Initialize after login.
        /// </summary>
        /// <param name="dbPath">Database path.</param>
        public void OnInitialize(string dbPath)
        {
            DB = new SQLiteConnection(dbPath);
            DB.CreateTable<FoldersAndFiles>();
            DB.CreateTable<User>();
        }

        /// <summary>
        /// Dispose the connection.
        /// </summary>
        public void Dispose()
        {
            if (DB != null)
            {
                DB.Close();
                DB.Dispose();
            }
        }
    }
}