Формат атрибута расписания в формате Cron.
атрибут графика:
хроны формата расписание. Это выполняется в часовом поясе UTC. Необходимое для создания Тип: строку
Следующий сценарий Java может помочь вам.
/**
* This script retrieves the Repeating trigger policies for a SoftLayer_Scale_Policy, then
* it gets the schedule attribute and parses the value (Cron format) to human readable format.
*
* Important manual pages:
* @see http://sldn.softlayer.com/reference/services/SoftLayer_Scale_Policy/getRepeatingTriggers
* @see http://sldn.softlayer.com/reference/datatypes/SoftLayer_Scale_Policy_Trigger_Repeating
*
* @license <http://sldn.softlayer.com/wiki/index.php/License>
* @author SoftLayer Technologies, Inc. <[email protected]>
*/
package SoftLayer_Java_Scripts.Examples;
import com.softlayer.api.*;
import com.softlayer.api.service.scale.Policy;
import com.softlayer.api.service.scale.policy.trigger.Repeating;
import java.util.Date;
import java.util.List;
import org.quartz.CronExpression;
public class GetObjectScalePolicyTriggerRepeating
{
public static void main(String[] args)
{
// Fill with your valid data here.
String user = "set me";
String apiKey = "set me";
long scalePolicyId = 1234;
ApiClient client = new RestApiClient().withCredentials(user, apiKey);
Policy.Service service = Policy.service(client, scalePolicyId);
try
{
List<Repeating> result = service.getRepeatingTriggers();
for(Repeating rep : result) {
String cronValue = rep.getSchedule();
System.out.println("Original value: " + cronValue);
// Fixing format in order to display the schedule.
String patch = "* " + cronValue;
// Using the next library: http://www.quartz-scheduler.org/api/2.2.1/org/quartz/CronExpression.html
CronExpression cron = new CronExpression(patch);
// Returns the next date/time after the given date/time which satisfies the cron expression.
// (i.e. the next time it's going to be triggered)
System.out.println("Parsed value: " + cron.getNextValidTimeAfter(new Date()));
}
}
catch(Exception e)
{
System.out.println("Script failed, review the next message for further details: " + e);
}
}
}
Следующие ссылки содержат информацию о формате хрон:
http://www.nncron.ru/help/EN/working/cron-format.htm
http://www.quartz-scheduler.org/api/2.2.1/org/quartz/CronExpression.html
Я получил неправильные данные. <Оригинальное значение cron>: 0 14? * MON *: Пн Июл 25 00:14:00 KST 2016 Время в 2 PM, но «cron.getNextValidTimeAfter (новая дата())); возвращает 14 минут. Это проблема? –
Я добавил следующую строку в исходный код 'String patch =" * "+ cronValue;'. Эта линия позволяет точно видеть результат. Тем не менее, вы должны иметь в виду, что атрибут ** schedule ** используется для целей планирования и библиотеки, которую я предложил вам, является сторонней библиотекой, поэтому вам может потребоваться больше узнать об этом, чтобы сделать дальнейшая реализация. –