home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 June / CHIPHEFT062001.ISO / browser / nc32lyc / comm.z / java40.jar / netscape / softupdate / InstallExecute.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-08-15  |  2.7 KB  |  76 lines

  1. package netscape.softupdate;
  2.  
  3. import java.text.MessageFormat;
  4. import netscape.security.AppletSecurity;
  5. import netscape.security.PrivilegeManager;
  6. import netscape.security.Target;
  7.  
  8. class InstallExecute extends InstallObject {
  9.    private String jarLocation;
  10.    private String tempFile;
  11.    private String args;
  12.    private String cmdline;
  13.  
  14.    InstallExecute(SoftwareUpdate var1, String var2, String var3) {
  15.       super(var1);
  16.       this.jarLocation = var2;
  17.       this.args = var3;
  18.       PrivilegeManager var4 = AppletSecurity.getPrivilegeManager();
  19.       Target var5 = Target.findTarget("Impersonator");
  20.       var4.enablePrivilege(var5);
  21.       Target var6 = Target.findTarget("SoftwareInstall");
  22.       var4.enablePrivilege(var6, super.softUpdate.GetPrincipal());
  23.    }
  24.  
  25.    protected void Prepare() throws SoftUpdateException {
  26.       PrivilegeManager var1 = AppletSecurity.getPrivilegeManager();
  27.       Target var2 = Target.findTarget("Impersonator");
  28.       Target var3 = Target.findTarget("SoftwareInstall");
  29.       var1.enablePrivilege(var2);
  30.       var1.enablePrivilege(var3, super.softUpdate.GetPrincipal());
  31.       this.tempFile = super.softUpdate.ExtractJARFile(this.jarLocation, (String)null);
  32.       if (this.args != null && !System.getProperty("os.name").startsWith("Mac")) {
  33.          this.cmdline = this.tempFile + " " + this.args;
  34.       } else {
  35.          this.cmdline = this.tempFile;
  36.       }
  37.    }
  38.  
  39.    protected void Complete() throws SoftUpdateException {
  40.       PrivilegeManager var2 = AppletSecurity.getPrivilegeManager();
  41.       Target var3 = Target.findTarget("Impersonator");
  42.       var2.enablePrivilege(var3);
  43.       Target var1 = Target.findTarget("SoftwareInstall");
  44.       var2.enablePrivilege(var1, super.softUpdate.GetPrincipal());
  45.       this.NativeComplete();
  46.       var2.revertPrivilege(var1);
  47.    }
  48.  
  49.    protected void Abort() {
  50.       this.NativeAbort();
  51.    }
  52.  
  53.    private native void NativeComplete() throws SoftUpdateException;
  54.  
  55.    private native void NativeAbort();
  56.  
  57.    public String toString() {
  58.       Object[] var1 = new Object[]{this.jarLocation, this.tempFile};
  59.       if (this.tempFile == null) {
  60.          String var3 = MessageFormat.format(Strings.details_ExecuteProgress(), var1);
  61.          return var3;
  62.       } else {
  63.          String var2 = MessageFormat.format(Strings.details_ExecuteProgress2(), var1);
  64.          return var2;
  65.       }
  66.    }
  67.  
  68.    protected boolean CanUninstall() {
  69.       return false;
  70.    }
  71.  
  72.    protected boolean RegisterPackageNode() {
  73.       return true;
  74.    }
  75. }
  76.