Neokernel API

ISchedulable Interface

A class can implement ISchedulable when it must be scheduled for execution by a Scheduler.

For a list of all members of this type, see ISchedulable Members .

public interface ISchedulable

Types that implement ISchedulable

Type Description
EmailBugReportAgent This agent registers itself with the Service Manager as a BugReportInterface and periodically submits the bug reports collects as an email message to a list of recipients using the SendEmailInterface registered with the Service Manager as "send_email".
EmailReporter This is a Reporter Agent that extends FileLoggerAgent in order to log AK agent output to sequentially named text files. Upon loading, this agent replaces the default Reporter.
ReceivePOP3EmailAgent This agent periodically checks for new POP3 messages, passing routing the message to the registered RequestAgent matching the message recipient's email address.
ScheduledAgent

Abstract implementation of a scheduled agent, or an ISchedulable agent that wakes up periodically at the dates and times specified by it's schedule prop.

This agent implements ISchedulable; it creates and uses a Schedule using the value of it's schedule prop to initialize the Schedule. The schedule prop must be a valid Schedule string, for instance:

starting 10/31/2003 every 2h until 10/20/2004
starting 10/31/2003 between 10:00:00 and 11:00:00 every 20s until 12/01/2003
between 0:0:0 and 23:59:59 every 5m

SceduledAgents all have the following prop:
schedule
Specifies the schedule that specifies when this Agent will wake up.
 Schedule Syntax:

 date = mm/dd/yyyy
 time = hh:mm:ss
 [starting startDateTime]
 [[every n[y|m|w|d]] | [on [[SU][MO][TU][WE][TH][FR][SA] | [startDay-endDay]]]]
 [[between startTime-endTime every n[h|m|s]] | [at time1,time2,time3]]
 [until endDateTime]
 
SessionReaper

The SessionReaper is a ScheduledAgent that periodically checks for expired sessions created by the SessionManager. Although this agent has no direct interactions with the SessionManager, it knows that session information stored in an IObjectManager is tagged with a prop called timestamp. Any session Props that has a timestamp value greater than the SessionReaper's session_timeout_ms prop is removed from the ObjectManager. The SessionReaper checks for expired objects using the schedule, ObjectManager service, and session object type specified by it's Props.

This agent supports the following Props entries:
schedule
The schedule specifying when this agent will check for expired sessions. The default value is between 0:0:0-23:59:59 every 5m
session_type
The object type that should be used to identify for expired session objects. Defaults to session
om_service_name
Specifies the name of the Object Manager service that the persistent sessions are stored in. Defaults to object_manager
session_timeout_ms
Specifies the time in milliseconds that sessions will persist before they are reaped. Defaults to 300000 (5 minutes).
XMLPropsList.ScheduledTask  

Requirements

Namespace: com.neokernel.util

Assembly: Neokernel (in Neokernel.exe)

See Also

ISchedulable Members | com.neokernel.util Namespace