icegem-cache-utils/src/main/java/com/googlecode/icegem/cacheutils/replication/GuestNode.java
public static void main(String[] args) {
		try {
			if (args.length != 7) {
				Utils.exitWithFailure();
			}

			String cluster = args[0];
			Properties clustersProperties = PropertiesHelper
				.stringToProperties(args[1]);
			long timeout = Long.parseLong(args[2]);
			String regionName = args[3];
			boolean debugEnabled = ("true".equals(args[4]) ? true : false);
			boolean quiet = ("true".equals(args[5]) ? true : false);
			long processingStartedAt = Long.parseLong(args[6]);

			GuestNode guestNode = new GuestNode(cluster, clustersProperties,
				regionName, debugEnabled, quiet, processingStartedAt);

			boolean connected = guestNode.waitFor(timeout);

			guestNode.printState(connected);

			guestNode.close();

			if (connected) {
				Utils.exitWithSuccess();
			}

			Utils.exitWithFailure();
		} catch (Throwable t) {
			Utils.exitWithFailure();
		}
	}
public static void main(String[] args) {
		try {
			if (args.length != 7) {
				Utils.exitWithFailure();
			}

			String cluster = args[0];
			Properties clustersProperties = PropertiesHelper
				.stringToProperties(args[1]);
			long timeout = Long.parseLong(args[2]);
			String regionName = args[3];
			boolean debugEnabled = ("true".equals(args[4]) ? true : false);
			boolean quiet = ("true".equals(args[5]) ? true : false);
			long processingStartedAt = Long.parseLong(args[6]);

			GuestNode guestNode = new GuestNode(cluster, clustersProperties,
				regionName, debugEnabled, quiet, processingStartedAt);

			boolean connected = guestNode.waitFor(timeout);

			guestNode.printState(connected);

			guestNode.close();

			if (connected) {
				Utils.exitWithSuccess();
			}

			Utils.exitWithFailure();
		} catch (Throwable t) {
			Utils.exitWithFailure();
		}
	}
Configures and starts the guest node

@param args
- the configuration arguments