private boolean setORBreference(String pIPAddress) throws IOException
	{
		ORB orb = ORB.init(new String [1], null);
		BufferedReader bufferedReader;
		// Get the reference to the CORBA objects from the file
		if(pIPAddress.length() >= 3 && pIPAddress.substring(0,3).equals(Parameters.GeoLocationOfGameServerNA))
		{
			bufferedReader = new BufferedReader(new FileReader(Parameters.RA_NA_NAME + "_IOR.txt"));
		}
		else if(pIPAddress.length() >= 2 && pIPAddress.substring(0,2).equals(Parameters.GeoLocationOfGameServerEU))
		{
			bufferedReader = new BufferedReader(new FileReader(Parameters.RA_EU_NAME + "_IOR.txt"));
		}
		else if(pIPAddress.length() >= 3 && pIPAddress.substring(0,3).equals(Parameters.GeoLocationOfGameServerAS))
		{
			bufferedReader = new BufferedReader(new FileReader(Parameters.RA_AS_NAME + "_IOR.txt"));
		}
		else
		{
			aLog.info("Invalid GeoLocation");
			return false;
		}
		String stringORB = bufferedReader.readLine();
		bufferedReader.close();
		// Transform the reference string to CORBA object
		org.omg.CORBA.Object reference_CORBA = orb.string_to_object(stringORB);
		aInterfaceIDL = interfaceIDLHelper.narrow(reference_CORBA);
		
		orb = null;
		stringORB = null;
		bufferedReader = null;
		
		return true;
	}