using System; namespace MLL { public class ModeloCloudStorage { public int Id { get; set; } public string Nome { get; set; } public string Tipo { get; set; } // 'gdrive', 'onedrive', 'webdav' // OAuth public string ClientId { get; set; } public string ClientSecret { get; set; } public string AccessToken { get; set; } public string RefreshToken { get; set; } public DateTime? TokenExpiraEm { get; set; } // WebDAV public string Url { get; set; } public string Usuario { get; set; } public string Senha { get; set; } // Geral public string PastaBase { get; set; } public bool Ativo { get; set; } public DateTime CriadoEm { get; set; } public DateTime? AtualizadoEm { get; set; } // ========================= // 🏗️ CONSTRUTORES // ========================= // 🔹 Construtor vazio (ORM / DAL) public ModeloCloudStorage() { Ativo = true; CriadoEm = DateTime.Now; } // 🔹 Construtor com parâmetros principais public ModeloCloudStorage( string nome, string tipo, string pastaBase = null, string clientId = null, string clientSecret = null, string accessToken = null, string refreshToken = null, DateTime? tokenExpiraEm = null, string url = null, string usuario = null, string senha = null ) : this() { Nome = nome; Tipo = tipo; PastaBase = pastaBase; ClientId = clientId; ClientSecret = clientSecret; AccessToken = accessToken; RefreshToken = refreshToken; TokenExpiraEm = tokenExpiraEm; Url = url; Usuario = usuario; Senha = senha; } } }