Interface Reminder

All Superinterfaces:
ReminderRO
All Known Subinterfaces:
Proxy.Reminder

public interface Reminder extends ReminderRO
Reminder: node.reminder - read-write. For creating and modifying reminders:
  def reminder = node.reminder
  if (!reminder)
      c.statusInfo = "node has no reminder"
  else
      c.statusInfo = "node has a reminder: $reminder"

  def inAMinute = new Date(System.currentTimeMillis() + 60*1000)
  node.reminder.createOrReplace(inAMinute, "WEEK", 2)
  if (node.map.file) {
      node.reminder.setScript("loadUri(new URI('${node.map.file.toURI()}#${node.id}'))")
  }
  // a click on the node opens time management dialog
  node.link.text = 'menuitem:_$ReminderListAction$0'
 
  • Method Details

    • createOrReplace

      void createOrReplace(Date remindAt, String periodUnit, Integer period)
      Creates a periodic reminder. To make the reminder fire every second week:
         node.reminder.createOrReplace(new Date() + 1, "WEEK", 2)
       
      Parameters:
      remindAt - The timestamp when the reminder fires first.
      periodUnit - one of ["MINUTE", "HOUR", "DAY", "WEEK", "MONTH", "YEAR"].
      period - counts the periodUnits.
    • setScript

      void setScript(String scriptSource)
      optional: a Groovy script to execute when the reminder fires.
      Parameters:
      scriptSource - the script itself, not a path to a file.
      Throws:
      NullPointerException - if there is no reminder yet.
    • remove

      void remove()
      removes a reminder from a node. It's not an error if there is no reminder to remove.