home *** CD-ROM | disk | FTP | other *** search
- package netscape.netcast.application;
-
- import java.applet.Applet;
- import java.net.MalformedURLException;
- import java.net.URL;
- import java.util.ResourceBundle;
- import java.util.StringTokenizer;
- import java.util.Vector;
- import marimba.castanet.client.CastanetChannel;
- import marimba.castanet.client.CastanetObject;
- import marimba.castanet.client.CastanetTransmitter;
- import marimba.castanet.client.CastanetWorkspace;
- import marimba.castanet.util.ProgressInfo;
- import netscape.javascript.JSObject;
- import netscape.security.PrivilegeManager;
- import netscape.security.Target;
-
- class CastanetDataItem extends DataItem {
- // $FF: renamed from: ws marimba.castanet.client.CastanetWorkspace
- CastanetWorkspace field_0;
- CastanetTransmitter transmitter;
- CastanetChannel channel;
- String status;
- boolean bInitialDownload = false;
- private boolean bGotProps = false;
- private boolean gotProgressStart = false;
- private boolean gotStatusBarStart = false;
-
- public CastanetDataItem(String var1, Applet var2) {
- PrivilegeManager var3 = PrivilegeManager.getPrivilegeManager();
- super.m_URL = new String(var1);
- DebugManager.println("Called the 1 constructor: applet = " + var2);
- super.m_Applet = (ConstPR4)var2;
- this.field_0 = super.m_Applet.constManager.ws;
- super.m_Type = 2;
- super.m_State = 0;
- this.bInitialDownload = true;
- this.loadData();
- this.getChannelProps(this.channel);
- super.m_Mode = "window";
- if (var3 != null) {
- Target var4 = Target.findTarget("MarimbaInternalTarget");
- if (var4 != null) {
- var3.enablePrivilege(var4);
- }
- }
-
- String var10 = "start";
- int var5 = var1.indexOf(63);
- if (var5 >= 0) {
- var10 = var1.substring(var5 + 1);
- }
-
- if (!var10.startsWith("start,")) {
- this.channel.start();
- } else {
- String var6 = var10.substring(6);
- Vector var7 = new Vector();
- StringTokenizer var8 = new StringTokenizer(var6, ",");
-
- while(var8.hasMoreTokens()) {
- var7.addElement(var8.nextToken());
- }
-
- String[] var9 = new String[var7.size()];
- var7.copyInto(var9);
- this.channel.start(var9);
- }
- }
-
- public CastanetDataItem(Applet var1, CastanetChannel var2) {
- DebugManager.println("Called the 2nd constructor: applet = " + var1 + " channel: " + var2);
- super.m_Applet = (ConstPR4)var1;
- this.field_0 = super.m_Applet.constManager.ws;
- this.channel = var2;
- this.transmitter = var2.getTransmitter();
- super.m_Type = 2;
- super.m_State = 0;
- this.getChannelProps(var2);
- }
-
- public CastanetDataItem(Applet var1, String var2) {
- DebugManager.println("Called the 3rd constructor: applet = " + var1 + " matchKey = " + var2);
- this.bGotProps = true;
- super.m_Applet = (ConstPR4)var1;
- this.field_0 = super.m_Applet.constManager.ws;
- super.m_State = 0;
- this.loadData(var2);
- this.getChannelProps(this.channel);
- }
-
- public void loadData(String var1) {
- super.loadData(var1);
- this.loadData();
- }
-
- public void loadData() {
- DebugManager.println("in load data");
- super.m_Type = 2;
-
- try {
- URL var1 = new URL(super.m_URL);
- String var2 = var1.getHost();
- int var3 = var1.getPort();
- if (var3 < 0) {
- var3 = 80;
- }
-
- String var4 = var2 + ":" + var3;
- String var5 = var1.getFile();
- DebugManager.println("load data after getfile");
-
- while(var5.startsWith("/")) {
- var5 = var5.substring(1);
- }
-
- int var6 = var5.indexOf(47);
- if (var6 >= 0) {
- var5 = var5.substring(0, var6);
- }
-
- var6 = var5.indexOf(63);
- if (var6 >= 0) {
- var5 = var5.substring(0, var6);
- }
-
- PrivilegeManager var7 = PrivilegeManager.getPrivilegeManager();
- if (var7 != null) {
- Target var8 = Target.findTarget("MarimbaInternalTarget");
- if (var8 != null) {
- var7.enablePrivilege(var8);
- }
- }
-
- DebugManager.println("ws is: " + this.field_0);
- this.transmitter = this.field_0.getTransmitterCreate(var4);
- if (this.transmitter != null) {
- this.channel = this.transmitter.getChannelCreate(var5);
- super.m_PrefsKey = "netcaster.channel." + this.channel.getEncodedName();
- return;
- }
- } catch (MalformedURLException var9) {
- ((Throwable)var9).printStackTrace();
- }
-
- }
-
- void setCastanetProps(CastanetChannel var1) {
- if (!this.bGotProps) {
- this.bGotProps = true;
- this.getChannelProps(var1);
- super.m_Description = var1.getChannelProperty("description", "No description available");
- DebugManager.println("getting description: " + super.m_Description);
- super.m_Frequency = -7;
- String var2 = var1.getChannelProperty("placement", "window");
- if (var2.equalsIgnoreCase("desktop")) {
- super.m_Mode = "webtop";
- } else if (var2.equalsIgnoreCase("fullscreen")) {
- super.m_Mode = "full";
- } else {
- super.m_Mode = "window";
- }
-
- DebugManager.println("getting m_Mode from channel props: " + super.m_Mode + " orig result: " + var2);
- this.updateProps();
- }
- }
-
- void getChannelProps(CastanetChannel var1) {
- String var2 = ((CastanetObject)var1).getProperty("netcaster.scheduled", "true");
- ((DataItem)this).setScheduled(var2.equalsIgnoreCase("true") ? Boolean.TRUE : Boolean.FALSE);
- var2 = ((CastanetObject)var1).getProperty("netcaster.startTime", "0");
- super.m_StartTime = Integer.parseInt(var2);
- var2 = ((CastanetObject)var1).getProperty("netcaster.endTime", "0");
- super.m_EndTime = Integer.parseInt(var2);
- var2 = ((CastanetObject)var1).getProperty("netcaster.updateTime", "-1");
- super.m_UpdateTime = Integer.parseInt(var2);
- var2 = ((CastanetObject)var1).getProperty("netcaster.updateFreq", "-7");
- super.m_Frequency = Integer.parseInt(var2);
- DebugManager.println("update FREQ initially: " + super.m_Frequency);
- long var3 = var1.getSize();
- super.m_MaxSize = (int)(var3 < 1024L ? 1L : var3 / 1024L);
- DebugManager.println("update getSize: " + var1.getSize());
- DebugManager.println("update m_MaxSize: " + super.m_MaxSize);
- }
-
- public void saveData(String var1) {
- String var2 = super.m_PrefsKey;
- super.saveData(var2);
- String var3 = var2 + ".name";
- NCPrefsManager.SaveData(var3, super.m_Name);
- var3 = var2 + ".type";
- NCPrefsManager.SaveData(var3, "" + super.m_Type);
- this.channel.setProperty("netcaster.updateTime", "" + super.m_UpdateTime);
- this.channel.setProperty("netcaster.startTime", "" + super.m_StartTime);
- this.channel.setProperty("netcaster.endTime", "" + super.m_EndTime);
- this.channel.setProperty("netcaster.scheduled", ((DataItem)this).isScheduled() ? "true" : "false");
- this.channel.setProperty("netcaster.updateFreq", "" + super.m_Frequency);
- }
-
- public String[][] getMenuItems() {
- int var2 = 1;
- String[][] var1;
- if (((DataItem)this).isDeletable()) {
- var1 = new String[4][2];
- } else {
- var1 = new String[3][2];
- }
-
- if (super.m_Status == 1) {
- var1[0][0] = "Aktualisierung beenden";
- var1[0][1] = "update_stop";
- } else {
- var1[0][0] = "Jetzt aktualisieren";
- var1[0][1] = "update_start";
- }
-
- if (((DataItem)this).isDeletable()) {
- var1[var2][0] = "L├╢schen";
- var1[var2++][1] = "delete";
- }
-
- var1[var2][0] = "-";
- var1[var2++][1] = "";
- var1[var2][0] = "Eigenschaften";
- var1[var2++][1] = "props";
- return var1;
- }
-
- public void processMenuItem(String var1) {
- if (var1.compareTo("update_start") == 0) {
- this.update();
- } else if (var1.compareTo("update_stop") == 0) {
- this.cancelUpdate();
- } else {
- super.processMenuItem(var1);
- }
- }
-
- public void added(CategoryData var1, boolean var2) {
- NSTimer.master.add(Const.scheduler, 0L, this);
- super.added(var1, var2);
- }
-
- public void remove() {
- NSTimer.master.remove(Const.scheduler, this);
- }
-
- public void deleted(CategoryData var1) {
- this.remove();
- super.deleted(var1);
- PrivilegeManager var2 = PrivilegeManager.getPrivilegeManager();
- if (var2 != null) {
- Target var3 = Target.findTarget("MarimbaInternalTarget");
- if (var3 != null) {
- var2.enablePrivilege(var3);
- }
- }
-
- DebugManager.println("DELETE: " + this.channel);
- this.channel.remove();
- }
-
- public void update() {
- DebugManager.println("UPDATE: " + this.channel);
- PrivilegeManager var1 = PrivilegeManager.getPrivilegeManager();
- if (var1 != null) {
- Target var2 = Target.findTarget("MarimbaInternalTarget");
- if (var2 != null) {
- var1.enablePrivilege(var2);
- }
- }
-
- ((DataItem)this).setStatus(1);
- this.channel.update();
- }
-
- public synchronized void autoUpdate() {
- DebugManager.println("enter AUTO UPDATE: " + this.channel);
- PrivilegeManager var1 = PrivilegeManager.getPrivilegeManager();
- if (var1 != null) {
- Target var2 = Target.findTarget("MarimbaInternalTarget");
- if (var2 != null) {
- var1.enablePrivilege(var2);
- }
- }
-
- ((DataItem)this).setStatus(1);
- this.channel.autoUpdate();
- }
-
- public int getFrequency() {
- PrivilegeManager var1 = PrivilegeManager.getPrivilegeManager();
- if (var1 != null) {
- Target var2 = Target.findTarget("MarimbaInternalTarget");
- if (var2 != null) {
- var1.enablePrivilege(var2);
- }
- }
-
- DebugManager.println("UPDATE active FREQ: " + this.channel.getActiveFrequency());
- DebugManager.println("UPDATE inactive FREQ: " + this.channel.getInactiveFrequency());
- DebugManager.println("UPDATE update FREQ: " + this.channel.getUpdateFrequency());
- DebugManager.println("UPDATE FREQ: " + super.m_Frequency);
- return super.m_Frequency == -7 ? this.channel.getUpdateFrequency() : super.m_Frequency;
- }
-
- public void cancelUpdate() {
- PrivilegeManager var1 = PrivilegeManager.getPrivilegeManager();
- if (var1 != null) {
- Target var2 = Target.findTarget("MarimbaInternalTarget");
- if (var2 != null) {
- var1.enablePrivilege(var2);
- }
- }
-
- this.channel.cancel();
- }
-
- public void setStatus(String var1, int var2) {
- this.status = var1;
- if (!ConstPR4.bClosing) {
- DebugManager.println("STATUS: " + this.channel.getName() + "=" + var1);
- JSObject var3 = JSObject.getWindow(super.m_Applet);
- switch (var2) {
- case 400:
- case 404:
- case 405:
- case 407:
- case 408:
- case 410:
- case 411:
- case 500:
- if (!this.gotStatusBarStart) {
- this.gotStatusBarStart = true;
- JSObject[] var5 = new JSObject[1];
- if (super.m_ItemView != null) {
- var5[0] = super.m_ItemView;
- var3.call("animateGo", var5);
- return;
- }
- }
- default:
- return;
- case 401:
- case 402:
- case 403:
- case 406:
- case 409:
- case 507:
- case 508:
- case 509:
- this.bInitialDownload = false;
- if (this.gotStatusBarStart) {
- this.gotStatusBarStart = false;
- JSObject[] var4 = new JSObject[1];
- if (super.m_ItemView != null) {
- var4[0] = super.m_ItemView;
- var3.call("animateStop", var4);
- }
- }
-
- ((DataItem)this).setStatus(0);
- }
- }
- }
-
- public void setProgress(ProgressInfo var1, int var2) {
- DebugManager.println("PROGRESS: " + var1);
- JSObject var3 = JSObject.getWindow(super.m_Applet);
- int var4 = var1.getPercentage();
- switch (var2) {
- case 5009:
- if (!this.gotStatusBarStart) {
- this.gotStatusBarStart = true;
- Object[] var7 = new Object[2];
- if (super.m_ItemView != null) {
- var7[0] = super.m_ItemView;
- var7[1] = new Integer(var4);
- var3.call("animatePercent", var7);
- return;
- }
- }
- break;
- case 5010:
- case 5011:
- Object[] var6 = new Object[2];
- if (super.m_ItemView != null) {
- var6[0] = super.m_ItemView;
- var6[1] = new Integer(var4);
- var3.call("animatePercent", var6);
- return;
- }
- break;
- case 5012:
- if (this.gotStatusBarStart) {
- this.gotStatusBarStart = false;
- JSObject[] var5 = new JSObject[1];
- if (super.m_ItemView != null) {
- var5[0] = super.m_ItemView;
- var3.call("animateStop", var5);
- }
-
- ((DataItem)this).setState(1);
- ((DataItem)this).updateLEDImage(false);
- return;
- }
- }
-
- }
-
- public void close() {
- this.channel.stop();
- DebugManager.println("Closing a Castanet Item");
- this.remove();
- }
-
- public synchronized void setError(String var1) {
- super.setError(var1);
- if (var1 != null) {
- ((DataItem)this).setState(-2);
- }
-
- ((DataItem)this).updateLEDImage(false);
- }
-
- public void updateProps() {
- if (!ConstPR4.bClosing) {
- NSTimer.master.remove(Const.scheduler, this);
- NSTimer.master.add(Const.scheduler, 0L, this);
- }
-
- }
-
- public void openCastanetURL(String var1) {
- if (this.bInitialDownload) {
- DebugManager.println("INITAIL DOWNLOAD ERROR: " + this.channel);
- JSObject var8 = JSObject.getWindow(super.m_Applet);
- ResourceBundle var9 = ResourceBundle.getBundle("netscape.netcast.application.NetcasterStrings");
- var8.eval("parent.selector.showError('" + var9.getString("This channel can not be opened during the initial update.") + "');");
- } else {
- DebugManager.println("STARTING: " + this.channel);
- String var2 = "start";
- int var3 = super.m_URL.indexOf(63);
- if (var3 >= 0) {
- var2 = super.m_URL.substring(var3 + 1);
- }
-
- if (!var2.startsWith("start,")) {
- this.channel.start();
- } else {
- String var4 = var2.substring(6);
- Vector var5 = new Vector();
- StringTokenizer var6 = new StringTokenizer(var4, ",");
-
- while(var6.hasMoreTokens()) {
- var5.addElement(var6.nextToken());
- }
-
- String[] var7 = new String[var5.size()];
- var5.copyInto(var7);
- this.channel.start(var7);
- }
- }
- }
- }
-