home *** CD-ROM | disk | FTP | other *** search
- import java.util.Date;
- import java.util.Vector;
-
- public class JDPPurgeJobLog {
- String dsntype;
- JDPJagg jaggSQL;
- JDPSubsystemMgr manager;
- JDPJob thisJob;
- JDPUtils utils;
-
- public JDPPurgeJobLog(JDPSubsystemMgr var1, JDPJob var2, int var3) {
- this.manager = var1;
- this.thisJob = var2;
- var2.setInstance(this);
- this.jaggSQL = var1.setupJaggInstanceFromSystem(var2.getJDPSystem());
- var2.appendJobLog("Job started on " + (new Date()).toString());
-
- try {
- this.utils = var1.utils;
- this.dsntype = this.utils.getDataSourceType(this.jaggSQL);
- this.purgeJobLog(var3);
- this.checkPurgeEvents();
- } catch (Exception var5) {
- var2.logException(var5);
- }
-
- var2.appendJobLog("Job completed on " + (new Date()).toString());
- }
-
- public void checkForEvent(String var1) {
- Vector var2 = new Vector();
- String var3 = "SELECT EVENTNAME FROM JDPEVENT WHERE JDPSYSTEM = '" + var1 + "' " + "AND OBJECTTYPE = 'C' " + "AND OBJECT = 'JDPPurgeJobLog' ";
- int var4 = this.jaggSQL.execSQL(var3, var2);
- if (var4 == 0) {
- this.thisJob.appendJobLog("Creating Purge Event for system " + var1);
- var2 = new Vector();
- var3 = "INSERT INTO JDPEVENT (JDPSYSTEM, EVENTNAME, EVENTDESC, EVENTTYPE, FREQUENCY, FREQINT, FREQDAYS, FREQSTDAY, FREQWEEK, FREQWEEKDY, STARTDATE, STARTTIME, ENDDATE, ENDTIME, REPFREQ, REPFREQUOM, NEXTRUNTIM, STATUS, OBJECTTYPE, OBJECT, OBJECTPARM, OBJECTCONS, JOBQUEUE, JOBPRIORTY, QUEPRIORTY, JOBHELD, NOTIFYUSER, NOTIFYVIA, NOTIFYON, LOGEVENT, ACTUALSTRT, ACTUALEND, LASTSTATUS)VALUES ('" + var1 + "', " + "'Purge Job Logs', " + "'Purge Job Logs older than 10 days', " + "'R', " + "'D', " + "1, " + "'NNNNNNN', " + "1, " + "0, " + "0, " + JDPDate.formatForSql(new Date(), this.dsntype) + ", " + "32400000, " + JDPDate.formatForSql(new Date(0L), this.dsntype) + ", " + "0, " + "1, " + "'H', " + "0, " + "'Y', " + "'C', " + "'JDPPurgeJobLog', " + "'JDPSubsystemMgr,JDPJob,10', " + "'(JDPSubsystemMgr,JDPJob,int)', " + "'QBATCH', " + "5, " + "5, " + "'N', " + "-1, " + "'P', " + "'F', " + "'B', " + "0, 0, ' ')";
- this.jaggSQL.execSQL(var3, var2);
- }
-
- }
-
- public void checkPurgeEvents() {
- if (this.thisJob.getJDPSystem().equals("01001")) {
- String[] var1 = this.manager.getSystems();
-
- for(int var2 = 0; var2 < var1.length; ++var2) {
- if (!var1[var2].equals("01001")) {
- this.checkForEvent(var1[var2].substring(0, 5));
- }
- }
-
- }
- }
-
- public void purgeJobLog(int var1) {
- this.thisJob.appendJobLog("Purging job logs older than " + Integer.toString(var1) + " days...");
- Date var2 = new Date();
- var2.setDate(var2.getDate() - var1);
- this.thisJob.appendJobLog("Purging job logs before " + var2.toString() + "...");
- Vector var3 = new Vector();
- String var4 = JDPUtils.getFieldQuote(9, this.dsntype);
- String var5 = "DELETE FROM JDPEVTLO WHERE JDPSYSTEM = '" + this.thisJob.getJDPSystem() + "' ";
- var5 = var5 + "AND " + JDPUtils.sqlConvert("STARTDATE", 9, this.dsntype) + " < " + var4 + JDPDate.format(var2, "yyyy/mm/dd") + var4;
- int var6 = this.jaggSQL.execSQL(var5, var3);
- this.thisJob.appendJobLog(Integer.toString(var6) + " job log entries removed.");
- }
- }
-