*Marked Stack alteration methods as synchronized

This commit is contained in:
Hellfish
2013-05-03 06:02:28 +00:00
parent c130d0fc1e
commit dd11711a56

View File

@@ -162,7 +162,7 @@ public class MagicStack extends MyObservable {
* @param ability * @param ability
* a {@link forge.card.spellability.SpellAbility} object. * a {@link forge.card.spellability.SpellAbility} object.
*/ */
public final void addAndUnfreeze(final SpellAbility ability) { public final synchronized void addAndUnfreeze(final SpellAbility ability) {
ability.getRestrictions().abilityActivated(); ability.getRestrictions().abilityActivated();
if ((ability.getRestrictions().getActivationNumberSacrifice() != -1) if ((ability.getRestrictions().getActivationNumberSacrifice() != -1)
&& (ability.getRestrictions().getNumberTurnActivations() >= ability.getRestrictions() && (ability.getRestrictions().getNumberTurnActivations() >= ability.getRestrictions()
@@ -224,7 +224,7 @@ public class MagicStack extends MyObservable {
* @param sa * @param sa
* a SpellAbility. * a SpellAbility.
*/ */
public final void removeFromFrozenStack(SpellAbility sa) { public final synchronized void removeFromFrozenStack(SpellAbility sa) {
SpellAbilityStackInstance si = this.getInstanceFromSpellAbility(sa); SpellAbilityStackInstance si = this.getInstanceFromSpellAbility(sa);
this.getFrozenStack().remove(si); this.getFrozenStack().remove(si);
if (this.getFrozenStack().isEmpty()) { if (this.getFrozenStack().isEmpty()) {
@@ -268,7 +268,7 @@ public class MagicStack extends MyObservable {
* @param useX * @param useX
* a boolean. * a boolean.
*/ */
public final void add(final SpellAbility sp, final boolean useX) { public final synchronized void add(final SpellAbility sp, final boolean useX) {
if (!useX) { if (!useX) {
this.add(sp); this.add(sp);
} else { } else {
@@ -297,7 +297,7 @@ public class MagicStack extends MyObservable {
* @param sp * @param sp
* a {@link forge.card.spellability.SpellAbility} object. * a {@link forge.card.spellability.SpellAbility} object.
*/ */
public final void add(final SpellAbility sp) { public final synchronized void add(final SpellAbility sp) {
FThreads.assertExecutedByEdt(false); FThreads.assertExecutedByEdt(false);
final ArrayList<TargetChoices> chosenTargets = sp.getAllTargetChoices(); final ArrayList<TargetChoices> chosenTargets = sp.getAllTargetChoices();
@@ -582,7 +582,7 @@ public class MagicStack extends MyObservable {
* resolveStack. * resolveStack.
* </p> * </p>
*/ */
public final void resolveStack() { public final synchronized void resolveStack() {
// Resolving the Stack // Resolving the Stack
// TODO: change to use forge.view.FView? // TODO: change to use forge.view.FView?
@@ -669,7 +669,7 @@ public class MagicStack extends MyObservable {
* a boolean. * a boolean.
* @since 1.0.15 * @since 1.0.15
*/ */
public final void removeCardFromStack(final SpellAbility sa, final boolean fizzle) { public final synchronized void removeCardFromStack(final SpellAbility sa, final boolean fizzle) {
Card source = sa.getSourceCard(); Card source = sa.getSourceCard();
// do nothing // do nothing
@@ -843,7 +843,7 @@ public class MagicStack extends MyObservable {
* *
* @return a {@link forge.card.spellability.SpellAbility} object. * @return a {@link forge.card.spellability.SpellAbility} object.
*/ */
public final SpellAbility pop() { public final synchronized SpellAbility pop() {
final SpellAbilityStackInstance si = this.getStack().pop(); final SpellAbilityStackInstance si = this.getStack().pop();
final SpellAbility sp = si.getSpellAbility(); final SpellAbility sp = si.getSpellAbility();
return sp; return sp;
@@ -915,7 +915,7 @@ public class MagicStack extends MyObservable {
* @param sa * @param sa
* a {@link forge.card.spellability.SpellAbility} object. * a {@link forge.card.spellability.SpellAbility} object.
*/ */
public final void remove(final SpellAbility sa) { public final synchronized void remove(final SpellAbility sa) {
final SpellAbilityStackInstance si = this.getInstanceFromSpellAbility(sa); final SpellAbilityStackInstance si = this.getInstanceFromSpellAbility(sa);
if (si == null) { if (si == null) {
@@ -934,7 +934,7 @@ public class MagicStack extends MyObservable {
* a {@link forge.card.spellability.SpellAbilityStackInstance} * a {@link forge.card.spellability.SpellAbilityStackInstance}
* object. * object.
*/ */
public final void remove(final SpellAbilityStackInstance si) { public final synchronized void remove(final SpellAbilityStackInstance si) {
this.getStack().remove(si); this.getStack().remove(si);
this.getFrozenStack().remove(si); this.getFrozenStack().remove(si);
this.updateObservers(); this.updateObservers();