aboutsummaryrefslogtreecommitdiffstats
path: root/docs/modules/ROOT/examples/spacewar/EnsureShipIsAlive.java
diff options
context:
space:
mode:
Diffstat (limited to 'docs/modules/ROOT/examples/spacewar/EnsureShipIsAlive.java')
-rw-r--r--docs/modules/ROOT/examples/spacewar/EnsureShipIsAlive.java35
1 files changed, 35 insertions, 0 deletions
diff --git a/docs/modules/ROOT/examples/spacewar/EnsureShipIsAlive.java b/docs/modules/ROOT/examples/spacewar/EnsureShipIsAlive.java
new file mode 100644
index 000000000..f7b949a92
--- /dev/null
+++ b/docs/modules/ROOT/examples/spacewar/EnsureShipIsAlive.java
@@ -0,0 +1,35 @@
+/*
+
+Copyright (c) Xerox Corporation 1998-2002. All rights reserved.
+
+Use and copying of this software and preparation of derivative works based
+upon this software are permitted. Any distribution of this software or
+derivative works must comply with all applicable United States export control
+laws.
+
+This software is made available AS IS, and Xerox Corporation makes no warranty
+about the software, its performance or its conformity to any specification.
+
+|<--- this code is formatted to fit into 80 columns --->|
+|<--- this code is formatted to fit into 80 columns --->|
+|<--- this code is formatted to fit into 80 columns --->|
+
+Ship.java
+Part of the Spacewar system.
+
+*/
+
+package spacewar;
+
+/**
+ * This aspect makes sure that the ship is alive before performing any console
+ * commands.
+ *
+ */
+aspect EnsureShipIsAlive {
+ void around (Ship ship): Ship.helmCommandsCut(ship) {
+ if ( ship.isAlive() ) {
+ proceed(ship);
+ }
+ }
+}