From b5704c108cacaa131ed183685c03af846098a017 Mon Sep 17 00:00:00 2001 From: SiboVG Date: Sat, 27 Jan 2024 01:15:42 +0100 Subject: [PATCH] Apply config listener action to common classes --- .../file/rocksim/RockSimCommonConstants.java | 2 +- .../openrocket/rocketcomponent/BodyTube.java | 22 +++++++------- .../rocketcomponent/ComponentAssembly.java | 4 +-- .../sf/openrocket/rocketcomponent/FinSet.java | 5 ++-- .../openrocket/rocketcomponent/InnerTube.java | 12 ++++---- .../openrocket/rocketcomponent/LaunchLug.java | 20 ++++++------- .../rocketcomponent/ParallelStage.java | 30 +++++++++---------- .../sf/openrocket/rocketcomponent/PodSet.java | 22 +++++++------- .../rocketcomponent/RadiusRingComponent.java | 20 ++++++------- .../rocketcomponent/RailButton.java | 12 ++++---- .../rocketcomponent/RocketComponent.java | 2 +- .../sf/openrocket/rocketcomponent/Sleeve.java | 12 ++++---- .../ThicknessRingComponent.java | 12 ++++---- 13 files changed, 83 insertions(+), 92 deletions(-) diff --git a/core/src/net/sf/openrocket/file/rocksim/RockSimCommonConstants.java b/core/src/net/sf/openrocket/file/rocksim/RockSimCommonConstants.java index fd116f206..bae53a2d4 100644 --- a/core/src/net/sf/openrocket/file/rocksim/RockSimCommonConstants.java +++ b/core/src/net/sf/openrocket/file/rocksim/RockSimCommonConstants.java @@ -86,7 +86,7 @@ public class RockSimCommonConstants { public static final String RING_TAIL = "RingTail"; public static final String EXTERNAL_POD = "ExternalPod"; public static final String DETACHABLE = "Detachable"; - public static final String REMOVED = "Removed"; + public static final String REMOVED = "Removed"; // Mark pod as ejected public static final String TEXTURE = "Texture"; public static final String TUBE_COUNT = "TubeCount"; public static final String MAX_TUBES_ALLOWED = "MaxTubesAllowed"; diff --git a/core/src/net/sf/openrocket/rocketcomponent/BodyTube.java b/core/src/net/sf/openrocket/rocketcomponent/BodyTube.java index 8750cd132..d5b4943bf 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/BodyTube.java +++ b/core/src/net/sf/openrocket/rocketcomponent/BodyTube.java @@ -116,8 +116,8 @@ public class BodyTube extends SymmetricComponent implements BoxBounded, MotorMou @Override public void setOuterRadius(double radius) { for (RocketComponent listener : configListeners) { - if (listener instanceof BodyTube) { - ((BodyTube) listener).setOuterRadius(radius); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setOuterRadius(radius); } } @@ -251,8 +251,8 @@ public class BodyTube extends SymmetricComponent implements BoxBounded, MotorMou @Override public void setInnerRadius(double r) { for (RocketComponent listener : configListeners) { - if (listener instanceof BodyTube) { - ((BodyTube) listener).setInnerRadius(r); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setInnerRadius(r); } } @@ -399,10 +399,10 @@ public class BodyTube extends SymmetricComponent implements BoxBounded, MotorMou @Override public void setMotorConfig(MotorConfiguration newMotorConfig, FlightConfigurationId fcid){ for (RocketComponent listener : configListeners) { - if (listener instanceof BodyTube) { + if (listener instanceof MotorMount) { if (newMotorConfig != null) { - BodyTube tube = (BodyTube) listener; - MotorConfiguration config = tube.getMotorConfig(fcid); + MotorMount mount = (MotorMount) listener; + MotorConfiguration config = mount.getMotorConfig(fcid); config.copyFrom(newMotorConfig); } } @@ -440,8 +440,8 @@ public class BodyTube extends SymmetricComponent implements BoxBounded, MotorMou @Override public void setMotorMount(boolean _active){ for (RocketComponent listener : configListeners) { - if (listener instanceof BodyTube) { - ((BodyTube) listener).setMotorMount(_active); + if (listener instanceof MotorMount) { + ((MotorMount) listener).setMotorMount(_active); } } @@ -480,8 +480,8 @@ public class BodyTube extends SymmetricComponent implements BoxBounded, MotorMou @Override public void setMotorOverhang(double overhang) { for (RocketComponent listener : configListeners) { - if (listener instanceof BodyTube) { - ((BodyTube) listener).setMotorOverhang(overhang); + if (listener instanceof MotorMount) { + ((MotorMount) listener).setMotorOverhang(overhang); } } diff --git a/core/src/net/sf/openrocket/rocketcomponent/ComponentAssembly.java b/core/src/net/sf/openrocket/rocketcomponent/ComponentAssembly.java index ca18384fc..ec0ac0034 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/ComponentAssembly.java +++ b/core/src/net/sf/openrocket/rocketcomponent/ComponentAssembly.java @@ -138,9 +138,7 @@ public abstract class ComponentAssembly extends RocketComponent implements Axial @Override public void setAxialMethod( final AxialMethod newMethod ) { for (RocketComponent listener : configListeners) { - if (listener instanceof ComponentAssembly) { - ((ComponentAssembly) listener).setAxialMethod(newMethod); - } + listener.setAxialMethod(newMethod); } if (null == this.parent) { diff --git a/core/src/net/sf/openrocket/rocketcomponent/FinSet.java b/core/src/net/sf/openrocket/rocketcomponent/FinSet.java index 45fbd0b2c..1fa5bcacb 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/FinSet.java +++ b/core/src/net/sf/openrocket/rocketcomponent/FinSet.java @@ -5,6 +5,7 @@ import java.util.*; import java.util.ArrayList; +import net.sf.openrocket.rocketcomponent.position.AnglePositionable; import net.sf.openrocket.util.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -1310,8 +1311,8 @@ public abstract class FinSet extends ExternalComponent implements AxialPositiona @Override public void setAngleOffset(final double angleRadians) { for (RocketComponent listener : configListeners) { - if (listener instanceof FinSet) { - ((FinSet) listener).setAngleOffset(angleRadians); + if (listener instanceof AnglePositionable) { + ((AnglePositionable) listener).setAngleOffset(angleRadians); } } diff --git a/core/src/net/sf/openrocket/rocketcomponent/InnerTube.java b/core/src/net/sf/openrocket/rocketcomponent/InnerTube.java index c42aec1b0..6533d7f22 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/InnerTube.java +++ b/core/src/net/sf/openrocket/rocketcomponent/InnerTube.java @@ -320,8 +320,8 @@ public class InnerTube extends ThicknessRingComponent implements AxialPositionab @Override public void setMotorConfig( final MotorConfiguration newMotorConfig, final FlightConfigurationId fcid){ for (RocketComponent listener : configListeners) { - if (listener instanceof InnerTube) { - ((InnerTube) listener).setMotorConfig(newMotorConfig, fcid); + if (listener instanceof MotorMount) { + ((MotorMount) listener).setMotorConfig(newMotorConfig, fcid); } } @@ -356,8 +356,8 @@ public class InnerTube extends ThicknessRingComponent implements AxialPositionab @Override public void setMotorMount(boolean _active){ for (RocketComponent listener : configListeners) { - if (listener instanceof InnerTube) { - ((InnerTube) listener).setMotorMount(_active); + if (listener instanceof MotorMount) { + ((MotorMount) listener).setMotorMount(_active); } } @@ -397,8 +397,8 @@ public class InnerTube extends ThicknessRingComponent implements AxialPositionab @Override public void setMotorOverhang(double overhang) { for (RocketComponent listener : configListeners) { - if (listener instanceof InnerTube) { - ((InnerTube) listener).setMotorOverhang(overhang); + if (listener instanceof MotorMount) { + ((MotorMount) listener).setMotorOverhang(overhang); } } diff --git a/core/src/net/sf/openrocket/rocketcomponent/LaunchLug.java b/core/src/net/sf/openrocket/rocketcomponent/LaunchLug.java index 06aebbb2a..384d0998f 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/LaunchLug.java +++ b/core/src/net/sf/openrocket/rocketcomponent/LaunchLug.java @@ -47,8 +47,8 @@ public class LaunchLug extends Tube implements AnglePositionable, BoxBounded, Li @Override public void setOuterRadius(double radius) { for (RocketComponent listener : configListeners) { - if (listener instanceof LaunchLug) { - ((LaunchLug) listener).setOuterRadius(radius); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setOuterRadius(radius); } } @@ -68,8 +68,8 @@ public class LaunchLug extends Tube implements AnglePositionable, BoxBounded, Li @Override public void setInnerRadius(double innerRadius) { for (RocketComponent listener : configListeners) { - if (listener instanceof LaunchLug) { - ((LaunchLug) listener).setInnerRadius(innerRadius); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setInnerRadius(innerRadius); } } @@ -103,8 +103,8 @@ public class LaunchLug extends Tube implements AnglePositionable, BoxBounded, Li @Override public void setAngleOffset(double newAngleRadians) { for (RocketComponent listener : configListeners) { - if (listener instanceof LaunchLug) { - ((LaunchLug) listener).setAngleOffset(newAngleRadians); + if (listener instanceof AnglePositionable) { + ((AnglePositionable) listener).setAngleOffset(newAngleRadians); } } @@ -276,8 +276,8 @@ public class LaunchLug extends Tube implements AnglePositionable, BoxBounded, Li @Override public void setInstanceSeparation(final double _separation){ for (RocketComponent listener : configListeners) { - if (listener instanceof LaunchLug) { - ((LaunchLug) listener).setInstanceSeparation(_separation); + if (listener instanceof LineInstanceable) { + ((LineInstanceable) listener).setInstanceSeparation(_separation); } } @@ -291,9 +291,7 @@ public class LaunchLug extends Tube implements AnglePositionable, BoxBounded, Li @Override public void setInstanceCount( final int newCount ){ for (RocketComponent listener : configListeners) { - if (listener instanceof LaunchLug) { - ((LaunchLug) listener).setInstanceCount(newCount); - } + listener.setInstanceCount(newCount); } if (newCount == this.instanceCount || newCount <= 0) { diff --git a/core/src/net/sf/openrocket/rocketcomponent/ParallelStage.java b/core/src/net/sf/openrocket/rocketcomponent/ParallelStage.java index d09b71f54..f788312e9 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/ParallelStage.java +++ b/core/src/net/sf/openrocket/rocketcomponent/ParallelStage.java @@ -5,8 +5,10 @@ import java.util.Collection; import net.sf.openrocket.l10n.Translator; import net.sf.openrocket.rocketcomponent.position.AngleMethod; +import net.sf.openrocket.rocketcomponent.position.AnglePositionable; import net.sf.openrocket.rocketcomponent.position.AxialMethod; import net.sf.openrocket.rocketcomponent.position.RadiusMethod; +import net.sf.openrocket.rocketcomponent.position.RadiusPositionable; import net.sf.openrocket.startup.Application; import net.sf.openrocket.util.Coordinate; import net.sf.openrocket.util.MathUtil; @@ -118,9 +120,7 @@ public class ParallelStage extends AxialStage implements FlightConfigurableCompo @Override public void setInstanceCount( final int newCount ){ for (RocketComponent listener : configListeners) { - if (listener instanceof ParallelStage) { - ((ParallelStage) listener).setInstanceCount(newCount); - } + listener.setInstanceCount(newCount); } mutex.verify(); @@ -182,9 +182,7 @@ public class ParallelStage extends AxialStage implements FlightConfigurableCompo @Override public void setAxialMethod(final AxialMethod _newPosition) { for (RocketComponent listener : configListeners) { - if (listener instanceof ParallelStage) { - ((ParallelStage) listener).setAxialMethod(_newPosition); - } + listener.setAxialMethod(_newPosition); } if (null == this.parent) { @@ -199,8 +197,8 @@ public class ParallelStage extends AxialStage implements FlightConfigurableCompo @Override public void setRadiusOffset(final double radius_m) { for (RocketComponent listener : configListeners) { - if (listener instanceof ParallelStage) { - ((ParallelStage) listener).setRadiusOffset(radius_m); + if (listener instanceof RadiusPositionable) { + ((RadiusPositionable) listener).setRadiusOffset(radius_m); } } @@ -217,8 +215,8 @@ public class ParallelStage extends AxialStage implements FlightConfigurableCompo @Override public void setAngleOffset(final double angle_rad) { for (RocketComponent listener : configListeners) { - if (listener instanceof ParallelStage) { - ((ParallelStage) listener).setAngleOffset(angle_rad); + if (listener instanceof AnglePositionable) { + ((AnglePositionable) listener).setAngleOffset(angle_rad); } } @@ -230,8 +228,8 @@ public class ParallelStage extends AxialStage implements FlightConfigurableCompo @Override public void setRadius(RadiusMethod requestedMethod, double requestedRadius ) { for (RocketComponent listener : configListeners) { - if (listener instanceof ParallelStage) { - ((ParallelStage) listener).setRadius(requestedMethod, requestedRadius); + if (listener instanceof RadiusPositionable) { + ((RadiusPositionable) listener).setRadius(requestedMethod, requestedRadius); } } @@ -257,8 +255,8 @@ public class ParallelStage extends AxialStage implements FlightConfigurableCompo @Override public void setAngleMethod(AngleMethod newAngleMethod ) { for (RocketComponent listener : configListeners) { - if (listener instanceof ParallelStage) { - ((ParallelStage) listener).setAngleMethod(newAngleMethod); + if (listener instanceof AnglePositionable) { + ((AnglePositionable) listener).setAngleMethod(newAngleMethod); } } @@ -275,8 +273,8 @@ public class ParallelStage extends AxialStage implements FlightConfigurableCompo @Override public void setRadiusMethod(RadiusMethod newMethod) { for (RocketComponent listener : configListeners) { - if (listener instanceof ParallelStage) { - ((ParallelStage) listener).setRadiusMethod(newMethod); + if (listener instanceof RadiusPositionable) { + ((RadiusPositionable) listener).setRadiusMethod(newMethod); } } diff --git a/core/src/net/sf/openrocket/rocketcomponent/PodSet.java b/core/src/net/sf/openrocket/rocketcomponent/PodSet.java index 0c163a50a..938f5af39 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/PodSet.java +++ b/core/src/net/sf/openrocket/rocketcomponent/PodSet.java @@ -3,8 +3,10 @@ package net.sf.openrocket.rocketcomponent; import net.sf.openrocket.l10n.Translator; import net.sf.openrocket.rocketcomponent.position.AngleMethod; +import net.sf.openrocket.rocketcomponent.position.AnglePositionable; import net.sf.openrocket.rocketcomponent.position.AxialMethod; import net.sf.openrocket.rocketcomponent.position.RadiusMethod; +import net.sf.openrocket.rocketcomponent.position.RadiusPositionable; import net.sf.openrocket.startup.Application; import net.sf.openrocket.util.BugException; import net.sf.openrocket.util.Coordinate; @@ -165,9 +167,7 @@ public class PodSet extends ComponentAssembly implements RingInstanceable { @Override public void setInstanceCount(int newCount ){ for (RocketComponent listener : configListeners) { - if (listener instanceof PodSet) { - ((PodSet) listener).setInstanceCount(newCount); - } + listener.setInstanceCount(newCount); } mutex.verify(); @@ -198,8 +198,8 @@ public class PodSet extends ComponentAssembly implements RingInstanceable { @Override public void setAngleOffset(double angle_rad) { for (RocketComponent listener : configListeners) { - if (listener instanceof PodSet) { - ((PodSet) listener).setAngleOffset(angle_rad); + if (listener instanceof AnglePositionable) { + ((AnglePositionable) listener).setAngleOffset(angle_rad); } } @@ -220,8 +220,8 @@ public class PodSet extends ComponentAssembly implements RingInstanceable { @Override public void setRadiusOffset(double radius_m) { for (RocketComponent listener : configListeners) { - if (listener instanceof PodSet) { - ((PodSet) listener).setRadiusOffset(radius_m); + if (listener instanceof RadiusPositionable) { + ((RadiusPositionable) listener).setRadiusOffset(radius_m); } } @@ -245,8 +245,8 @@ public class PodSet extends ComponentAssembly implements RingInstanceable { @Override public void setRadiusMethod(RadiusMethod newMethod ) { for (RocketComponent listener : configListeners) { - if (listener instanceof PodSet) { - ((PodSet) listener).setRadiusMethod(newMethod); + if (listener instanceof RadiusPositionable) { + ((RadiusPositionable) listener).setRadiusMethod(newMethod); } } @@ -260,8 +260,8 @@ public class PodSet extends ComponentAssembly implements RingInstanceable { @Override public void setRadius(RadiusMethod requestMethod, double requestRadius ) { for (RocketComponent listener : configListeners) { - if (listener instanceof PodSet) { - ((PodSet) listener).setRadius(requestMethod, requestRadius); + if (listener instanceof RadiusPositionable) { + ((RadiusPositionable) listener).setRadius(requestMethod, requestRadius); } } diff --git a/core/src/net/sf/openrocket/rocketcomponent/RadiusRingComponent.java b/core/src/net/sf/openrocket/rocketcomponent/RadiusRingComponent.java index 75b58b3a9..df0564024 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/RadiusRingComponent.java +++ b/core/src/net/sf/openrocket/rocketcomponent/RadiusRingComponent.java @@ -53,8 +53,8 @@ public abstract class RadiusRingComponent extends RingComponent implements Coaxi r = Math.max(r,0); for (RocketComponent listener : configListeners) { - if (listener instanceof RadiusRingComponent) { - ((RadiusRingComponent) listener).setOuterRadius(r); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setOuterRadius(r); } } @@ -82,8 +82,8 @@ public abstract class RadiusRingComponent extends RingComponent implements Coaxi r = Math.max(r,0); for (RocketComponent listener : configListeners) { - if (listener instanceof RadiusRingComponent) { - ((RadiusRingComponent) listener).setInnerRadius(r); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setInnerRadius(r); } } @@ -109,8 +109,8 @@ public abstract class RadiusRingComponent extends RingComponent implements Coaxi @Override public void setThickness(double thickness) { for (RocketComponent listener : configListeners) { - if (listener instanceof RadiusRingComponent) { - ((RadiusRingComponent) listener).setThickness(thickness); + if (listener instanceof RingComponent) { + ((RingComponent) listener).setThickness(thickness); } } @@ -131,8 +131,8 @@ public abstract class RadiusRingComponent extends RingComponent implements Coaxi this.instanceSeparation = _separation; for (RocketComponent listener : configListeners) { - if (listener instanceof RadiusRingComponent) { - ((RadiusRingComponent) listener).setInstanceSeparation(_separation); + if (listener instanceof LineInstanceable) { + ((LineInstanceable) listener).setInstanceSeparation(_separation); } } } @@ -140,9 +140,7 @@ public abstract class RadiusRingComponent extends RingComponent implements Coaxi @Override public void setInstanceCount( final int newCount ){ for (RocketComponent listener : configListeners) { - if (listener instanceof RadiusRingComponent) { - ((RadiusRingComponent) listener).setInstanceCount(newCount); - } + listener.setInstanceCount(newCount); } if( 0 < newCount ){ diff --git a/core/src/net/sf/openrocket/rocketcomponent/RailButton.java b/core/src/net/sf/openrocket/rocketcomponent/RailButton.java index 17e270109..23b48ef85 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/RailButton.java +++ b/core/src/net/sf/openrocket/rocketcomponent/RailButton.java @@ -227,8 +227,8 @@ public class RailButton extends ExternalComponent implements AnglePositionable, @Override public void setAngleOffset(double angle_rad){ for (RocketComponent listener : configListeners) { - if (listener instanceof RailButton) { - ((RailButton) listener).setAngleOffset(angle_rad); + if (listener instanceof AnglePositionable) { + ((AnglePositionable) listener).setAngleOffset(angle_rad); } } @@ -316,8 +316,8 @@ public class RailButton extends ExternalComponent implements AnglePositionable, @Override public void setInstanceSeparation(double _separation){ for (RocketComponent listener : configListeners) { - if (listener instanceof RailButton) { - ((RailButton) listener).setInstanceSeparation(_separation); + if (listener instanceof LineInstanceable) { + ((LineInstanceable) listener).setInstanceSeparation(_separation); } } @@ -331,9 +331,7 @@ public class RailButton extends ExternalComponent implements AnglePositionable, @Override public void setInstanceCount(int newCount ){ for (RocketComponent listener : configListeners) { - if (listener instanceof RailButton) { - ((RailButton) listener).setInstanceCount(newCount); - } + listener.setInstanceCount(newCount); } if (newCount == this.instanceCount || newCount <= 0) { diff --git a/core/src/net/sf/openrocket/rocketcomponent/RocketComponent.java b/core/src/net/sf/openrocket/rocketcomponent/RocketComponent.java index 8bc22cfbf..ca32e222f 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/RocketComponent.java +++ b/core/src/net/sf/openrocket/rocketcomponent/RocketComponent.java @@ -2631,7 +2631,7 @@ public abstract class RocketComponent implements ChangeSource, Cloneable, Iterab if (listener == null) { return false; } - if (listener.getConfigListeners().size() > 0) { + if (!listener.getConfigListeners().isEmpty()) { throw new IllegalArgumentException("Listener already has config listeners"); } if (configListeners.contains(listener) || listener == this) { diff --git a/core/src/net/sf/openrocket/rocketcomponent/Sleeve.java b/core/src/net/sf/openrocket/rocketcomponent/Sleeve.java index 8022e5f63..b1bdf0b29 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/Sleeve.java +++ b/core/src/net/sf/openrocket/rocketcomponent/Sleeve.java @@ -36,8 +36,8 @@ public class Sleeve extends RingComponent { @Override public void setOuterRadius(double r) { for (RocketComponent listener : configListeners) { - if (listener instanceof Sleeve) { - ((Sleeve) listener).setOuterRadius(r); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setOuterRadius(r); } } @@ -69,8 +69,8 @@ public class Sleeve extends RingComponent { @Override public void setInnerRadius(double r) { for (RocketComponent listener : configListeners) { - if (listener instanceof Sleeve) { - ((Sleeve) listener).setInnerRadius(r); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setInnerRadius(r); } } @@ -89,8 +89,8 @@ public class Sleeve extends RingComponent { @Override public void setThickness(double t) { for (RocketComponent listener : configListeners) { - if (listener instanceof Sleeve) { - ((Sleeve) listener).setThickness(t); + if (listener instanceof RingComponent) { + ((RingComponent) listener).setThickness(t); } } diff --git a/core/src/net/sf/openrocket/rocketcomponent/ThicknessRingComponent.java b/core/src/net/sf/openrocket/rocketcomponent/ThicknessRingComponent.java index 908f28a84..16c5d71b7 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/ThicknessRingComponent.java +++ b/core/src/net/sf/openrocket/rocketcomponent/ThicknessRingComponent.java @@ -53,8 +53,8 @@ public abstract class ThicknessRingComponent extends RingComponent { @Override public void setOuterRadius(double r) { for (RocketComponent listener : configListeners) { - if (listener instanceof ThicknessRingComponent) { - ((ThicknessRingComponent) listener).setOuterRadius(r); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setOuterRadius(r); } } @@ -82,8 +82,8 @@ public abstract class ThicknessRingComponent extends RingComponent { @Override public void setThickness(double thickness) { for (RocketComponent listener : configListeners) { - if (listener instanceof ThicknessRingComponent) { - ((ThicknessRingComponent) listener).setThickness(thickness); + if (listener instanceof RingComponent) { + ((RingComponent) listener).setThickness(thickness); } } @@ -108,8 +108,8 @@ public abstract class ThicknessRingComponent extends RingComponent { @Override public void setInnerRadius(double r) { for (RocketComponent listener : configListeners) { - if (listener instanceof ThicknessRingComponent) { - ((ThicknessRingComponent) listener).setInnerRadius(r); + if (listener instanceof Coaxial) { + ((Coaxial) listener).setInnerRadius(r); } }