home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 July / PCO_07_97.ISO / NET_COM / cc32e40.exe / nav40.z / java40.jar / netscape / softupdate / InstallFile.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-06-07  |  2.5 KB  |  64 lines

  1. package netscape.softupdate;
  2.  
  3. import netscape.security.AppletSecurity;
  4. import netscape.security.PrivilegeManager;
  5. import netscape.security.Target;
  6.  
  7. final class InstallFile extends InstallObject {
  8.    private String vrName;
  9.    private VersionInfo versionInfo;
  10.    private String jarLocation;
  11.    private String tempFile = null;
  12.    private String finalFile;
  13.    private Target target;
  14.    private boolean force;
  15.  
  16.    InstallFile(SoftwareUpdate var1, String var2, VersionInfo var3, String var4, FolderSpec var5, String var6, boolean var7) throws SoftUpdateException {
  17.       super(var1);
  18.       this.vrName = var2;
  19.       this.versionInfo = var3;
  20.       this.jarLocation = var4;
  21.       this.force = var7;
  22.       this.finalFile = var5.MakeFullPath(var6);
  23.       PrivilegeManager var8 = AppletSecurity.getPrivilegeManager();
  24.       Target var9 = Target.findTarget("Impersonator");
  25.       var8.enablePrivilege(var9);
  26.       this.target = var5.GetSecurityTarget();
  27.       var8.enablePrivilege(this.target, super.softUpdate.GetPrincipal());
  28.    }
  29.  
  30.    protected void ExtractFile() throws SoftUpdateException {
  31.       PrivilegeManager var1 = AppletSecurity.getPrivilegeManager();
  32.       Target var2 = Target.findTarget("Impersonator");
  33.       var1.enablePrivilege(var2);
  34.       var1.enablePrivilege(this.target, super.softUpdate.GetPrincipal());
  35.       this.tempFile = super.softUpdate.ExtractJARFile(this.jarLocation);
  36.    }
  37.  
  38.    protected void Complete() throws SoftUpdateException {
  39.       PrivilegeManager var2 = AppletSecurity.getPrivilegeManager();
  40.       Target var3 = Target.findTarget("Impersonator");
  41.       var2.enablePrivilege(var3);
  42.       var2.enablePrivilege(this.target, super.softUpdate.GetPrincipal());
  43.       int var1 = this.NativeComplete();
  44.       var2.revertPrivilege(this.target);
  45.       if (var1 == 0) {
  46.          VersionRegistry.installComponent(this.vrName, this.finalFile, this.versionInfo);
  47.       } else {
  48.          throw new SoftUpdateException(Strings.error_InstallFileUnexpected() + this.finalFile, var1);
  49.       }
  50.    }
  51.  
  52.    protected void Abort() {
  53.       this.NativeAbort();
  54.    }
  55.  
  56.    private native void NativeAbort();
  57.  
  58.    private native int NativeComplete();
  59.  
  60.    public String toString() {
  61.       return "Copy file to " + this.finalFile;
  62.    }
  63. }
  64.