home *** CD-ROM | disk | FTP | other *** search
- package lotus.domino.servlet;
-
- import java.util.Hashtable;
-
- public class NativeStub {
- public static final int HTTP_NOACTION = 0;
- public static final int HTTP_CONTINUE = 100;
- public static final int HTTP_SWITCHING_PROTOCOLS = 101;
- public static final int HTTP_OK = 200;
- public static final int HTTP_CREATED = 201;
- public static final int HTTP_ACCEPTED = 202;
- public static final int HTTP_NON_AUTHORITATIVE = 203;
- public static final int HTTP_NO_CONTENT = 204;
- public static final int HTTP_RESET_CONTENT = 205;
- public static final int HTTP_PARTIAL_CONENT = 206;
- public static final int HTTP_MULTIPLE_CHOICES = 300;
- public static final int HTTP_MOVED_PERMANENTLY = 301;
- public static final int HTTP_MOVED_TEMPORARILY = 302;
- public static final int HTTP_SEE_OTHER = 303;
- public static final int HTTP_NOT_MODIFIED = 304;
- public static final int HTTP_USE_PROXY = 305;
- public static final int HTTP_TEMPORARY_REDIRECT = 307;
- public static final int HTTP_BAD_REQUEST = 400;
- public static final int HTTP_UNAUTHORIZED = 401;
- public static final int HTTP_FORBIDDEN = 403;
- public static final int HTTP_NOT_FOUND = 404;
- public static final int HTTP_METHOD_NOT_ALLOWED = 405;
- public static final int HTTP_NOT_ACCEPTABLE = 406;
- public static final int HTTP_PROXY_UNAUTHORIZED = 407;
- public static final int HTTP_REQUEST_TIMEOUT = 408;
- public static final int HTTP_CONFLICT = 409;
- public static final int HTTP_GONE = 410;
- public static final int HTTP_LENGTH_REQUIRED = 411;
- public static final int HTTP_PRECONDITION_FAILED = 412;
- public static final int HTTP_ENTITY_TOO_LARGE = 413;
- public static final int HTTP_URI_TOO_LONG = 414;
- public static final int HTTP_BAD_MEDIA_TYPE = 415;
- public static final int HTTP_SERVER_ERROR = 500;
- public static final int HTTP_NOT_IMPLEMENTED = 501;
- public static final int HTTP_BAD_GATEWAY = 502;
- public static final int HTTP_SERVICE_UNAVAILABLE = 503;
- public static final int HTTP_GATEWAY_TIMEOUT = 504;
- public static final int HTTP_BAD_VERSION = 505;
- public static final int HTTPD_UNSUPPORTED = -1;
- public static final int HTTPD_SUCCESS = 0;
- public static final int HTTPD_FAILURE = 1;
- public static final int HTTPD_INTERNAL_ERROR = 2;
- public static final int HTTPD_PARAMETER_ERROR = 3;
- public static final int HTTPD_STATE_CHECK = 4;
- public static final int HTTPD_READ_ONLY = 5;
- public static final int HTTPD_BUFFER_TOO_SMALL = 6;
- public static final int HTTPD_AUTHENTICATE_FAILED = 7;
- public static final int HTTPD_EOF = 8;
- public static final int HTTPD_ABORT_REQUEST = 9;
- public static final int HTTPD_REQUEST_SERVICED = 10;
- public static final int HTTPD_RESPONSE_ALREADY_COMPLETED = 11;
- public static final int HTTPD_MISSING_HANDLE = 25;
- public static final int HTTPD_EXPIRED_HANDLE = 26;
- public static Hashtable i_attributeTable;
-
- public static String getAttribute(String var0) {
- return (String)i_attributeTable.get(var0);
- }
-
- public static Hashtable getAttributeTable() {
- return i_attributeTable;
- }
-
- public static void setAttribute(String var0, String var1) {
- i_attributeTable.put(var0, var1);
- }
-
- public static void write(byte[] var0) throws NativeStubException {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- int var1 = HTTPD_write(var0, var0.length);
- if (var1 != 0) {
- throw new NativeStubException(var1);
- }
- }
- }
-
- public static void write(String var0) throws NativeStubException {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- write(var0.getBytes());
- }
- }
-
- public static String extract(String var0) throws NativeStubException {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- int var1 = 6;
- int var2 = 0;
- byte[] var3 = new byte[0];
- new String();
-
- int var5;
- for(var5 = 0; var1 == 6; var1 = HTTPD_extract(var0, var3, var5)) {
- var5 += 512;
- var3 = new byte[var5];
- }
-
- if (var1 != 0) {
- if (var1 == 3) {
- return null;
- } else {
- throw new NativeStubException(var1);
- }
- } else {
- for(int var6 = 0; var6 < var5 && (char)var3[var6] != 0; ++var6) {
- ++var2;
- }
-
- String var4 = new String(var3, 0, var2);
- return var4;
- }
- }
- }
-
- public static void set(String var0, String var1) throws NativeStubException {
- if (var0 != null && var1 != null) {
- int var2 = HTTPD_set(var0, var1);
- if (var2 != 0) {
- throw new NativeStubException(var2);
- }
- } else {
- throw new NullPointerException();
- }
- }
-
- public static int log_error(String var0) {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- return HTTPD_log_error(var0);
- }
- }
-
- public static int log_trace(String var0) {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- return HTTPD_log_trace(var0);
- }
- }
-
- public static byte[] read() throws NativeStubException {
- String var0 = extract("CONTENT_LENGTH");
- if (var0 == null) {
- return null;
- } else {
- int var1 = Integer.parseInt(var0);
- byte[] var2 = new byte[var1];
- int var3 = HTTPD_read(var2, var1);
- if (var3 == 4) {
- throw new NativeStubException(var3);
- } else {
- return var2;
- }
- }
- }
-
- public static String reverse_translate(String var0) throws NativeStubException {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- int var1 = 6;
- int var2 = 0;
- byte[] var3 = new byte[0];
- new String();
-
- int var5;
- for(var5 = 0; var1 == 6; var1 = HTTPD_reverse_translate(var0, var3, var5)) {
- var5 += 512;
- var3 = new byte[var5];
- }
-
- if (var1 != 0) {
- if (var1 == 1) {
- return null;
- } else {
- throw new NativeStubException(var1);
- }
- } else {
- for(int var6 = 0; var6 < var5 && (char)var3[var6] != 0; ++var6) {
- ++var2;
- }
-
- String var4 = new String(var3, 0, var2);
- return var4;
- }
- }
- }
-
- public static String translate(String var0) throws NativeStubException {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- int var1 = 6;
- int var2 = 0;
- byte[] var3 = new byte[0];
- new String();
-
- int var5;
- for(var5 = 0; var1 == 6; var1 = HTTPD_translate(var0, var3, var5)) {
- var5 += 512;
- var3 = new byte[var5];
- }
-
- if (var1 != 0) {
- if (var1 == 1) {
- return null;
- } else {
- throw new NativeStubException(var1);
- }
- } else {
- for(int var6 = 0; var6 < var5 && (char)var3[var6] != 0; ++var6) {
- ++var2;
- }
-
- String var4 = new String(var3, 0, var2);
- return var4;
- }
- }
- }
-
- public static String attributes(String var0) throws NativeStubException {
- if (var0 == null) {
- throw new NullPointerException();
- } else {
- int var1 = 6;
- int var2 = 0;
- byte[] var3 = new byte[0];
- new String();
-
- int var5;
- for(var5 = 0; var1 == 6; var1 = HTTPD_attributes(var0, var3, var5)) {
- var5 += 512;
- var3 = new byte[var5];
- }
-
- if (var1 != 0) {
- if (var1 == 1) {
- return null;
- } else {
- throw new NativeStubException(var1);
- }
- } else {
- for(int var6 = 0; var6 < var5 && (char)var3[var6] != 0; ++var6) {
- ++var2;
- }
-
- String var4 = new String(var3, 0, var2);
- return var4;
- }
- }
- }
-
- private static native int HTTPD_write(byte[] var0, int var1);
-
- private static native int HTTPD_extract(String var0, byte[] var1, int var2);
-
- private static native int HTTPD_set(String var0, String var1);
-
- private static native int HTTPD_log_error(String var0);
-
- private static native int HTTPD_log_trace(String var0);
-
- private static native int HTTPD_read(byte[] var0, int var1);
-
- private static native int HTTPD_reverse_translate(String var0, byte[] var1, int var2);
-
- private static native int HTTPD_translate(String var0, byte[] var1, int var2);
-
- private static native int HTTPD_attributes(String var0, byte[] var1, int var2);
-
- static {
- String var0 = System.getProperty("os.name");
- String var1 = System.getProperty("os.arch");
- var0 = var0.toUpperCase();
- var1 = var1.toUpperCase();
-
- try {
- String var2 = null;
- String var3 = "";
- i_attributeTable = new Hashtable();
- if (!var0.equals("WINDOWS NT") && !var0.equals("WINDOWS 95")) {
- if (var0.equals("WINDOWS")) {
- var2 = "_";
- } else if (var0.equals("OS/2")) {
- var2 = "i";
- } else if (var0.equals("AIX")) {
- var2 = "";
- var3 = "_r";
- } else if (var0.equals("SOLARIS")) {
- var2 = "";
- } else if (var0.equals("HPUX")) {
- var2 = "";
- } else {
- var2 = "";
- }
- } else if (var1.equals("X86")) {
- var2 = "n";
- } else if (var1.equals("ALPHA")) {
- var2 = "a";
- }
-
- if (var2 == null) {
- System.err.println("Could not load dll for " + var0);
- throw new NativeStubException(2);
- } else {
- String var4 = var2 + "jvwrap" + var3;
- System.loadLibrary(var4);
- }
- } catch (Exception var5) {
- ((Throwable)var5).printStackTrace();
- }
- }
- }
-