package aalg.mailer;

public class CommandFactory extends PersistableFactory<ICommand> {

	private static final int NOOP_ID = 0;
	private static final int STORMSG_ID = 1;
	private static final int STORNOT_ID = 2;
	private static final int RSNDREQ_ID = 3;
	private static final int AUTHMSG_ID = 4;
	private static final int RECVMSG_ID = 5;
	private static final int RMMSG_ID = 6;
	private static final int NOTID_ID = 7;
	private static final int LISTNOT_ID = 8;
	
	public CommandFactory() {
		registerClass(NOOP_ID, CommandNoop.class);
		registerClass(STORMSG_ID, CommandStorMsg.class);
		registerClass(STORNOT_ID, CommandStorNot.class);
		registerClass(RSNDREQ_ID, CommandRsndReq.class);
		registerClass(AUTHMSG_ID, CommandAuthMsg.class);
		registerClass(RECVMSG_ID, CommandRecvMsg.class);
		registerClass(RMMSG_ID, CommandRmMsg.class);
		registerClass(NOTID_ID, CommandNotId.class);
		registerClass(LISTNOT_ID, CommandListNot.class);
	}
}
