home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / sun / net / www / protocol / http / BasicAuthentication.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.9 KB  |  73 lines

  1. package sun.net.www.protocol.http;
  2.  
  3. import java.net.PasswordAuthentication;
  4. import java.net.URL;
  5. import java.util.Arrays;
  6. import sun.misc.BASE64Encoder;
  7.  
  8. class BasicAuthentication extends AuthenticationInfo {
  9.    String auth;
  10.  
  11.    public BasicAuthentication(boolean var1, String var2, int var3, String var4, PasswordAuthentication var5) {
  12.       super((char)(var1 ? 'p' : 's'), var2, var3, var4);
  13.       String var6 = var5.getUserName() + ":";
  14.       byte[] var7 = var6.getBytes();
  15.       char[] var8 = var5.getPassword();
  16.       byte[] var9 = new byte[var8.length];
  17.  
  18.       for(int var10 = 0; var10 < var8.length; ++var10) {
  19.          var9[var10] = (byte)var8[var10];
  20.       }
  21.  
  22.       byte[] var11 = new byte[var7.length + var9.length];
  23.       System.arraycopy(var7, 0, var11, 0, var7.length);
  24.       System.arraycopy(var9, 0, var11, var7.length, var9.length);
  25.       this.auth = "Basic " + (new BASE64Encoder()).encode(var11);
  26.       Arrays.fill(var8, ' ');
  27.       Arrays.fill(var9, (byte)0);
  28.       Arrays.fill(var11, (byte)0);
  29.    }
  30.  
  31.    public BasicAuthentication(boolean var1, String var2, int var3, String var4, String var5) {
  32.       super((char)(var1 ? 'p' : 's'), var2, var3, var4);
  33.       this.auth = "Basic " + var5;
  34.    }
  35.  
  36.    public BasicAuthentication(boolean var1, URL var2, String var3, PasswordAuthentication var4) {
  37.       super((char)(var1 ? 'p' : 's'), var2, var3);
  38.       String var5 = var4.getUserName() + ":";
  39.       byte[] var6 = var5.getBytes();
  40.       char[] var7 = var4.getPassword();
  41.       byte[] var8 = new byte[var7.length];
  42.  
  43.       for(int var9 = 0; var9 < var7.length; ++var9) {
  44.          var8[var9] = (byte)var7[var9];
  45.       }
  46.  
  47.       byte[] var10 = new byte[var6.length + var8.length];
  48.       System.arraycopy(var6, 0, var10, 0, var6.length);
  49.       System.arraycopy(var8, 0, var10, var6.length, var8.length);
  50.       this.auth = "Basic " + (new BASE64Encoder()).encode(var10);
  51.       Arrays.fill(var7, ' ');
  52.       Arrays.fill(var8, (byte)0);
  53.       Arrays.fill(var10, (byte)0);
  54.    }
  55.  
  56.    public BasicAuthentication(boolean var1, URL var2, String var3, String var4) {
  57.       super((char)(var1 ? 'p' : 's'), var2, var3);
  58.       this.auth = "Basic " + var4;
  59.    }
  60.  
  61.    boolean supportsPreemptiveAuthorization() {
  62.       return true;
  63.    }
  64.  
  65.    String getHeaderName() {
  66.       return super.type == 's' ? "Authorization" : "Proxy-authorization";
  67.    }
  68.  
  69.    String getHeaderValue() {
  70.       return this.auth;
  71.    }
  72. }
  73.