home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Event;
- import java.io.File;
- import java.net.ServerSocket;
- import java.net.Socket;
- import java.sql.Connection;
- import java.util.Date;
- import java.util.Vector;
-
- class JaggServer {
- static final int DISABLED = 0;
- static final int ENTRY_LEVEL = 1;
- static final int STANDARD = 2;
- static final int HIGH_END = 3;
- int enterpriseServerLevel = 3;
- int enterpriseJobsAllowed = 100;
- int purgeJobNameAfterDays = 7;
- int UnixTrialDays = 90;
- static final boolean localDeveloperOnly = false;
- static final int DEVELOPERS = 1;
- static final String JAGG_LICENSE0 = "";
- static final int JAGG_LICENSEDUSER0 = 0;
- static final String JAGG_LICENSE1 = "";
- static final int JAGG_LICENSEDUSER1 = 0;
- static final String JAGG_LICENSE2 = "";
- static final int JAGG_LICENSEDUSER2 = 0;
- static final String JAGG_LICENSE3 = "";
- static final int JAGG_LICENSEDUSER3 = 0;
- static final String JAGG_LICENSE4 = "";
- static final int JAGG_LICENSEDUSER4 = 0;
- static final String JAGG_LICENSE5 = "";
- static final int JAGG_LICENSEDUSER5 = 0;
- static final String JAGG_LICENSE6 = "";
- static final int JAGG_LICENSEDUSER6 = 0;
- static final String JAGG_LICENSE7 = "";
- static final int JAGG_LICENSEDUSER7 = 0;
- static final String JAGG_LICENSE8 = "";
- static final int JAGG_LICENSEDUSER8 = 0;
- static final String JAGG_LICENSE9 = "bulletproof.com";
- static final int JAGG_LICENSEDUSER9 = 50;
- private static final String version = "3.0";
- static final boolean JDP = true;
- static final boolean JAGG_REL_TRIAL = true;
- static final boolean JAGG_REL_INTERNAL = false;
- static final boolean JAGG_REL_EXTERNAL = false;
- private static final int DEFAULTPORT = 4899;
- static String DEFAULTJDBC = "sun.jdbc.odbc.JdbcOdbcDriver";
- static String DEFAULTCXN = "jdbc:odbc:";
- Vector dbConnection;
- private ServerSocket serverSocket;
- private int port;
- String connectionString;
- Vector ndsInstances = new Vector();
- String NDSusername = "";
- String NDSpassword = "";
- private static long closeAfterSeconds = 600L;
- // $FF: renamed from: K java.lang.String
- String field_0 = "";
- long nextRequestNum;
- long nextConnectionNum;
- JDPSubsystemMgr manager;
- static JDesignerPro jdesignerpro;
- Vector cusips;
- Vector cusipData;
- int lastDate;
-
- public JaggServer(int var1, String var2, String var3) {
- this.port = var1;
- this.connectionString = var3;
- this.dbConnection = new Vector();
- JDPJagg.jaggServer = this;
- JDesignerPro.serverSeparator = File.separator;
- if (System.getProperty("java.vendor").startsWith("Microsoft") && var2.equals("sun.jdbc.odbc.JdbcOdbcDriver")) {
- var2 = "com.ms.jdbc.odbc.JdbcOdbcDriver";
- DEFAULTJDBC = var2;
- }
-
- this.field_0 = "JDP09betaERW9Q" + "3.0";
-
- try {
- this.serverSocket = new ServerSocket(var1);
- System.out.println("Enterprise Server running on port:" + Integer.toString(var1) + " (Press Ctrl-C to close)");
- } catch (Exception var8) {
- System.err.println(var8);
- if (jdesignerpro == null) {
- this.delay(20000);
- System.exit(1);
- } else {
- System.out.println("Enterprise Server running locally.");
- }
- }
-
- this.manager = new JDPSubsystemMgr(this);
- int var4 = 0;
-
- while(this.serverSocket != null) {
- try {
- Socket var5 = this.serverSocket.accept();
- if (var5 != null) {
- new JaggServerCxn(this, var5, (long)(this.nextRequestNum++));
- if (var4++ > 50) {
- var4 = 0;
- System.gc();
- this.closeUnusedConnections();
- }
- }
- } catch (Exception var7) {
- this.logException(var7);
- }
- }
-
- }
-
- void closeUnusedConnections() {
- Date var1 = new Date();
- long var2 = var1.getTime() / 1000L;
-
- for(int var4 = 0; var4 < this.dbConnection.size(); ++var4) {
- Vector var5 = (Vector)this.dbConnection.elementAt(var4);
- long var6 = Long.parseLong((String)var5.elementAt(3));
- String var8 = (String)var5.elementAt(1);
- if (!var8.equals("Active") && (var2 - var6 > closeAfterSeconds || var8.equals("Close"))) {
- Connection var9 = (Connection)var5.elementAt(2);
-
- try {
- var9.close();
- } catch (Exception var12) {
- }
-
- String var10 = (String)var5.elementAt(0);
- int var11 = var10.indexOf("DSN=");
- if (var11 > 0) {
- var10 = var10.substring(0, var11);
- }
-
- var11 = var10.indexOf(";");
- if (var11 > 0) {
- var10 = var10.substring(0, var11);
- }
-
- var11 = var10.indexOf("UID");
- if (var11 > 0) {
- var10 = var10.substring(0, var11);
- }
-
- if (var8.equals("Close")) {
- this.println("Closed connection to " + var10 + " due to previous error");
- } else {
- this.println("Closed connection to " + var10 + " due to inactivity");
- }
-
- this.dbConnection.removeElement(var5);
- Object var13 = null;
- Object var14 = null;
- }
- }
-
- }
-
- boolean checkKey(JaggServerCxn var1) {
- try {
- if (this.field_0.equals(var1.K)) {
- return true;
- }
-
- System.out.println("ACCESS_VIOLATION:" + var1.thisSocket.getInetAddress());
- var1.writeLn("JAGG_ERROR:ACCESS_VIOLATION");
- var1.writeLn(JaggServerCxn.NL);
- var1.writeLn(JaggServerCxn.EOT);
- } catch (Exception var4) {
- ((Throwable)var4).printStackTrace();
- }
-
- return false;
- }
-
- int checkLicense(JaggServerCxn var1) {
- byte var2 = 0;
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("".length() > 0 && var1.SERV.indexOf("") >= 0) {
- var2 = (boolean)0;
- }
-
- if ("bulletproof.com".length() > 0 && var1.SERV.indexOf("bulletproof.com") >= 0) {
- var2 = (boolean)50;
- }
-
- var2 = 0;
- return var2;
- }
-
- public static void main(String[] var0) {
- String var2 = DEFAULTJDBC;
- String var3 = DEFAULTCXN;
- if (var0.length <= 0 || !var0[0].equals("-h") && !var0[0].equals("/?") && !var0[0].equals("-help")) {
- int var1;
- try {
- var1 = Integer.parseInt(var0[0], 10);
-
- try {
- closeAfterSeconds = Long.parseLong(var0[1], 10);
- if (var0.length > 2) {
- var2 = var0[2];
- DEFAULTJDBC = var2;
- }
-
- if (var0.length > 3) {
- var3 = var0[3];
- DEFAULTCXN = var3;
- }
- } catch (Exception var4) {
- closeAfterSeconds = 600L;
- if (var0.length > 1) {
- var2 = var0[1];
- }
-
- if (var0.length > 2) {
- var3 = var0[2];
- }
- }
- } catch (Exception var5) {
- if (var0.length > 0) {
- var2 = var0[0];
- }
-
- if (var0.length > 1) {
- var3 = var0[1];
- }
-
- var1 = 4899;
- }
-
- new JaggServer(var1, var2, var3);
- } else {
- displayHelp();
- }
- }
-
- static void displayHelp() {
- System.out.println("JaggServer Usage:");
- System.out.println("JaggServer <serverPort> <dropUnusedCxnAfter>");
- }
-
- void logException(Exception var1) {
- if (JaggServerCxn.jaggServerJob != null) {
- JaggServerCxn.jaggServerJob.logException(var1);
- } else {
- ((Throwable)var1).printStackTrace();
- }
- }
-
- void delay(int var1) {
- try {
- Thread.sleep((long)var1);
- } catch (Exception var2) {
- }
- }
-
- int checkDevelopers(JaggServerCxn var1) {
- byte var2 = 0;
- var2 = 1;
- return var2;
- }
-
- public boolean handleEvent(Event var1) {
- switch (var1.id) {
- case 201:
- System.exit(0);
- return true;
- default:
- return false;
- }
- }
-
- void println(Object var1) {
- if (JaggServerCxn.jaggServerJob != null) {
- JaggServerCxn.jaggServerJob.appendJobLog(var1.toString());
- } else {
- System.out.println(var1);
- }
- }
- }
-