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

  1. import java.sql.Connection;
  2. import java.util.Date;
  3. import java.util.Vector;
  4.  
  5. public class JDPJaggCxnMgr extends Thread {
  6.    JDPSubsystemMgr manager;
  7.    JaggServer server;
  8.    JDPJagg jaggSQL;
  9.    Vector requests;
  10.  
  11.    public String getJdbcConnections() {
  12.       String var1 = " " + this.manager.jaggSQL.getSEP();
  13.       String var2 = Long.toString((new Date()).getTime());
  14.       StringBuffer var3 = new StringBuffer();
  15.  
  16.       try {
  17.          for(int var4 = 0; var4 < this.manager.server.dbConnection.size(); ++var4) {
  18.             Vector var5 = (Vector)this.manager.server.dbConnection.elementAt(var4);
  19.             var3.append((String)var5.elementAt(0));
  20.             var3.append(var1);
  21.             var3.append((String)var5.elementAt(1));
  22.             var3.append(var1);
  23.             var3.append((String)var5.elementAt(3));
  24.             var3.append(var1);
  25.             var3.append((String)var5.elementAt(4));
  26.             var3.append(var1);
  27.             var3.append(((Long)var5.elementAt(5)).toString());
  28.             var3.append(var1);
  29.             var3.append(((Long)var5.elementAt(6)).toString());
  30.             var3.append(var1);
  31.             var3.append(var2);
  32.             var3.append(var1);
  33.          }
  34.       } catch (Exception var7) {
  35.          ((Throwable)var7).printStackTrace();
  36.       }
  37.  
  38.       return var3.toString();
  39.    }
  40.  
  41.    public synchronized void registerRequest(JaggServerCxn var1) {
  42.       this.requests.addElement(var1);
  43.    }
  44.  
  45.    public synchronized Vector getJdbcConnectioCxn(long var1) {
  46.       for(int var3 = 0; var3 < this.server.dbConnection.size(); ++var3) {
  47.          Vector var4 = (Vector)this.server.dbConnection.elementAt(var3);
  48.          long var5 = (Long)var4.elementAt(6);
  49.          if (var5 == var1) {
  50.             return var4;
  51.          }
  52.       }
  53.  
  54.       return null;
  55.    }
  56.  
  57.    public String killRequest(long var1) {
  58.       JaggServerCxn var3 = this.getJaggServerCxn(var1);
  59.       if (var3 != null) {
  60.          try {
  61.             ((Thread)var3).stop(new Exception("ThreadKilled"));
  62.             return "Request successfully killed.";
  63.          } catch (Exception var6) {
  64.             ((Throwable)var6).printStackTrace();
  65.          }
  66.       }
  67.  
  68.       return "Request is no longer active.";
  69.    }
  70.  
  71.    public String setRequestPriority(long var1, int var3) {
  72.       JaggServerCxn var4 = this.getJaggServerCxn(var1);
  73.       if (var4 != null) {
  74.          try {
  75.             ((Thread)var4).setPriority(var3);
  76.             return "Priority successfully changed.";
  77.          } catch (Exception var7) {
  78.             ((Throwable)var7).printStackTrace();
  79.          }
  80.       }
  81.  
  82.       return "Request is no longer active.";
  83.    }
  84.  
  85.    public String closeConnection(long var1) {
  86.       Vector var3 = this.getJdbcConnectioCxn(var1);
  87.       if (var3 != null) {
  88.          try {
  89.             String var4 = (String)var3.elementAt(1);
  90.             if (var4.equals("Inactive")) {
  91.                Connection var5 = (Connection)var3.elementAt(2);
  92.  
  93.                try {
  94.                   var5.close();
  95.                   this.server.dbConnection.removeElement(var3);
  96.                   Object var9 = null;
  97.                   Object var10 = null;
  98.                } catch (Exception var7) {
  99.                }
  100.  
  101.                return "Connection closed.";
  102.             }
  103.  
  104.             return "Cannot close an Active connection.";
  105.          } catch (Exception var8) {
  106.             ((Throwable)var8).printStackTrace();
  107.          }
  108.       }
  109.  
  110.       return "Connection is already closed.";
  111.    }
  112.  
  113.    public synchronized void deRegisterRequest(JaggServerCxn var1) {
  114.       this.requests.removeElement(var1);
  115.    }
  116.  
  117.    public JDPJaggCxnMgr(JDPSubsystemMgr var1, JaggServer var2) {
  118.       super(var1.mainThreadGroup, "JDPJaggUserMgr");
  119.       this.manager = var1;
  120.       this.server = var2;
  121.       this.requests = new Vector();
  122.    }
  123.  
  124.    public synchronized JaggServerCxn getJaggServerCxn(long var1) {
  125.       for(int var3 = 0; var3 < this.requests.size(); ++var3) {
  126.          JaggServerCxn var4 = (JaggServerCxn)this.requests.elementAt(var3);
  127.          if (var4.requestNum == var1) {
  128.             return var4;
  129.          }
  130.       }
  131.  
  132.       return null;
  133.    }
  134.  
  135.    public String setRequestHeld(long var1, boolean var3) {
  136.       JaggServerCxn var4 = this.getJaggServerCxn(var1);
  137.       if (var4 != null) {
  138.          try {
  139.             if (var3) {
  140.                var4.suspended = true;
  141.                ((Thread)var4).suspend();
  142.                return "Request successfully held.";
  143.             }
  144.  
  145.             var4.suspended = false;
  146.             ((Thread)var4).resume();
  147.             return "Request successfully resumed.";
  148.          } catch (Exception var7) {
  149.             ((Throwable)var7).printStackTrace();
  150.          }
  151.       }
  152.  
  153.       return "Request is no longer active.";
  154.    }
  155.  
  156.    public String getConnections() {
  157.       String var1 = " " + this.manager.jaggSQL.getSEP();
  158.       String var2 = Long.toString((new Date()).getTime());
  159.       StringBuffer var3 = new StringBuffer();
  160.  
  161.       try {
  162.          if (this.requests != null) {
  163.             for(int var4 = 0; var4 < this.requests.size(); ++var4) {
  164.                JaggServerCxn var5 = (JaggServerCxn)this.requests.elementAt(var4);
  165.                if (var5.FCTN.equals("")) {
  166.                   var3.append("SQL");
  167.                } else {
  168.                   var3.append(var5.FCTN);
  169.                }
  170.  
  171.                var3.append(var1);
  172.                if (var5.FCTN.equals("Invoke")) {
  173.                   if (var5.jobName != null) {
  174.                      var3.append(var5.jobName + ":");
  175.                   }
  176.  
  177.                   if (var5.jobNumber != null) {
  178.                      var3.append(var5.jobNumber + ":");
  179.                   }
  180.  
  181.                   if (var5.objectName != null) {
  182.                      var3.append(var5.objectName + "." + var5.methodName);
  183.                   }
  184.                } else if (!var5.FCTN.equals("") && !var5.FCTN.equals("System")) {
  185.                   var3.append(var5.FCTNP);
  186.                } else {
  187.                   var3.append(var5.SQL);
  188.                }
  189.  
  190.                var3.append(var1);
  191.                var3.append(var5.jdbcDriver);
  192.                var3.append(var1);
  193.                var3.append(var5.jdbcPrefix);
  194.                var3.append(var1);
  195.                var3.append(var5.jdbcSuffix);
  196.                var3.append(var1);
  197.                var3.append(var5.UID);
  198.                var3.append(var1);
  199.                var3.append(var5.PWD);
  200.                var3.append(var1);
  201.                var3.append(var5.USER);
  202.                var3.append(var1);
  203.                var3.append(var5.SYS);
  204.                var3.append(var1);
  205.                var3.append(var5.TOUT);
  206.                var3.append(var1);
  207.                var3.append(var5.MRW);
  208.                var3.append(var1);
  209.                var3.append(var5.CSTR);
  210.                var3.append(var1);
  211.                if (var5.startDate != null) {
  212.                   var3.append(Long.toString(var5.startDate.getTime()));
  213.                } else {
  214.                   var3.append("0");
  215.                }
  216.  
  217.                var3.append(var1);
  218.  
  219.                try {
  220.                   if (var5.thisSocket != null && var5.thisSocket.getInetAddress() != null && var5.thisSocket.getInetAddress().getHostAddress() != null) {
  221.                      var3.append(var5.thisSocket.getInetAddress().getHostAddress());
  222.                      var3.append(var1);
  223.                      var3.append(var5.thisSocket.getInetAddress().getHostName());
  224.                   } else {
  225.                      var3.append("Unknown");
  226.                      var3.append(var1);
  227.                      var3.append("Unknown");
  228.                   }
  229.                } catch (Exception var7) {
  230.                   var3.append("Unknown");
  231.                   var3.append(var1);
  232.                   var3.append("Unknown");
  233.                }
  234.  
  235.                var3.append(var1);
  236.                var3.append(Long.toString(var5.requestNum));
  237.                var3.append(var1);
  238.                var3.append(Integer.toString(((Thread)var5).getPriority()));
  239.                var3.append(var1);
  240.                var3.append(var5.suspended ? "Y" : "N");
  241.                var3.append(var1);
  242.                var3.append(Long.toString(var5.thisJdbcConnectionNum));
  243.                var3.append(var1);
  244.                var3.append(var2);
  245.                var3.append(var1);
  246.             }
  247.          }
  248.       } catch (Exception var8) {
  249.          ((Throwable)var8).printStackTrace();
  250.       }
  251.  
  252.       return var3.toString();
  253.    }
  254.  
  255.    public void run() {
  256.       while(!this.manager.shutdownRequested) {
  257.          try {
  258.             Thread.sleep(10000L);
  259.          } catch (Exception var1) {
  260.          }
  261.       }
  262.  
  263.    }
  264. }
  265.