|
|||||||||
| Home >> All >> pinc >> [ scheduler overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
pinc.scheduler
Class Scheduler

java.lang.Objectpinc.scheduler.Scheduler
- All Implemented Interfaces:
- IScheduler
- public class Scheduler
- extends java.lang.Object
- implements IScheduler
- extends java.lang.Object
Title: Pinc
Description: Die Klasse enthält zwei Tabellen. Die erste zu Verwaltung von zukünftigen Jobs die sortiert nach ihrer Startzeit sind. Eine zweite Tabelle enthält Jobs die zur Zeit aktiv sind. Diese Klasse implementiert die Klasse runable und läuft in einem eigenen Thread. In einem bestimmten Intervall(im ConfigFile spezifiziert) wird die Tabelle mit den gestarteten Jobs auf termination überprüft. Anschließen werden die zu startenden Jobs überprüft, die Prozesse gestartet und in die andere Tabelle(mit gleicher Nummer) übertragen. In einem größeren Intervall werden die zukünftigen Job für die nächste Zeiteinheit (Stunde etc) in den Vector nextJobs geschrieben.
Copyright: Copyright (c) 2003
Company: dn03
- Version:
- 1.0
| Nested Class Summary | |
class |
Scheduler.MainScheduler
führt Scheduling Aufgaben und startet den Job |
| Field Summary | |
private ActiveList |
activeList
|
private java.lang.String |
activeListFile
|
private boolean |
flag
|
private long |
intervall1
|
private long |
intervall2
|
private Logfile |
logfile
|
private Scheduler.MainScheduler |
main
|
private java.lang.Thread |
mainThread
|
private JobList |
nextJobs
|
private RunningJobs |
runningJobs
|
| Constructor Summary | |
Scheduler(java.lang.String _activeListFile,
java.lang.String _file,
long Intervall1,
long Intervall2)
Constructor erzeugt die Instanz und speichert den Parameter in das Attribut der Klasse. |
|
| Method Summary | |
void |
addJob(Job j)
|
void |
checkRunningJobs()
Geht die Liste der laufenden Jobs durch und überprüft diese auf Terminierung. |
void |
executeJobs()
Diese Methode extrahiert die zu startenden Jobs und started diese durch den Aufruf von startJob. |
IActiveList |
getActiveList()
|
IRunningJobs |
getRunningJobsList()
|
void |
killJob(int Number)
|
void |
killJob(Job j)
|
void |
start()
|
void |
startJob(Job j)
Diese Methode prüft die Abhängigkeiten des zu startenden Jobs, und startet den Job, kopiert das Job Element in den Vector runningJobs und löscht sie aus der nextJobs. |
void |
stop()
|
void |
updateNextJobList(java.util.Date nextIntervall)
Diese Methode updatet die nextJob Liste in welcher die Jobs aufgezählt werden, welche in Zukunft gestartet werden. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
nextJobs
private JobList nextJobs
runningJobs
private RunningJobs runningJobs
activeList
private ActiveList activeList
logfile
private Logfile logfile
intervall1
private long intervall1
intervall2
private long intervall2
main
private Scheduler.MainScheduler main
activeListFile
private java.lang.String activeListFile
mainThread
private java.lang.Thread mainThread
flag
private boolean flag
| Constructor Detail |
Scheduler
public Scheduler(java.lang.String _activeListFile, java.lang.String _file, long Intervall1, long Intervall2) throws pinc.PincException
- Constructor erzeugt die Instanz und speichert den Parameter in das
Attribut der Klasse. Mit dem Parameter String wird ein FileWriterObject
erstellt welches im Attribut gespeichert wird.
| Method Detail |
stop
public void stop()
throws pinc.PincException
start
public void start()
checkRunningJobs
public void checkRunningJobs()
throws pinc.PincException
- Geht die Liste der laufenden Jobs durch und überprüft diese auf
Terminierung. Sollte einer der Jobs terminiert sein so checkt er das
StartJob Array in der Job-Instanz startet diese(durch Methodenaufruf
startJob) gegebenenfalls und löscht anschließen den terminierten Job aus
der Liste. Der ganze Vorgang wird in das Logfile geschrieben.
executeJobs
public void executeJobs()
throws pinc.PincException
- Diese Methode extrahiert die zu startenden Jobs und started diese durch
den Aufruf von startJob.
getActiveList
public IActiveList getActiveList()
- Specified by:
getActiveListin interfaceIScheduler
startJob
public void startJob(Job j) throws pinc.PincException
- Diese Methode prüft die Abhängigkeiten des zu startenden Jobs, und startet
den Job, kopiert das Job Element in den Vector runningJobs und löscht sie
aus der nextJobs.
Sollte der Job auf die Terminierung eines Jobs angewiesen sein, so wird in
der Instanz des „Vaterjobs“ (Job.addStartJob) die Vectornummer dieses Jobs
hinzugefügt. Anschließend wird das executionsdatum dieses Jobs in weite
Ferne gesetzt.
updateNextJobList
public void updateNextJobList(java.util.Date nextIntervall) throws pinc.PincException
- Diese Methode updatet die nextJob Liste in welcher die Jobs aufgezählt
werden, welche in Zukunft gestartet werden. Dazu werden die Einträge in
der ActiveJobs durchgegangen und gegebenenfalls in die nextJob(nextJob.
add) Liste übertragen. Auch in der Lister der ActiveJobs Klasse muss die
Startzeit der Jobs aktualisiert werden.
killJob
public void killJob(Job j) throws pinc.PincException
killJob
public void killJob(int Number)
throws pinc.PincException
- Specified by:
killJobin interfaceIScheduler
getRunningJobsList
public IRunningJobs getRunningJobsList()
- Specified by:
getRunningJobsListin interfaceIScheduler
addJob
public void addJob(Job j)
- Specified by:
addJobin interfaceIScheduler
|
|||||||||
| Home >> All >> pinc >> [ scheduler overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
JAVADOC
pinc.scheduler.Scheduler