@Override
	public String getPlayerStatus(String pAdminUsername, String pAdminPassword, String pIPAddress) 
	{
		if(!pAdminUsername.equals("Admin"))
		{
			aLog.info("Error Getting Player Status : Incorrect Administrator Username");
			return "0";
		}
		if(!pAdminPassword.equals("Admin"))
		{
			aLog.info("Error Getting Player Status : Incorrect Administrator Password");
			return "0";
		}
		if(!validate(pIPAddress))
		{
			aLog.info("Error Getting Player Status : Invalid IP-address");
			return "0";
		}
		int portNumber1 = 0;
		int portNumber2 = 0;
		if(aServerName.equals(Parameters.RA_NA_NAME))
		{
			portNumber1 = Parameters.UDP_PORT_REPLICA_A_EU;
			portNumber2 = Parameters.UDP_PORT_REPLICA_A_AS;
		}
		else if(aServerName.equals(Parameters.RA_EU_NAME))
		{
			portNumber1 = Parameters.UDP_PORT_REPLICA_A_NA;
			portNumber2 = Parameters.UDP_PORT_REPLICA_A_AS;	
		}
		else if(aServerName.equals(Parameters.RA_AS_NAME))
		{
			portNumber1 = Parameters.UDP_PORT_REPLICA_A_EU;
			portNumber2 = Parameters.UDP_PORT_REPLICA_A_NA;	
		}
		DatagramSocket datagramSocket;
		DatagramPacket requestToGetPlayerStatus;
		DatagramPacket reply;
		String repliedMessage1;
		String repliedMessage2;
		byte [] message;
		String data;
		InetAddress host;
		try 
		{
			datagramSocket = new DatagramSocket();
			host = InetAddress.getByName("localhost");
			data = Parameters.METHOD_CODE.GET_PLAYER_STATUS.name();
			message = data.getBytes();
			requestToGetPlayerStatus = new DatagramPacket(message, message.length, host, portNumber1);
			datagramSocket.send(requestToGetPlayerStatus);
			message = new byte [1000];
			reply = new DatagramPacket(message, message.length);
			datagramSocket.receive(reply);
			repliedMessage1 = new String(reply.getData());
			repliedMessage1 = repliedMessage1.trim();
			data = Parameters.METHOD_CODE.GET_PLAYER_STATUS.name();
			message = data.getBytes();
			requestToGetPlayerStatus = new DatagramPacket(message, message.length, host, portNumber2);
			datagramSocket.send(requestToGetPlayerStatus);
			message = new byte [1000];
			reply = new DatagramPacket(message, message.length);
			datagramSocket.receive(reply);
			repliedMessage2 = new String(reply.getData());
			repliedMessage2 = repliedMessage2.trim();
			datagramSocket.close();
		} catch (SocketException e) {
			return "0";
		} catch (IOException e) {
			return "0";
		}
		aLog.info("Get Player Status : " + aServerName + Parameters.UDP_PARSER + getNumberOfOnlinePlayer() + Parameters.UDP_PARSER + getNumberOfOfflinePlayer() + 
				"\n" + repliedMessage1 + "\n" + repliedMessage2);
		return "1" + Parameters.UDP_PARSER +
				aServerName + Parameters.UDP_PARSER + getNumberOfOnlinePlayer() + Parameters.UDP_PARSER + getNumberOfOfflinePlayer() + Parameters.UDP_PARSER +
				repliedMessage1 + Parameters.UDP_PARSER + repliedMessage2;
	}