内置 Quartz 的 HomeCenter V7.58 发布

HomeCenter V7.58 发布了。更新内容如下:

  • 最新版本增加了Quartz包,采用新API优化并封装。
  • 编制高级定时Cron任务时,代码逻辑更整洁,支持会话级和工程级Scheduler的自动关闭和释放。
以下用例是除周日外,每30秒执行一次作业(HomeCenter采用JRuby编程语言,曾经Sun公司Netbean所采用)。
import Java::hc.server.util.scheduler.WeeklyJobCalendar
 import java.lang.StringBuilder
 
 ctx = Java::hc.server.ui.ProjectContext::getProjectContext()
 scheduler = ctx.getScheduler("MyScheduler1")
 scheduler.start()

 if scheduler.isExistsTrigger("Trigger1") == false
   builder = StringBuilder.new(100)
   builder.append("ctx = Java::hc.server.ui.ProjectContext::getProjectContext()\n")
   builder.append("ctx.showTipOnTray(\"executing job1\")\n")
   scheduler.addJob("Job1", builder.toString())#第二个参数是将要执行的脚本
 
   weeklyCalendar = WeeklyJobCalendar.new()
   weeklyCalendar.setDayExcluded(java.util.Calendar::SUNDAY, true)#exclude sunday
   weeklyCalendar.setDayExcluded(java.util.Calendar::SATURDAY, false)
   scheduler.addCalendar("Calendar1", weeklyCalendar)
 
   scheduler.addCronTrigger("Trigger1", "0/30 * * * * ?", "Calendar1", "Job1")
   puts "fire time : " + scheduler.getTriggerNextFireTime("Trigger1").toString()
 end

最新服务器源代码。

文章转载自 开源中国社区 [http://www.oschina.net]

上一篇:飞天加速计划·高校学生在家实践——ECS服务器初体验


下一篇:Git服务器安装详解及安装遇到问题解决方案【转】