package net.johnewart.gearman.constants; /** * Created with IntelliJ IDEA. * User: jewart * Date: 11/30/12 * Time: 8:01 AM * To change this template use File | Settings | File Templates. */ public enum PacketType { CAN_DO, // REQ Worker CANT_DO, // REQ Worker RESET_ABILITIES, // REQ Worker PRE_SLEEP, // REQ Worker NOTHING, // - - NOOP, // RES Worker SUBMIT_JOB, // REQ Client JOB_CREATED, // RES Client GRAB_JOB, // REQ Worker NO_JOB, // RES Worker JOB_ASSIGN, // RES Worker WORK_STATUS, // REQ Worker // RES Client WORK_COMPLETE, // REQ Worker // RES Client WORK_FAIL, // REQ Worker // RES Client GET_STATUS, // REQ Client ECHO_REQ, // REQ Client/Worker ECHO_RES, // RES Client/Worker SUBMIT_JOB_BG, // REQ Client ERROR, // RES Client/Worker STATUS_RES, // RES Client SUBMIT_JOB_HIGH, // REQ Client SET_CLIENT_ID, // REQ Worker CAN_DO_TIMEOUT, // REQ Worker ALL_YOURS, // REQ Worker WORK_EXCEPTION, // REQ Worker // RES Client OPTION_REQ, // REQ Client/Worker OPTION_RES, // RES Client/Worker WORK_DATA, // REQ Worker // RES Client WORK_WARNING, // REQ Worker // RES Client GRAB_JOB_UNIQ, // REQ Worker JOB_ASSIGN_UNIQ, // RES Worker SUBMIT_JOB_HIGH_BG, // REQ Client SUBMIT_JOB_LOW, // REQ Client SUBMIT_JOB_LOW_BG, // REQ Client SUBMIT_JOB_SCHED, // REQ Client SUBMIT_JOB_EPOCH, // REQ Client SUBMIT_REDUCE_JOB, // REQ Client SUBMIT_REDUCE_JOB_BACKGROUND, // REQ Client GRAB_JOB_ALL, // REQ Worker JOB_ASSIGN_ALL, // RES Worker GET_STATUS_UNIQUE, // REQ Client STATUS_RES_UNIQUE; // RES Client public int getIndex() { return ordinal() + 1; } public static PacketType fromPacketMagicNumber(int x) { switch(x) { case 1: return CAN_DO; case 2: return CANT_DO; case 3: return RESET_ABILITIES; case 4: return PRE_SLEEP; case 5: return NOTHING; case 6: return NOOP; case 7: return SUBMIT_JOB; case 8: return JOB_CREATED; case 9: return GRAB_JOB; case 10: return NO_JOB; case 11: return JOB_ASSIGN; case 12: return WORK_STATUS; case 13: return WORK_COMPLETE; case 14: return WORK_FAIL; case 15: return GET_STATUS; case 16: return ECHO_REQ; case 17: return ECHO_RES; case 18: return SUBMIT_JOB_BG; case 19: return ERROR; case 20: return STATUS_RES; case 21: return SUBMIT_JOB_HIGH; case 22: return SET_CLIENT_ID; case 23: return CAN_DO_TIMEOUT; case 24: return ALL_YOURS; case 25: return WORK_EXCEPTION; case 26: return OPTION_REQ; case 27: return OPTION_RES; case 28: return WORK_DATA; case 29: return WORK_WARNING; case 30: return GRAB_JOB_UNIQ; case 31: return JOB_ASSIGN_UNIQ; case 32: return SUBMIT_JOB_HIGH_BG; case 33: return SUBMIT_JOB_LOW; case 34: return SUBMIT_JOB_LOW_BG; case 35: return SUBMIT_JOB_SCHED; case 36: return SUBMIT_JOB_EPOCH; case 37: return SUBMIT_REDUCE_JOB; case 38: return SUBMIT_REDUCE_JOB_BACKGROUND; case 39: return GRAB_JOB_ALL; case 40: return JOB_ASSIGN_ALL; case 41: return GET_STATUS_UNIQUE; case 42: return STATUS_RES_UNIQUE; } return null; } }