home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / JDesignerPro / Jdp3_0.exe / data1.cab / Program_Files / JDPSetupSvr.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-09  |  11.6 KB  |  246 lines

  1. import java.util.Date;
  2. import java.util.Vector;
  3.  
  4. public class JDPSetupSvr {
  5.    JDPUser user;
  6.    String sourcetype;
  7.  
  8.    void startEnterpriseServer() {
  9.       this.user.loginMessage.setStatusMsg("Starting Enterprise Server...", 0);
  10.       this.user.jaggSQL.invoke("JDPSubsystemMgr", "start");
  11.    }
  12.  
  13.    boolean createServerTables() {
  14.       String var2 = this.user.u.getDataSourceType(this.user.jaggSQL);
  15.       this.sourcetype = var2;
  16.       if (var2 == null) {
  17.          return false;
  18.       } else {
  19.          String var3 = "text";
  20.          String var4 = "date";
  21.          String var5 = "float";
  22.          String var6 = "int";
  23.          String var7 = "int";
  24.          String var8 = " NULL";
  25.          if (var2.indexOf(JDPJagg.MSSQLSERVER) < 0 && var2.indexOf(JDPJagg.SYBASE) < 0 && var2.indexOf(JDPJagg.SYBASE10) < 0 && var2.indexOf(JDPJagg.ANYWHERE) < 0) {
  26.             if (var2.indexOf(JDPJagg.FOXPRO) >= 0) {
  27.                var5 = "int";
  28.                var8 = "";
  29.                var3 = "memo";
  30.             } else if (var2.indexOf(JDPJagg.ORACLE) < 0 && var2.indexOf(JDPJagg.POLITE) < 0) {
  31.                if (var2.indexOf(JDPJagg.DB2) >= 0 || var2.indexOf(JDPJagg.SOLIDSERVER) >= 0) {
  32.                   var3 = "long varchar";
  33.                   var5 = "decimal";
  34.                   var8 = "";
  35.                }
  36.             } else {
  37.                var3 = "long";
  38.                var5 = "decimal";
  39.             }
  40.          } else {
  41.             var3 = "text";
  42.             var4 = "datetime";
  43.             var5 = "decimal";
  44.             var7 = "numeric";
  45.          }
  46.  
  47.          if (var2.indexOf(JDPJagg.LOTUS) >= 0) {
  48.             var3 = "long varchar";
  49.             var5 = "decimal";
  50.             var6 = "integer";
  51.             var7 = "integer";
  52.          }
  53.  
  54.          if (var2.indexOf(JDPJagg.INFORMIX) >= 0) {
  55.             var3 = "varchar(255)";
  56.             var5 = "decimal";
  57.             var6 = "integer";
  58.             var7 = "integer";
  59.             var8 = "";
  60.          }
  61.  
  62.          if (var2.indexOf(JDPJagg.CLOUDSCAPE) >= 0) {
  63.             var8 = "";
  64.             var3 = "varchar(" + Integer.toString(Integer.MAX_VALUE) + ")";
  65.          }
  66.  
  67.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPEvent")) {
  68.             String var1 = "CREATE TABLE JDPEvent (" + "JDPSystem char (5) ," + "EventName char (30) ," + "EventDesc char (70) ," + "EventType char (1) ," + "Frequency char (1) ," + "FreqInt " + var6 + " ," + "FreqDays char (7) ," + "FreqStDay " + var6 + " ," + "FreqWeek " + var6 + " ," + "FreqWeekDy " + var6 + " ," + "StartDate " + var4 + " ," + "StartTime " + var7 + " ," + "EndDate " + var4 + " ," + "EndTime " + var7 + " ," + "RepFreq " + var6 + " ," + "RepFreqUOM char (1) ," + "NextRunTim " + var7 + " ," + "Status char (1) ," + "ObjectType char (1) ," + "Object char (100) ," + "ObjectParm char (250) ," + "ObjectCons char (250) ," + "JobQueue char (30) , " + "JobPriorty " + var6 + " , " + "QuePriorty " + var6 + " , " + "JobHeld char (1) , " + "NotifyUser " + var6 + " ," + "NotifyVia char (1) ," + "NotifyOn char (1) ," + "LogEvent char (1)  ," + "ActualStrt " + var7 + "  ," + "ActualEnd " + var7 + " , " + "lastStatus char (1) " + ")";
  69.             this.user.loginMessage.setStatusMsg("Creating Events table...", 0);
  70.             if (this.runSQL(var1) == -1) {
  71.                return false;
  72.             }
  73.          }
  74.  
  75.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPEvtTy")) {
  76.             String var9 = "CREATE TABLE JDPEvtTy (" + "EventType char (1) ," + "TypeDesc char (70) )";
  77.             this.user.loginMessage.setStatusMsg("Creating Event Type table...", 0);
  78.             if (this.runSQL(var9) == -1) {
  79.                return false;
  80.             }
  81.  
  82.             var9 = "INSERT INTO JDPEvtTy VALUES('O', 'One Time')";
  83.             this.runSQL(var9);
  84.             var9 = "INSERT INTO JDPEvtTy VALUES('R', 'Recurring')";
  85.             this.runSQL(var9);
  86.             var9 = "INSERT INTO JDPEvtTy VALUES('D', 'On Demand')";
  87.             this.runSQL(var9);
  88.             var9 = "INSERT INTO JDPEvtTy VALUES('T', 'Triggered')";
  89.             this.runSQL(var9);
  90.             var9 = "INSERT INTO JDPEvtTy VALUES('A', 'Auto Start')";
  91.             this.runSQL(var9);
  92.          }
  93.  
  94.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPEvtLo")) {
  95.             this.user.loginMessage.setStatusMsg("Creating Event Log table...", 0);
  96.             String var15 = "CREATE TABLE JDPEvtLo\t(" + "EventId " + var7 + " ,\t" + "JDPSystem char (5) , " + "EventName char (30) ,\t" + "EvtSource char (30) ,\t" + "Category char (30) ,\t" + "UserName char (30) ,\t" + "Computer char (70) ,\t" + "QueueDate " + var4 + " ,\t" + "QueueTime " + var7 + " ,\t" + "JobQueue char (30) ,\t" + "SubSystem char (30) ,\t" + "StartDate " + var4 + " ," + "StartTime " + var7 + " ," + "EndDate " + var4 + " ," + "EndTime " + var7 + " ," + "ObjectType char (1) ," + "Object char (100) ," + "ObjectParm char (250) ," + "ObjectCons char (250) ," + "Notified " + var6 + " ,\t" + "NotifyVia char (1) ,\t" + "TotalTime " + var7 + " ,\t" + "FinalSts " + var6 + " ,\t" + "EventLog " + var3 + " ) ";
  97.             if (this.runSQL(var15) == -1) {
  98.                return false;
  99.             }
  100.          }
  101.  
  102.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPJobs")) {
  103.             this.user.loginMessage.setStatusMsg("Creating Jobs table...", 0);
  104.             String var16 = "CREATE TABLE JDPJobs\t(" + "JDPSystem char (5) , " + "StreamName char (30) ,\t" + "StreamDesc char (70) ,\t" + "LastStatus char (1) ,\t" + "LastEntry " + var6 + " ,\t" + "Restart char (1) ,\t" + "ActualStrt " + var4 + " ,\t" + "StartTime " + var7 + " , " + "ActualEnd " + var4 + " ,\t" + "EndTime " + var7 + " ) ";
  105.             if (this.runSQL(var16) == -1) {
  106.                return false;
  107.             }
  108.          }
  109.  
  110.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPJobEn")) {
  111.             this.user.loginMessage.setStatusMsg("Creating Job Entry table...", 0);
  112.             String var17 = "CREATE TABLE JDPJobEn\t(" + "JDPSystem char (5) , " + "StreamName char (30) ,\t" + "Entry " + var6 + " ,\t" + "ObjectType char (1) ,\t" + "Object char (100) ,\t" + "ObjectParm char (250) ,\t" + "ObjectCons char (250) ," + "Duration " + var7 + " ,\t" + "LastStatus char (1) , " + "StopIfFail char (1) , " + "LastJobLog " + var3 + ") ";
  113.             if (this.runSQL(var17) == -1) {
  114.                return false;
  115.             }
  116.          }
  117.  
  118.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPSubs")) {
  119.             this.user.loginMessage.setStatusMsg("Creating SubSystem table...", 0);
  120.             String var18 = "CREATE TABLE JDPSubs\t(" + "SubSysName char (30) , " + "SubSysDesc char (70) ,\t" + "maxJobs " + var6 + " ,\t" + "priority " + var6 + " ,\t" + "SubSysHeld char (1) " + ") ";
  121.             if (this.runSQL(var18) == -1) {
  122.                return false;
  123.             }
  124.  
  125.             var18 = "INSERT INTO JDPSubs VALUES('SIMMED', 'Immediate Execution Subsystem', " + "0, " + Integer.toString(5) + ", 'N')";
  126.             this.runSQL(var18);
  127.             var18 = "INSERT INTO JDPSubs VALUES('SBATCH', 'Batch Execution Subsystem', " + "3, " + Integer.toString(5) + ", 'N')";
  128.             this.runSQL(var18);
  129.             var18 = "INSERT INTO JDPSubs VALUES('SSYSTEM', 'System Subsystem', " + "10, " + Integer.toString(5) + ", 'N')";
  130.             this.runSQL(var18);
  131.          }
  132.  
  133.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPQueue")) {
  134.             this.user.loginMessage.setStatusMsg("Creating Job Queue table...", 0);
  135.             String var22 = "CREATE TABLE JDPQueue\t(" + "QueueName char (30) , " + "QueueDesc char (70) ,\t" + "SubSysName char (30) ,\t" + "QueueHeld char (1) " + ") ";
  136.             if (this.runSQL(var22) == -1) {
  137.                return false;
  138.             }
  139.  
  140.             var22 = "INSERT INTO JDPQueue VALUES('QIMMED', 'Immediate Execution Job Queue', " + "'SIMMED', 'N')";
  141.             this.runSQL(var22);
  142.             var22 = "INSERT INTO JDPQueue VALUES('QBATCH', 'Batch Execution Job Queue', " + "'SBATCH', 'N')";
  143.             this.runSQL(var22);
  144.             var22 = "INSERT INTO JDPQueue VALUES('QSYSTEM', 'System Job Queue', " + "'SSYSTEM', 'N')";
  145.             this.runSQL(var22);
  146.          }
  147.  
  148.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPJobA")) {
  149.             this.user.loginMessage.setStatusMsg("Creating Active Job table...", 0);
  150.             String var26 = "CREATE TABLE JDPJobA\t(" + "JDPSystem char (5) ," + "JobName char (30) , " + "JobNumber " + var7 + " , " + "EventType char (1) ,\t" + "JobOwner char (30) ,\t" + "QueueName char (30) ,\t" + "SubSysName char (30) ,\t" + "JobStatus " + var6 + " , " + "JobPriorty " + var6 + " ,\t" + "QuePriorty " + var6 + " , " + "ObjectType char (1) ,\t" + "Object char (100) ,\t" + "ObjectParm char (250) ,\t" + "ObjectCons char (250) ," + "NotifyUser " + var6 + " ," + "NotifyVia char (1) ," + "NotifyOn char (1) ," + "LogEvent char (1)  ," + "QueueDate " + var4 + " ,\t" + "QueueTime " + var7 + " ,\t" + "StartDate " + var4 + " ," + "StartTime " + var7 + " ," + "EndDate " + var4 + " " + var8 + ", " + "EndTime " + var7 + " ," + "JobLog " + var3 + " ) ";
  151.             if (this.runSQL(var26) == -1) {
  152.                return false;
  153.             }
  154.          }
  155.  
  156.          if (!JDPUtils.check4Table(this.user.jaggSQL, this.sourcetype, "JDPJobNo")) {
  157.             this.user.loginMessage.setStatusMsg("Creating Job Number table...", 0);
  158.             String var27 = "CREATE TABLE JDPJobNo\t(" + "NextJobNum " + var7 + ") ";
  159.             if (this.runSQL(var27) == -1) {
  160.                this.user.u.setSqlMessage(this.user.jaggSQL, var27);
  161.             }
  162.  
  163.             var27 = "INSERT INTO JDPJobNo VALUES(0)";
  164.             this.runSQL(var27);
  165.             this.createIndexes();
  166.          }
  167.  
  168.          return true;
  169.       }
  170.    }
  171.  
  172.    int runSQL(String var1) {
  173.       Vector var2 = new Vector();
  174.       int var3 = this.user.jaggSQL.execSQL(var1, var2);
  175.       if (var3 == -1) {
  176.          this.user.u.setSqlMessage(this.user.jaggSQL, var1);
  177.       }
  178.  
  179.       return var3;
  180.    }
  181.  
  182.    public JDPSetupSvr(JDPUser var1) {
  183.       this.user = var1;
  184.       if (var1.JDPSystem.equals("01001")) {
  185.          this.createServerTables();
  186.          this.startEnterpriseServer();
  187.          this.createPurgeEvent();
  188.       }
  189.  
  190.       this.createMenuOptions();
  191.    }
  192.  
  193.    void createIndexes() {
  194.       this.user.loginMessage.setStatusMsg("Creating Indexes...", 0);
  195.       String var1 = "CREATE UNIQUE INDEX JDPEvtIx ON JDPEvent " + "(JDPSystem, EventName)";
  196.       this.runSQL(var1);
  197.       var1 = "CREATE UNIQUE INDEX JDPEvtTx ON JDPEvtTy " + "(EventType)";
  198.       this.runSQL(var1);
  199.       var1 = "CREATE UNIQUE INDEX JDPEvtLx ON JDPEvtLo " + "(EventId)";
  200.       this.runSQL(var1);
  201.       var1 = "CREATE UNIQUE INDEX JDPJobsx ON JDPJobs " + "(JDPSystem,StreamName)";
  202.       this.runSQL(var1);
  203.       var1 = "CREATE UNIQUE INDEX JDPJobEx ON JDPJobEn " + "(JDPSystem,StreamName,Entry)";
  204.       this.runSQL(var1);
  205.       var1 = "CREATE UNIQUE INDEX JDPSubsx ON JDPSubs " + "(SubSysName)";
  206.       this.runSQL(var1);
  207.       var1 = "CREATE UNIQUE INDEX JDPQueux ON JDPQueue " + "(QueueName)";
  208.       this.runSQL(var1);
  209.       var1 = "CREATE UNIQUE INDEX JDPJobAx ON JDPJobA " + "(JDPSystem,JobName,JobNumber)";
  210.       this.runSQL(var1);
  211.       var1 = "CREATE UNIQUE INDEX JDPJobA1 ON JDPJobA " + "(JobNumber)";
  212.       this.runSQL(var1);
  213.    }
  214.  
  215.    void createMenuOptions() {
  216.       this.user.loginMessage.setStatusMsg("Creating Enterprise Server Menu...", 0);
  217.       this.createMenuOption("Main", 19, "M", "Enterprise Server", "JDPServer", "", "ADMIN");
  218.       this.createMenuOption("JDPServer", 0, "P", "Help", "JDPHelpBrowser", "Docs/jdpentsvrmnu.htm", "*ALL");
  219.       this.createMenuOption("JDPServer", 1, "P", "Server Manager", "JDPServerConsole", "", "*ALL");
  220.       this.createMenuOption("JDPServer", 2, "P", "Job Log Inquiry", "JDPJobLogInquiry", "", "*ALL");
  221.       this.createMenuOption("JDPServer", 3, "P", "Event Maintenance", "JDPEventMaintenance", "", "*ALL");
  222.       this.createMenuOption("JDPServer", 4, "P", "Job Stream Maintenance", "JDPJobStreamMaint", "", "*ALL");
  223.    }
  224.  
  225.    void createMenuOption(String var1, int var2, String var3, String var4, String var5, String var6, String var7) {
  226.       String var8 = Integer.toString(var2);
  227.       String var9 = "SELECT menuname FROM JDPMenu WHERE JDPSystem = '" + this.user.JDPSystem + "' AND menuname = '" + var1 + "' AND menunum = " + var8;
  228.       if (this.runSQL(var9) < 1) {
  229.          var9 = "INSERT INTO JDPMenu (JDPSystem,menuname,menunum,menutype,menuobject,menuparm,menudesc,menustatus,menutxtclr, " + "menutabclr,menuauth1,menuauth2,menuauth3,menuauth4,menuauth5,menulvl1, " + "menulvl2,menulvl3,menulvl4,menulvl5) " + "VALUES('" + this.user.JDPSystem + "','" + var1 + "'," + var8 + "," + "'" + var3 + "','" + var5 + "','" + var6 + "', " + "'" + var4 + "'," + "'A'," + "'Black', " + "'LightGray'," + "'" + var7 + "','', " + "'','', " + "'',0,0,0,0,0)";
  230.          this.runSQL(var9);
  231.       }
  232.  
  233.    }
  234.  
  235.    public void createPurgeEvent() {
  236.       this.user.loginMessage.setStatusMsg("Creating default jobs...", 0);
  237.       String var1 = "SELECT EVENTNAME " + "FROM JDPEVENT " + "WHERE JDPSYSTEM = '01001' " + "AND OBJECTTYPE = 'C' " + "AND OBJECT = 'JDPPurgeJobLog' ";
  238.       int var2 = this.runSQL(var1);
  239.       if (var2 == 0) {
  240.          var1 = "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 ('01001', " + "'Purge Job Logs', " + "'Purge Job Logs older than 10 days', " + "'R', " + "'D', " + "1, " + "'NNNNNNN', " + "1, " + "0, " + "0, " + JDPDate.formatForSql(new Date(), this.sourcetype) + ", " + "32400000, " + JDPDate.formatForSql(new Date(0L), this.sourcetype) + ", " + "0, " + "1, " + "'H', " + "0, " + "'Y', " + "'C', " + "'JDPPurgeJobLog', " + "'JDPSubsystemMgr,JDPJob,10', " + "'(JDPSubsystemMgr,JDPJob,int)', " + "'QBATCH', " + "5, " + "5, " + "'N', " + "-1, " + "'P', " + "'F', " + "'B', " + "0, 0, ' ')";
  241.          this.runSQL(var1);
  242.       }
  243.  
  244.    }
  245. }
  246.