public void init() {
   markAlive(true);
   Trace.println("TextAppletAdapter init()", TraceLevel.UI);
   try {
     getApplet2().init(getApplet2Context());
   } catch (Throwable localThrowable) {
     Trace.ignored(localThrowable);
     throw new RuntimeException("Call to applet2.init() failed", localThrowable);
   }
 }
 public static int show(
     String paramString1,
     String paramString2,
     String paramString3,
     String paramString4,
     String paramString5,
     String paramString6,
     String paramString7,
     String paramString8,
     String paramString9,
     String paramString10,
     String paramString11,
     String paramString12) {
   if (_isMainToolkitThread())
     return showImmediately(
         paramString1,
         paramString2,
         paramString3,
         paramString4,
         paramString5,
         paramString6,
         paramString7,
         paramString8,
         paramString9,
         paramString10,
         paramString11,
         paramString12);
   String[] arrayOfString = {
     Environment.getJavaHome() + "/bin/java",
     "-cp",
     Environment.getJavaHome() + "/lib/deploy.jar",
     "com.sun.deploy.uitoolkit.ui.NativeMixedCodeDialog",
     paramString12
   };
   Trace.println(
       "NativeMixedCodeDialog executes the command in a separate process:", TraceLevel.UI);
   for (int i = 0; i < arrayOfString.length; i++)
     Trace.println("    args[" + i + "]=" + arrayOfString[i], TraceLevel.UI);
   i = -1;
   try {
     Process localProcess = Runtime.getRuntime().exec(arrayOfString);
     i = localProcess.waitFor();
     _activateCurrentProcess();
   } catch (Throwable localThrowable) {
     Trace.ignored(localThrowable);
     i = -1;
   }
   return i;
 }
 public synchronized Preloader instantiatePreloader(Class paramClass) {
   Trace.println("TextAppletAdapter createCustomProgress " + paramClass, TraceLevel.UI);
   if (paramClass != null)
     try {
       Class[] arrayOfClass = {Applet2Context.class};
       Object[] arrayOfObject = {null};
       Constructor localConstructor = null;
       localConstructor = paramClass.getConstructor(arrayOfClass);
       this.preloader = ((Preloader) localConstructor.newInstance(arrayOfObject));
     } catch (Exception localException) {
       Trace.ignored(localException);
     }
   if (this.preloader == null) this.preloader = new TextPreloader();
   return this.preloader;
 }
 /*     */ public void run() {
   /*     */ try {
     /*  78 */ boolean doRun = true;
     /*  79 */ long tm = System.currentTimeMillis();
     /*  80 */ while (doRun) {
       /*  81 */ if (DeployPerfLogger.access$000() != null) {
         /*     */ try {
           /*  83 */ DeployPerfLogger.access$100();
           /*  84 */ DeployPerfLogger.access$202(false);
           /*     */ } catch (Exception e) {
           /*  86 */ if (DeployPerfLogger.gotError)
           /*     */ {
             /*  88 */ doRun = false;
             /*  89 */ Trace.ignoredException(e);
             /*     */ } else {
             /*  91 */ DeployPerfLogger.access$202(true);
             /*     */ }
           /*  93 */ synchronized (DeployPerfLogger.class) {
             /*  94 */ DeployPerfLogger.access$302(null);
             /*     */ }
           /*     */ }
         /*     */ }
       /*  98 */ else if (System.currentTimeMillis() - tm > 5000L) {
         /*  99 */ Trace.println("Stop perf tracing as could not get JS object");
         /*     */
         /* 101 */ doRun = false;
         /*     */ }
       /*     */
       /* 104 */ synchronized (DeployPerfLogger.queue)
       /*     */ {
         /*     */ try {
           /* 107 */ DeployPerfLogger.queue.wait(10000L);
           /*     */ } catch (InterruptedException ie) {
           /* 109 */ doRun = false;
           /*     */ }
         /*     */ }
       /*     */ }
     /*     */ } catch (Throwable t) {
     /* 114 */ Trace.ignored(t);
     /*     */ } finally {
     /* 116 */ synchronized (this) {
       /* 117 */ this.isActive = false;
       /*     */ }
     /*     */ }
   /*     */ }
  public static final void main(String[] paramArrayOfString) {
    int i = -1;
    try {
      TraceListener local1 =
          new TraceListener() {
            public void flush() {
              System.err.flush();
            }

            public void print(String paramAnonymousString) {
              System.err.print(paramAnonymousString);
            }
          };
      Trace.addTraceListener(local1);
      Trace.println("NativeMixedCodeDialog.main enter");
      Platform.get();
      String str1 = ResourceManager.getString("security.dialog.nativemixcode.title");
      String str2 = ResourceManager.getString("security.dialog.nativemixcode.masthead");
      String str3 = ResourceManager.getString("security.dialog.nativemixcode.message");
      String str4 = ResourceManager.getString("security.dialog.nativemixcode.info");
      String str5 = ResourceManager.getString("security.dialog.nativemixcode.blockBtnStr");
      String str6 = ResourceManager.getString("security.dialog.nativemixcode.dontBlockBtnStr");
      String str7 = ResourceManager.getString("security.dialog.nativemixcode.helpBtnStr");
      String str8 = ResourceManager.getString("security.dialog.nativemixcode.closeBtnStr");
      String str9 = ResourceManager.getString("security.dialog.nativemixcode.helpTitle");
      String str10 = ResourceManager.getString("security.dialog.nativemixcode.helpMessage");
      String str11 = ResourceManager.getString("security.dialog.nativemixcode.appLabelStr");
      String str12 = paramArrayOfString[0];
      if (isSupported()) {
        i =
            showImmediately(
                str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12);
        Trace.println("NativeMixedCodeDialog.show(...) returns " + i);
      } else {
        Trace.println("NativeMixedCodeDialog isn't supported");
      }
      Trace.println("NativeMixedCodeDialog.main exit");
      Trace.ensureMessageQueueProcessingStarted();
    } catch (Throwable localThrowable) {
      Trace.ignored(localThrowable);
      i = -1;
    }
    System.exit(i);
  }
 /*     */ static
 /*     */ {
   /*  28 */ PERF_LOG_ENABLED = false;
   /*     */ try {
     /*  30 */ PERF_LOG_ENABLED =
         ((Boolean)
                 AccessController.doPrivileged(
                     new PrivilegedExceptionAction()
                     /*     */ {
                       /*     */ public Boolean run() /*     */ {
                         /*  35 */ return Boolean.valueOf(
                             "true".equals(System.getProperty("jnlp.fx.perf")));
                         /*     */ }
                       /*     */ }))
             .booleanValue();
     /*     */
     /*  39 */ if (PERF_LOG_ENABLED) /*  40 */ logger = new PerfLoggerThread();
     /*     */ }
   /*     */ catch (PrivilegedActionException pae) {
     /*  43 */ Trace.ignored(pae);
     /*     */ }
   /*     */ }
 public synchronized void checkServerTrusted(
     X509Certificate[] paramArrayOfX509Certificate, String paramString, Socket paramSocket)
     throws CertificateException {
   SSLSocket localSSLSocket = (SSLSocket) paramSocket;
   SSLSession localSSLSession = localSSLSocket.getHandshakeSession();
   String str1 = localSSLSocket.getSSLParameters().getEndpointIdentificationAlgorithm();
   String str2 = localSSLSession.getPeerHost();
   if ((str1 != null) && (!isSupportedAlgorithm(str1))) return;
   boolean bool = false;
   int i = 0;
   if (this.trustManager == null)
     throw new IllegalStateException("TrustManager should not be null");
   int j = -1;
   try {
     rootStore.load();
     sslRootStore.load();
     permanentStore.load();
     sessionStore.load();
     deniedStore.load();
     if ((browserSSLRootStore != null) && (!isBrowserSSLRootStoreLoaded)) {
       browserSSLRootStore.load();
       isBrowserSSLRootStoreLoaded = true;
     }
     if (deniedStore.contains(paramArrayOfX509Certificate[0]))
       throw new CertificateException("Certificate has been denied");
     if (!alwaysShow)
       try {
         this.trustManager.checkServerTrusted(
             paramArrayOfX509Certificate, paramString, localSSLSocket);
         return;
       } catch (CertificateException localCertificateException1) {
       }
     if (sessionStore.contains(paramArrayOfX509Certificate[0])) return;
     if (permanentStore.contains(paramArrayOfX509Certificate[0])) return;
     if ((paramArrayOfX509Certificate != null) && (paramArrayOfX509Certificate.length > 0)) {
       k = paramArrayOfX509Certificate.length - 1;
       if ((!rootStore.verify(paramArrayOfX509Certificate[k]))
           && (!sslRootStore.verify(paramArrayOfX509Certificate[k]))
           && ((browserSSLRootStore == null)
               || (!browserSSLRootStore.verify(paramArrayOfX509Certificate[k])))) bool = true;
     }
     for (int k = 0; k < paramArrayOfX509Certificate.length; k++)
       try {
         paramArrayOfX509Certificate[k].checkValidity();
       } catch (CertificateExpiredException localCertificateExpiredException) {
         i = -1;
       } catch (CertificateNotYetValidException localCertificateNotYetValidException) {
         i = 1;
       }
     if (!Trace.isAutomationEnabled()) {
       k =
           (alwaysShow)
                   || (bool)
                   || (i != 0)
                   || ((mismatchShow)
                       && (!CertUtils.checkWildcardDomainList(
                           str2, CertUtils.getServername(paramArrayOfX509Certificate[0]))))
               ? 1
               : 0;
       if (k != 0) {
         Trace.msgSecurityPrintln("x509trustmgr.check.invalidcert");
         URL localURL = null;
         try {
           localURL =
               new URL("https", localSSLSession.getPeerHost(), localSSLSession.getPeerPort(), "");
         } catch (Exception localException) {
           Trace.ignored(localException);
         }
         j =
             TrustDeciderDialog.showDialog(
                 paramArrayOfX509Certificate,
                 localURL,
                 0,
                 paramArrayOfX509Certificate.length,
                 bool,
                 i,
                 null,
                 new AppInfo(),
                 true,
                 str2);
       } else {
         j = 0;
       }
     } else {
       Trace.msgSecurityPrintln("x509trustmgr.automation.ignoreservercert");
       j = 0;
     }
     if (j == 0) {
       sessionStore.add(paramArrayOfX509Certificate[0]);
       sessionStore.save();
     } else if (j == 2) {
       CertStore localCertStore = DeploySSLCertStore.getUserCertStore();
       localCertStore.load(true);
       if (localCertStore.add(paramArrayOfX509Certificate[0])) localCertStore.save();
     } else {
       deniedStore.add(paramArrayOfX509Certificate[0]);
       deniedStore.save();
     }
   } catch (CertificateException localCertificateException2) {
     throw localCertificateException2;
   } catch (Throwable localThrowable) {
     localThrowable.printStackTrace();
   }
   if ((j != 0) && (j != 2)) throw new CertificateException("Java couldn't trust Server");
 }
  private static int showImmediately(
      String paramString1,
      String paramString2,
      String paramString3,
      String paramString4,
      String paramString5,
      String paramString6,
      String paramString7,
      String paramString8,
      String paramString9,
      String paramString10,
      String paramString11,
      String paramString12) {
    if ((paramString1 == null)
        || (paramString2 == null)
        || (paramString3 == null)
        || (paramString4 == null)
        || (paramString5 == null)
        || (paramString6 == null)
        || (paramString7 == null)
        || (paramString8 == null)
        || (paramString9 == null)
        || (paramString10 == null)
        || (paramString11 == null)
        || (paramString12 == null)) {
      Trace.println("parameters shouldn't be null", TraceLevel.UI);
      return -1;
    }
    PrivilegedAction local2 =
        new PrivilegedAction() {
          private final String val$title;
          private final String val$masthead;
          private final String val$message;
          private final String val$info;
          private final String val$blockBtnStr;
          private final String val$dontBlockBtnStr;
          private final String val$helpBtnStr;
          private final String val$closeBtnStr;
          private final String val$helpTitle;
          private final String val$helpMessage;
          private final String val$appLabelStr;
          private final String val$appTitle;

          public Object run() {
            int i =
                NativeMixedCodeDialog._show(
                    this.val$title,
                    this.val$masthead,
                    this.val$message,
                    this.val$info,
                    this.val$blockBtnStr,
                    this.val$dontBlockBtnStr,
                    this.val$helpBtnStr,
                    this.val$closeBtnStr,
                    this.val$helpTitle,
                    this.val$helpMessage,
                    this.val$appLabelStr,
                    this.val$appTitle);
            return new Integer(i);
          }
        };
    try {
      return ((Integer) AccessController.doPrivileged(local2)).intValue();
    } catch (Throwable localThrowable) {
      Trace.ignored(localThrowable);
    }
    return -1;
  }
 public void doShowError(String paramString, Throwable paramThrowable, boolean paramBoolean) {
   Trace.println(
       "TextAdapter: request to show error (offerReload=" + paramBoolean + ")", TraceLevel.UI);
   if (paramThrowable != null) Trace.ignored(paramThrowable);
 }