Beispiel #1
0
        internal static AsyncAction VMCreateObjectAction(
            string _name_label,
            string _name_description,
            policy_backup_type _backup_type,
            policy_frequency _backup_frequency,
            Dictionary <string, string> _backup_schedule,
            long _backup_retention_value,
            vmpp_archive_frequency _archive_frequency,
            Dictionary <string, string> _archive_target_config,
            vmpp_archive_target_type _archive_target_type,
            Dictionary <string, string> _archive_schedule,
            bool _is_alarm_enabled,
            Dictionary <string, string> _alarm_config,
            bool _is_policy_enabled,
            List <VM> vms,
            bool runNow,
            IXenConnection _connection)
        {
            if (typeof(T) == typeof(VMPP))
            {
                var vmpp = new VMPP
                {
                    name_label             = _name_label,
                    name_description       = _name_description,
                    backup_type            = (vmpp_backup_type)_backup_type,
                    backup_frequency       = (vmpp_backup_frequency)_backup_frequency,
                    backup_schedule        = _backup_schedule,
                    backup_retention_value = _backup_retention_value,
                    archive_frequency      = _archive_frequency,
                    archive_target_config  = _archive_target_config,
                    archive_target_type    = _archive_target_type,
                    archive_schedule       = _archive_schedule,
                    is_alarm_enabled       = _is_alarm_enabled,
                    alarm_config           = _alarm_config,
                    is_policy_enabled      = _is_policy_enabled,
                    Connection             = _connection
                };
                return(new CreateVMPolicy <VMPP>(vmpp, vms, runNow));
            }
            else
            {
                var vmss = new VMSS
                {
                    name_label         = _name_label,
                    name_description   = _name_description,
                    type               = (vmss_type)_backup_type,
                    frequency          = (vmss_frequency)_backup_frequency,
                    schedule           = _backup_schedule,
                    retained_snapshots = _backup_retention_value,
                    enabled            = _is_policy_enabled,
                    Connection         = _connection
                };

                return(new CreateVMPolicy <VMSS>(vmss, vms, runNow));
            }
        }
Beispiel #2
0
 internal static string FormatSchedule(Dictionary <string, string> schedule, policy_frequency backupFrequency, DaysWeekCheckboxes.DaysMode mode)
 {
     if (backupFrequency == policy_frequency.hourly)
     {
         return(string.Format(Messages.HOURLY_SCHEDULE_FORMAT, schedule["min"]));
     }
     else if (backupFrequency == policy_frequency.daily)
     {
         DateTime value = DateTime.Parse(string.Format("{0}:{1}", schedule["hour"], schedule["min"]), CultureInfo.InvariantCulture);
         return(string.Format(Messages.DAILY_SCHEDULE_FORMAT, HelpersGUI.DateTimeToString(value, Messages.DATEFORMAT_HM, true)));
     }
     else if (backupFrequency == policy_frequency.weekly)
     {
         DateTime value = DateTime.Parse(string.Format("{0}:{1}", schedule["hour"], schedule["min"]), CultureInfo.InvariantCulture);
         return(string.Format(Messages.WEEKLY_SCHEDULE_FORMAT, HelpersGUI.DateTimeToString(value, Messages.DATEFORMAT_HM, true), DaysWeekCheckboxes.L10NDays(schedule["days"], mode)));
     }
     return("");
 }