List<MessageParam> responseMps = new ArrayList<MessageParam>();
List<MessageParam> mps = msg.getMsgParams();
MessageType cc = msg.getMessageType();
MessageType responseMessageType;
if(cc.equals(MessageType.BID)) {
Card card = getCard(mps);
int min = findParameterAsInt(MessageParamConstants.MIN, mps);
int max = findParameterAsInt(MessageParamConstants.MAX, mps);
int bidNotAllowed = findParameterAsInt(MessageParamConstants.BID_NOT_ALLOWED, mps);
int bid = player.bid(card, min, max, bidNotAllowed);
responseMessageType = MessageType.BID;
responseMps.add(new MessageParam(MessageParamConstants.BID, String.valueOf(bid)));
//} else if (cc.equals(CommandConstants.GET_HAND)) {
} else if (cc.equals(MessageType.GIVE_CARD)) {
Card card = getCard(mps);
player.giveCard(card);
responseMessageType = MessageType.OK;
} else if (cc.equals(MessageType.PICK_TRUMP)) {
Suit suit = player.pickTrump();
responseMessageType = MessageType.OK;
responseMps.add(new MessageParam(MessageParamConstants.SUIT, suit.getShortName()));
} else if (cc.equals(MessageType.PLAY_CARD)) {
Card card = player.playCard();
responseMessageType = MessageType.OK;
responseMps.add(new MessageParam(MessageParamConstants.SUIT, card.getSuit().getShortName()));
responseMps.add(new MessageParam(MessageParamConstants.VALUE, card.getValue().getShortNm()));
} else if (cc.equals(MessageType.PLAY_CARD_IS_NOT_VALID)) {
Card card = getCard(mps);
player.playCardIsNotValid(card);
responseMessageType = MessageType.OK;
} else if (cc.equals(MessageType.PLAY_CARD_IS_VALID)) {
Card card = getCard(mps);
player.playCardIsValid(card);
responseMessageType = MessageType.OK;
} else {
responseMessageType = MessageType.OK;
}