public static String[] getCommand(String userCommand){
		assert userCommand != null;
		dataPacket = new String[DATAPACKET_SIZE];

		String firstWord = getFirstWord(userCommand);
		String commandInfo = removeFirstWord(userCommand);
		String commandType = TypeParser.getCommandType(firstWord);

		switch(commandType) {
		case TYPE_ADD :
			extractAdd(commandInfo);
			break;

		case TYPE_DELETE :
			extractDelete(commandInfo);
			break;

		case TYPE_MODIFY :
			extractModify(commandInfo);
			break;

		case TYPE_DISPLAY :
			extractDisplay(commandInfo);
			break;

		case TYPE_SEARCH :
			extractSearch(commandInfo);
			break;

		case TYPE_UNDO :
			extractUndo(commandInfo);
			break;

		case TYPE_EXIT :
			extractExit(commandInfo);
			break;

		case TYPE_ERROR :
			dataPacket[LOCATION_COMMAND_ID] = ERROR_WRONG_COMMAND;
			break;

		default :
			assert false;
			dataPacket[LOCATION_COMMAND_ID] = ERROR_UNKNOWN;
		}

		return dataPacket;
	}