using System;

namespace NcProgramManager.Cnc.Mazak
{
    public sealed class MazakConnectionConfig
    {
        public string Name { get; set; }
        public string IpAddress { get; set; }
        /// <summary>
        /// FTP port. Default 21. Some Smooth Ai units run FTP on port 23
        /// (port 21 collides with Mazatrol boot/shutdown backup) - operator
        /// overrides via -porta.
        /// </summary>
        public int Port { get; set; } = 21;
        public string Username { get; set; } = string.Empty;
        public string Password { get; set; } = string.Empty;
        /// <summary>
        /// Remote NC program directory. Site-specific: SD/D-drive
        /// "Machine Programs" folder, varies per Smooth firmware. No safe
        /// public default - "/" is a placeholder, operator must set it.
        /// </summary>
        public string ProgramDirectory { get; set; } = "/";
        public TimeSpan RequestTimeout { get; set; } = TimeSpan.FromSeconds(10);
    }
}
