View Javadoc
1   package net.sourceforge.rpgee.utility;
2   
3   import net.sourceforge.rpgee.messaging.RpgMessage;
4   import net.sourceforge.rpgee.messaging.exceptions.RpgMessageException;
5   
6   public enum SystemMessages implements RpgMessage {
7       START, REGISTER_CLIENT, DEREGISTER_CLIENT, REFRESH_CLIENT, STATUS_CLIENT, STATUS_SELF, STOP, SHUTDOWN;
8   
9       public final Object getMessage() throws RpgMessageException {
10          return new SystemMessage(this);
11      }
12  
13      private final class SystemMessage implements RpgMessage<SystemMessages> {
14  
15          /**
16           * 
17           */
18          private static final long serialVersionUID = -4627583332288420030L;
19          private SystemMessages message;
20  
21          public SystemMessage(SystemMessages s) {
22              this.message = s;
23          }
24  
25          public SystemMessages getMessage() throws RpgMessageException {
26              return message;
27          }
28  
29          public RpgMessage<SystemMessages> duplicate() {
30              return new SystemMessage(message);
31          }
32  
33          public boolean isFinishedProcessing() {
34              return false;
35          }
36  
37          public void setFinishedProcessing() {
38          }
39      }
40  
41      public RpgMessage duplicate() {
42          SystemMessage m = null;
43          try {
44              m = (SystemMessage) this.getMessage();
45          } catch (RpgMessageException e) {
46              // @TODO Auto-generated catch block
47          }
48          return m.duplicate();
49      }
50      
51      /** 
52       * System messages never complete
53       */
54  
55      public boolean isFinishedProcessing() {
56          return false;
57      }
58  
59      public void setFinishedProcessing() {
60      }
61  
62  }