1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package net.sf.magicproject.token;
20
21 import java.io.IOException;
22 import java.io.InputStream;
23 import java.io.OutputStream;
24
25 /***
26 * @author <a href="mailto:fabdouglas@users.sourceforge.net">Fabrice Daugan </a>
27 * @since 0.85
28 */
29 public enum VisibilityChange {
30
31 /***
32 * The zone/card visibility is changed for the controller of this zone/card.
33 */
34 controller,
35
36 /***
37 * The zone/card visibility is changed for the opponent of controller of this
38 * action.
39 */
40 opponent,
41
42 /***
43 * The zone/card visibility is changed for you, the controller of this action.
44 */
45 you,
46
47 /***
48 * The zone/card visibility is changed for everyone.
49 */
50 everyone;
51
52 /***
53 * Wrtite this enum to the given outputstream.
54 *
55 * @param out
56 * the stream ths enum would be written.
57 * @throws IOException
58 * If some other I/O error occurs
59 */
60 public void serialize(OutputStream out) throws IOException {
61 out.write(ordinal());
62 }
63
64 /***
65 * Read and return the enum from the given inputstream.
66 *
67 * @param input
68 * the stream containing the enum to read.
69 * @return the enum from the given inputstream.
70 * @throws IOException
71 * If some other I/O error occurs
72 */
73 public static VisibilityChange deserialize(InputStream input)
74 throws IOException {
75 return values()[input.read()];
76 }
77
78 }