home *** CD-ROM | disk | FTP | other *** search
- package sun.applet;
-
- public class AppletEventMulticaster implements AppletListener {
- // $FF: renamed from: a sun.applet.AppletListener
- private final AppletListener field_0;
- // $FF: renamed from: b sun.applet.AppletListener
- private final AppletListener field_1;
-
- public AppletEventMulticaster(AppletListener var1, AppletListener var2) {
- this.field_0 = var1;
- this.field_1 = var2;
- }
-
- public void appletStateChanged(AppletEvent var1) {
- this.field_0.appletStateChanged(var1);
- this.field_1.appletStateChanged(var1);
- }
-
- public static AppletListener add(AppletListener var0, AppletListener var1) {
- return addInternal(var0, var1);
- }
-
- public static AppletListener remove(AppletListener var0, AppletListener var1) {
- return removeInternal(var0, var1);
- }
-
- private static AppletListener addInternal(AppletListener var0, AppletListener var1) {
- if (var0 == null) {
- return var1;
- } else {
- return (AppletListener)(var1 == null ? var0 : new AppletEventMulticaster(var0, var1));
- }
- }
-
- protected AppletListener remove(AppletListener var1) {
- if (var1 == this.field_0) {
- return this.field_1;
- } else if (var1 == this.field_1) {
- return this.field_0;
- } else {
- AppletListener var2 = removeInternal(this.field_0, var1);
- AppletListener var3 = removeInternal(this.field_1, var1);
- return (AppletListener)(var2 == this.field_0 && var3 == this.field_1 ? this : addInternal(var2, var3));
- }
- }
-
- private static AppletListener removeInternal(AppletListener var0, AppletListener var1) {
- if (var0 != var1 && var0 != null) {
- return var0 instanceof AppletEventMulticaster ? ((AppletEventMulticaster)var0).remove(var1) : var0;
- } else {
- return null;
- }
- }
- }
-