public void configSystem()
	{
		System.out.println("********** Configure system **********");
		logger.debug("********** Configure system **********");

		BufferedReader br = null;
		try
		{
			br = new BufferedReader(new FileReader(new File(Configuration.CONFIG_SYSTEM_FILE)));

			/**
			 * Parse the "config_system" file
			 */

			// the first line is the number of replicas
			String replica_number_line = br.readLine();
			Configuration.REPLICA_NUM = Integer.parseInt(replica_number_line);
			this.replica_pool = new Address[Configuration.REPLICA_NUM];

			// each of the following REPLICA_NUM lines consists of the address of a replica: ip : port
			String replica_addr_line = null;

			for (int index = 0; index < Configuration.REPLICA_NUM; index++)
			{
				replica_addr_line = br.readLine();

				String[] replica_addr = replica_addr_line.split(Configuration.PARSE_SPLIT);
				String ip = String.valueOf(replica_addr[0]);
				int port = Integer.parseInt(replica_addr[1]);

				this.replica_pool[index] = new Address(ip, port);
			}

		} catch (FileNotFoundException fnfe)
		{
			fnfe.printStackTrace();
		} catch (IOException ioe)
		{
			ioe.printStackTrace();
		} finally
		{
			try
			{
				br.close();
			} catch (IOException ioe)
			{
				ioe.printStackTrace();
			}
		}

		System.out.println("***** Replicas: " + Arrays.toString(this.replica_pool) + " *****");
		logger.debug("***** Replicas: " + Arrays.toString(this.replica_pool) + " *****");
	}