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 / java / io / ObjectStreamClass$2.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  2.1 KB  |  65 lines

  1. package java.io;
  2.  
  3. import java.lang.reflect.AccessibleObject;
  4. import java.lang.reflect.Field;
  5. import java.lang.reflect.Modifier;
  6. import java.security.PrivilegedAction;
  7.  
  8. class ObjectStreamClass$2 implements PrivilegedAction {
  9.    // $FF: synthetic field
  10.    private final Class val$cl;
  11.    // $FF: synthetic field
  12.    private final ObjectStreamClass this$0;
  13.  
  14.    ObjectStreamClass$2(ObjectStreamClass var1, Class var2) {
  15.       this.this$0 = var1;
  16.       this.val$cl = var2;
  17.    }
  18.  
  19.    public Object run() {
  20.       if (this.this$0.forProxyClass) {
  21.          ObjectStreamClass.access$102(this.this$0, 0L);
  22.       } else {
  23.          try {
  24.             Field var1 = this.val$cl.getDeclaredField("serialVersionUID");
  25.             int var2 = var1.getModifiers();
  26.             if (Modifier.isStatic(var2) && Modifier.isFinal(var2)) {
  27.                ((AccessibleObject)var1).setAccessible(true);
  28.                ObjectStreamClass.access$102(this.this$0, var1.getLong(this.val$cl));
  29.             } else {
  30.                ObjectStreamClass.access$102(this.this$0, ObjectStreamClass.access$200(this.val$cl));
  31.             }
  32.          } catch (NoSuchFieldException var3) {
  33.             ObjectStreamClass.access$102(this.this$0, ObjectStreamClass.access$200(this.val$cl));
  34.          } catch (IllegalAccessException var4) {
  35.             ObjectStreamClass.access$102(this.this$0, ObjectStreamClass.access$200(this.val$cl));
  36.          }
  37.       }
  38.  
  39.       this.this$0.writeReplaceMethod = ObjectStreamClass.access$400(this.this$0, "writeReplace", ObjectStreamClass.access$300(), 0, 8);
  40.       if (this.this$0.writeReplaceMethod == null && this.this$0.superclass != null && ObjectStreamClass.access$500(this.this$0, this.this$0.superclass.writeReplaceMethod)) {
  41.          this.this$0.writeReplaceMethod = this.this$0.superclass.writeReplaceMethod;
  42.       }
  43.  
  44.       this.this$0.readResolveMethod = ObjectStreamClass.access$400(this.this$0, "readResolve", ObjectStreamClass.access$300(), 0, 8);
  45.       if (this.this$0.readResolveMethod == null && this.this$0.superclass != null && ObjectStreamClass.access$500(this.this$0, this.this$0.superclass.readResolveMethod)) {
  46.          this.this$0.readResolveMethod = this.this$0.superclass.readResolveMethod;
  47.       }
  48.  
  49.       if (ObjectStreamClass.access$600(this.this$0) && !this.this$0.forProxyClass) {
  50.          if (ObjectStreamClass.access$700() == null || ObjectStreamClass.access$800() == null) {
  51.             ObjectStreamClass.access$900();
  52.          }
  53.  
  54.          this.this$0.writeObjectMethod = ObjectStreamClass.access$400(this.this$0, "writeObject", ObjectStreamClass.access$700(), 2, 8);
  55.          if (this.this$0.writeObjectMethod != null) {
  56.             ObjectStreamClass.access$1002(this.this$0, true);
  57.          }
  58.  
  59.          this.this$0.readObjectMethod = ObjectStreamClass.access$400(this.this$0, "readObject", ObjectStreamClass.access$800(), 2, 8);
  60.       }
  61.  
  62.       return null;
  63.    }
  64. }
  65.