@Override
	public void process(HttpServletRequest request,
			HttpServletResponse response, String mobileHash,
			List<String> message) throws Exception {
		EntityManager manager = EMF.get().createEntityManager();
		ChessUser user = manager.find(ChessUser.class, mobileHash);
		try {
			if (user == null) {
				if (DB_Util.findUserByUserName(manager, message.get(0).toLowerCase()) == null) {
					setJspPath("/jsp/homepage.jsp");
					EntityTransaction transaction=manager.getTransaction();
					try{
					transaction.begin();
					manager.persist(new ChessUser(mobileHash, message.get(0)
							.toLowerCase(), 1200,request.getParameter("txtweb-protocol")));
					transaction.commit();
					request.setAttribute("__message", "Currently Image Chessboard is your default board. Please change default board, if you are facing any issues ");
					Logger.getLogger(CreateUserServlet.class.getName()).info("user created with username = "+message.get(0).toLowerCase());
					}
					catch(Exception e)
					{
						try{
							transaction.rollback();
						}
						catch(Exception ex)
						{
							ex.printStackTrace();
						}
						throw new Exception("Unable to create new user (Internal Error), Please try again",e);
					}
				} else {
					setJspPath("/jsp/common/InputHandler.jsp");
					request.setAttribute("__endPoint", getServiceEndPoint());
					request.setAttribute("__paramName", "User Name");
					request.setAttribute(
							"__message",
							message.get(0).toLowerCase()+" is already been used by other user<br/> Please provide new UserName<br/>"+getParameterDetector().getParams().get(0).getHelpText());
					Logger.getLogger(CreateUserServlet.class.getName()).info("not able to create username(Already exist) = "+message.get(0).toLowerCase());
				}
			}
			
		} finally {
			manager.close();
		}
	}