home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1998 September / dppcpro0998.iso / Rwc / Sybase / Install.exe / java.z / PropertyHookupTarget.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-01-12  |  1.8 KB  |  45 lines

  1. package sunw.beanbox;
  2.  
  3. import java.io.IOException;
  4. import java.io.ObjectInputStream;
  5. import java.io.ObjectOutputStream;
  6. import java.io.Serializable;
  7. import java.lang.reflect.Method;
  8.  
  9. class PropertyHookupTarget implements Serializable {
  10.    static final long serialVersionUID = -8352305996623495352L;
  11.    private static int ourVersion = 1;
  12.    Object object;
  13.    Method setter;
  14.  
  15.    PropertyHookupTarget(Object var1, Method var2) {
  16.       this.object = var1;
  17.       this.setter = var2;
  18.    }
  19.  
  20.    private void writeObject(ObjectOutputStream var1) throws IOException {
  21.       var1.writeInt(ourVersion);
  22.       var1.writeObject(this.setter.toString());
  23.       var1.writeObject(this.object);
  24.    }
  25.  
  26.    private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
  27.       var1.readInt();
  28.       String var2 = (String)var1.readObject();
  29.       this.object = var1.readObject();
  30.       this.setter = null;
  31.       Method[] var3 = this.object.getClass().getMethods();
  32.  
  33.       for(int var4 = 0; var4 < var3.length; ++var4) {
  34.          if (var3[var4].toString().equals(var2)) {
  35.             this.setter = var3[var4];
  36.             break;
  37.          }
  38.       }
  39.  
  40.       if (this.setter == null) {
  41.          throw new IOException("PropertyHookupTarget : no suitable setter\n    " + var2 + "\n    in class " + this.object.getClass());
  42.       }
  43.    }
  44. }
  45.