Hit series powered by Java, studio execs deny
Posted by kirillcool on April 23, 2006 at 3:45 AM PDT
Now that major drama series are about to be available for legal downloads, rumors about the behind-the-scenes engines start spreading. Here is a sample class behind Fox megahit, "24". Note that the code below may change from time to time and does not represent the quality of the final product.
<font color="#7f0055"><b>package </b></font><font color="#000000">javax.ctu;</font><br />
<font color="#ffffff"></font><br />
<font color="#7f0055"><b>import </b></font><font color="#000000">java.awt.event.ActionEvent;</font><br />
<font color="#7f0055"><b>import </b></font><font color="#000000">java.awt.event.ActionListener;</font><br />
<font color="#7f0055"><b>import </b></font><font color="#000000">java.beans.PropertyChangeEvent;</font><br />
<font color="#7f0055"><b>import </b></font><font color="#000000">java.beans.PropertyChangeListener;</font><br />
<font color="#7f0055"><b>import </b></font><font color="#000000">java.util.*;</font><br />
<font color="#ffffff"></font><br />
<font color="#7f0055"><b>import </b></font><font color="#000000">javax.swing.Timer;</font><br />
<font color="#ffffff"></font><br />
<font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* CTU agent. </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#7f0055"><b>public class </b></font><font color="#000000">Agent </font><font color="#7f0055"><b>implements </b></font><font color="#000000">PropertyChangeListener </font><font color="#000000">{</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Name of </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>protected </b></font><font color="#000000">String name;</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Property support.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>protected </b></font><font color="#000000">List<PropertyChangeListener> propertySupport;</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Can contain a single entity.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public static interface </b></font><font color="#000000">BodyBag<T> </font><font color="#7f0055"><b>extends </b></font><font color="#000000">Wrapper<T> </font><font color="#000000">{</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Enum for the available bodily operations.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public enum </b></font><font color="#000000">BasicBodilyOperation </font><font color="#000000">{</font><br />
<font color="#ffffff"> </font><font color="#000000">EAT, DRINK, WASH_HANDS, SLEEP, PEE, YAWN, BLINK, PERSPIRATE</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Sets new value for the agent name.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@param </font><font color="#3f5fbf">name</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* New value for the agent name.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>void </b></font><font color="#000000">setName</font><font color="#000000">(</font><font color="#000000">String name</font><font color="#000000">) {</font><br />
<font color="#ffffff"> </font><font color="#000000">String oldName = </font><font color="#7f0055"><b>this</b></font><font color="#000000">.name;</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>this</b></font><font color="#000000">.name = name;</font><br />
<font color="#ffffff"> </font><font color="#000000">PropertyChangeEvent event = </font><font color="#7f0055"><b>new </b></font><font color="#000000">PropertyChangeEvent</font><font color="#000000">(</font><font color="#000000">this, </font><font color="#2a00ff">"name"</font><font color="#000000">,</font><br />
<font color="#ffffff"> </font><font color="#000000">oldName, name</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>for </b></font><font color="#000000">(</font><font color="#000000">PropertyChangeListener pcl : propertySupport</font><font color="#000000">)</font><br />
<font color="#ffffff"> </font><font color="#000000">pcl.propertyChange</font><font color="#000000">(</font><font color="#000000">event</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">/*</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">* (non-Javadoc)</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">* </font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">* @see java.beans.PropertyChangeListener#propertyChange(java.beans.PropertyChangeEvent)</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>void </b></font><font color="#000000">propertyChange</font><font color="#000000">(</font><font color="#7f0055"><b>final </b></font><font color="#000000">PropertyChangeEvent evt</font><font color="#000000">) {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"name"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#000000">evt.getPropertyName</font><font color="#000000">())) {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#000000">evt.getOldValue</font><font color="#000000">() </font><font color="#000000">== </font><font color="#7f0055"><b>null</b></font><font color="#000000">) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// This is the first time the agent name becomes known</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Curtis"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#000000">evt.getNewValue</font><font color="#000000">())) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// defer to later stage</font><br />
<font color="#ffffff"> </font><font color="#000000">} </font><font color="#7f0055"><b>else </b></font><font color="#000000">{</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// choose random time in next five minutes</font><br />
<font color="#ffffff"> </font><font color="#000000">Timer timer = </font><font color="#7f0055"><b>new </b></font><font color="#000000">Timer</font><font color="#000000">((</font><font color="#7f0055"><b>int</b></font><font color="#000000">) (</font><font color="#990000">5 </font><font color="#000000">* </font><font color="#990000">60 </font><font color="#000000">* </font><font color="#990000">1000 </font><font color="#000000">* Math</font><br />
<font color="#ffffff"> </font><font color="#000000">.random</font><font color="#000000">())</font><font color="#000000">, </font><font color="#7f0055"><b>new </b></font><font color="#000000">ActionListener</font><font color="#000000">() {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>void </b></font><font color="#000000">actionPerformed</font><font color="#000000">(</font><font color="#000000">ActionEvent e</font><font color="#000000">) {</font><br />
<font color="#ffffff"> </font><font color="#000000">Agent agent = </font><font color="#000000">(</font><font color="#000000">Agent</font><font color="#000000">) </font><font color="#000000">evt.getSource</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">agent.dispose</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#000000">})</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">timer.setRepeats</font><font color="#000000">(</font><font color="#7f0055"><b>false</b></font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">timer.start</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Disposes of this agent. See Bloch's Effective Java chapter 6 on why we</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* don't use finalizers.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>void </b></font><font color="#000000">dispose</font><font color="#000000">() {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Jack"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#000000">name</font><font color="#000000">) </font><font color="#000000">|| </font><font color="#2a00ff">"Kim"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#000000">name</font><font color="#000000">)</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// || "Tony".equals(name) || "Michelle".equals(name)</font><br />
<font color="#ffffff"> </font><font color="#000000">|| </font><font color="#2a00ff">"Chloe"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#000000">name</font><font color="#000000">)) {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>throw new </b></font><font color="#000000">UnsupportedOperationException</font><font color="#000000">(</font><font color="#2a00ff">"Agent '" </font><font color="#000000">+ </font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><br />
<font color="#ffffff"> </font><font color="#000000">+ </font><font color="#2a00ff">"' can not be killed due to rating concerns"</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name != </font><font color="#7f0055"><b>null</b></font><font color="#000000">) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// How long this agent has been known by name - take a small</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// pause accordingly letting the female audience weep a little.</font><br />
<font color="#ffffff"> </font><font color="#000000">Thread.currentThread</font><font color="#000000">()</font><font color="#000000">.sleep</font><font color="#000000">(</font><font color="#990000">1000 </font><font color="#000000">* Production.getStatus</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">))</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#000000">BodyBag<Agent> bb = </font><font color="#7f0055"><b>this</b></font><font color="#000000">.getBodyBag</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">bb.add</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Tests if </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent is loyal to CTU.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@return </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">true</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">if </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent is loyal to CTU,</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">false</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">otherwise.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@deprecated </font><font color="#3f5fbf">As of the latest release, use </font><font color="#3f3fbf">{@link #isLoyalToJack()}</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* instead.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#646464">@Deprecated</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>boolean </b></font><font color="#000000">isLoyalToCTU</font><font color="#000000">() {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// Commented when Nina got too old for the target 24-39 male audience.</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// return true;</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>throw new </b></font><font color="#000000">IrrelevantOperationException</font><font color="#000000">(</font><font color="#2a00ff">"Call isLoyalToJack() instead"</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Tests if </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent is loyal to Jack.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@return </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">true</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">if </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent is loyal to</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Jack, </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">false</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">otherwise.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>boolean </b></font><font color="#000000">isLoyalToJack</font><font color="#000000">() {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Jack"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><font color="#000000">)) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// may revise later when we run out of plausible ideas.</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return true</b></font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Curtis"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><font color="#000000">)) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// the least loveable by the target audience</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return false</b></font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Chloe"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><font color="#000000">)) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// not a real agent and has some imaginary computer skills</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return true</b></font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>double </b></font><font color="#000000">random = Math.random</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>int </b></font><font color="#000000">hoursTillSeasonEnd = Integer.parseInt</font><font color="#000000">(</font><font color="#000000">Production.getTitle</font><font color="#000000">())</font><br />
<font color="#ffffff"> </font><font color="#000000">- Production.getEpisodeNumber</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// Make more twists towards season end</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return </b></font><font color="#000000">(</font><font color="#000000">random / hoursTillSeasonEnd</font><font color="#000000">) </font><font color="#000000">> </font><font color="#990000">0.1</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Checks whether the specified bodily operation is supported.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@param </font><font color="#3f5fbf">operation</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Bodily operation.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@return </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">true</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">if the specified operation is supported,</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">false</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">otherwise.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>boolean </b></font><font color="#000000">supports</font><font color="#000000">(</font><font color="#000000">BasicBodilyOperation operation</font><font color="#000000">) {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#000000">operation == BasicBodilyOperation.BLINK</font><font color="#000000">)</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return </b></font><font color="#000000">!</font><font color="#2a00ff">"Jack"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return false</b></font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Returns the name of the love interest of </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@return </font><font color="#3f5fbf">The name of the love interest of </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@throws </font><font color="#3f5fbf">IrrelevantOperationException</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* if irrelevant.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#000000">String getLoveInterestName</font><font color="#000000">() {</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Jack"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><font color="#000000">)) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// return "Nina";</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// return "Teri";</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// return "Kate";</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// return "Audrey";</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return </b></font><font color="#2a00ff">"Work"</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Tony"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><font color="#000000">)) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// TODO - remove this piece of dead code</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return </b></font><font color="#2a00ff">"Michelle"</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>if </b></font><font color="#000000">(</font><font color="#2a00ff">"Michelle"</font><font color="#000000">.equals</font><font color="#000000">(</font><font color="#7f0055"><b>this</b></font><font color="#000000">.name</font><font color="#000000">)) {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// TODO - remove this piece of dead code</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return </b></font><font color="#2a00ff">"Tony"</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>throw new </b></font><font color="#000000">IrrelevantOperationException</font><font color="#000000">(</font><font color="#2a00ff">"No time for this"</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* Returns the locale of the current foe. Serves up as an excuse for proper</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* lack of internationalization.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@return </font><font color="#3f5fbf">The locale of the current foe.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public </b></font><font color="#000000">Locale getCurrentFoeLocale</font><font color="#000000">() {</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// Locale result = new Locale("sr", "CS");</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// Locale result = new Locale("es", "MX");</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// Locale result = new Locale("fa", "IR");</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// Locale result = new Locale("zh", "CN");</font><br />
<font color="#ffffff"> </font><font color="#3f7f5f">// Locale result = new Locale("ru", "RU");</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>return this</b></font><font color="#000000">.getCountry</font><font color="#000000">()</font><font color="#000000">.getLeader</font><font color="#000000">()</font><font color="#000000">.getLocale</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff"> </font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* To be implemented in native code. What this really means is that we are</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* not going to go into such insignificant details. OS-specific</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* implementation may borrow details from division implementation of</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#3f3fbf">{@link Nikita}</font><font color="#3f5fbf">.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">* </font><font color="#7f9fbf">@return </font><font color="#3f5fbf">Division of </font><font color="#7f7f9f"><code></font><font color="#3f5fbf">this</font><font color="#7f7f9f"></code> </font><font color="#3f5fbf">agent.</font><br />
<font color="#ffffff"> </font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff"> </font><font color="#7f0055"><b>public native </b></font><font color="#000000">Division getDivision</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#000000">}</font>
Blog Links >>
- Login or register to post comments
- Printer-friendly version
- kirillcool's blog
- 622 reads





