home *** CD-ROM | disk | FTP | other *** search
- package sun.applet;
-
- import java.awt.Button;
- import java.awt.Choice;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Event;
- import java.awt.Frame;
- import java.awt.GridLayout;
- import java.awt.Label;
- import java.awt.Panel;
- import java.awt.TextField;
- import java.awt.Window;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.util.Hashtable;
- import java.util.Properties;
- import sun.net.www.http.HttpClient;
-
- class AppletProps extends Frame {
- TextField proxyHost;
- TextField proxyPort;
- TextField firewallHost;
- TextField firewallPort;
- Choice networkMode;
- Choice accessMode;
-
- AppletProps() {
- ((Frame)this).setTitle("AppletViewer Properties");
- Panel var1 = new Panel();
- ((Container)var1).setLayout(new GridLayout(0, 2));
- ((Container)var1).add(new Label("Http proxy server:"));
- ((Container)var1).add(this.proxyHost = new TextField());
- ((Container)var1).add(new Label("Http proxy port:"));
- ((Container)var1).add(this.proxyPort = new TextField());
- ((Container)var1).add(new Label("Firewall proxy server:"));
- ((Container)var1).add(this.firewallHost = new TextField());
- ((Container)var1).add(new Label("Firewall proxy port:"));
- ((Container)var1).add(this.firewallPort = new TextField());
- ((Container)var1).add(new Label("Network access:"));
- ((Container)var1).add(this.networkMode = new Choice());
- this.networkMode.addItem("None");
- this.networkMode.addItem("Applet Host");
- this.networkMode.addItem("Unrestricted");
- ((Container)var1).add(new Label("Class access:"));
- ((Container)var1).add(this.accessMode = new Choice());
- this.accessMode.addItem("Restricted");
- this.accessMode.addItem("Unrestricted");
- ((Container)this).add("Center", var1);
- var1 = new Panel();
- ((Container)var1).add(new Button("Apply"));
- ((Container)var1).add(new Button("Reset"));
- ((Container)var1).add(new Button("Cancel"));
- ((Container)this).add("South", var1);
- ((Component)this).move(200, 150);
- ((Window)this).pack();
- this.reset();
- }
-
- void reset() {
- ((AppletSecurity)System.getSecurityManager()).reset();
- switch (((AppletSecurity)System.getSecurityManager()).networkMode) {
- case 1:
- this.networkMode.select("None");
- break;
- case 2:
- default:
- this.networkMode.select("Applet Host");
- break;
- case 3:
- this.networkMode.select("Unrestricted");
- }
-
- if (Boolean.getBoolean("package.restrict.access.sun")) {
- this.accessMode.select("Restricted");
- } else {
- this.accessMode.select("Unrestricted");
- }
-
- if (Boolean.getBoolean("proxySet")) {
- this.proxyHost.setText(System.getProperty("proxyHost"));
- this.proxyPort.setText(System.getProperty("proxyPort"));
- HttpClient.useProxyForCaching = true;
- HttpClient.cachingProxyHost = System.getProperty("proxyHost");
- HttpClient.cachingProxyPort = Integer.valueOf(System.getProperty("proxyPort"));
- } else {
- this.proxyHost.setText("");
- this.proxyPort.setText("");
- HttpClient.useProxyForCaching = false;
- }
-
- if (Boolean.getBoolean("firewallSet")) {
- this.firewallHost.setText(System.getProperty("firewallHost"));
- this.firewallPort.setText(System.getProperty("firewallPort"));
- HttpClient.useProxyForFirewall = true;
- HttpClient.firewallProxyHost = System.getProperty("firewallHost");
- HttpClient.firewallProxyPort = Integer.valueOf(System.getProperty("firewallPort"));
- } else {
- this.firewallHost.setText("");
- this.firewallPort.setText("");
- HttpClient.useProxyForFirewall = false;
- }
- }
-
- void apply() {
- Properties var1 = System.getProperties();
- ((Hashtable)var1).put("appletviewer.version", AppletViewer.theVersion);
- if (this.proxyHost.getText().length() > 0) {
- ((Hashtable)var1).put("proxySet", "true");
- ((Hashtable)var1).put("proxyHost", this.proxyHost.getText().trim());
- ((Hashtable)var1).put("proxyPort", this.proxyPort.getText().trim());
- } else {
- ((Hashtable)var1).put("proxySet", "false");
- }
-
- if (this.firewallHost.getText().length() > 0) {
- ((Hashtable)var1).put("firewallSet", "true");
- ((Hashtable)var1).put("firewallHost", this.firewallHost.getText().trim());
- ((Hashtable)var1).put("firewallPort", this.firewallPort.getText().trim());
- } else {
- ((Hashtable)var1).put("firewallSet", "false");
- }
-
- if ("None".equals(this.networkMode.getSelectedItem())) {
- ((Hashtable)var1).put("appletviewer.security.mode", "none");
- } else if ("Unrestricted".equals(this.networkMode.getSelectedItem())) {
- ((Hashtable)var1).put("appletviewer.security.mode", "unrestricted");
- } else {
- ((Hashtable)var1).put("appletviewer.security.mode", "host");
- }
-
- if ("Restricted".equals(this.accessMode.getSelectedItem())) {
- ((Hashtable)var1).put("package.restrict.access.sun", "true");
- ((Hashtable)var1).put("package.restrict.access.netscape", "true");
- } else {
- ((Hashtable)var1).put("package.restrict.access.sun", "false");
- ((Hashtable)var1).put("package.restrict.access.netscape", "false");
- }
-
- try {
- this.reset();
- FileOutputStream var2 = new FileOutputStream(AppletViewer.theUserPropertiesFile);
- var1.save(var2, "AppletViewer");
- var2.close();
- ((Component)this).hide();
- } catch (IOException var3) {
- System.out.println("Failed to save properties: " + var3);
- ((Throwable)var3).printStackTrace();
- this.reset();
- }
- }
-
- public boolean action(Event var1, Object var2) {
- if ("Apply".equals(var2)) {
- this.apply();
- return true;
- } else if ("Reset".equals(var2)) {
- this.reset();
- return true;
- } else if ("Cancel".equals(var2)) {
- ((Component)this).hide();
- return true;
- } else {
- return false;
- }
- }
- }
-