public static HashMap login(String userID, String password) {
		
		MessageLogger.logSecurityLoggingMessage(userID + " : LoginService -> login \r\n");
		HashMap map = new HashMap();
		String message = null;
		
		try{
			Timestamp currdateTime = 
				new Timestamp(Calendar.getInstance().getTime().getTime());
			// for demo purpose
			/*
			AdmTO admTO = null;
			if (userID.equalsIgnoreCase("ADMIN")){
				admTO = new AdmTO();
				admTO.setRole("ADM");				
			}else {
				admTO = new AdmTO();
				admTO.setRole("USR");
			}
			*/
			// end demo
			AdmTO admTO = SecurityManager.getInstance().login(userID, password, currdateTime, currdateTime);
			MessageLogger.logSecurityLoggingMessage(userID + " : LoginService -> Successful Login \r\n");
			map.put(Constants.ADMIN, admTO);
			return map;
		} catch (UserIDEmptyException e) {
			message = e.getMessage();				
			e.printStackTrace();
		} catch (PasswordEmptyException e) {
			message = e.getMessage();
			e.printStackTrace();
		} catch (InvalidUserIDException e) {
			message = e.getMessage();
			e.printStackTrace();
		} catch (InvalidPasswordException e) {
			message = e.getMessage();
			e.printStackTrace();
		} catch (NoAccessException e) {
			message = e.getMessage();
			e.printStackTrace();
		} catch (UserIDDisabledException e) {
			message = e.getMessage();
			e.printStackTrace();
		} catch (NoActiveUserException e) {
			message = e.getMessage();
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
			message = Messages.SYSTEM_UNABLE_PROCESS_YOUR_REQUEST;
		}
		
		if(message != null){
			MessageLogger.logSecurityLoggingMessage(userID + " : " + message +"\r\n");
		}
		
		map.put(Constants.MESSAGE_ID, message);
		map.put(SysConstants.URL_REDIRECT, "");

		return map;
	}