}
public static void main(String args[]) {
ReplicatedTree tree;
String start_directory=null;
boolean jmx=false;
String props="UDP(mcast_addr=224.0.0.36;mcast_port=55566;ip_ttl=32;" +
"mcast_send_buf_size=150000;mcast_recv_buf_size=80000):" +
"PING(timeout=2000;num_initial_members=3):" +
"MERGE2(min_interval=5000;max_interval=10000):" +
"FD_SOCK:" +
"VERIFY_SUSPECT(timeout=1500):" +
"pbcast.NAKACK(gc_lag=50;retransmit_timeout=600,1200,2400,4800):" +
"UNICAST(timeout=600,1200,2400,4800):" +
"pbcast.STABLE(desired_avg_gossip=20000):" +
"FRAG(frag_size=16000;down_thread=false;up_thread=false):" +
"pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;" +
"shun=false;print_local_addr=true):" +
"pbcast.STATE_TRANSFER";
// "PERF(details=true)";
for(int i=0; i < args.length; i++) {
if("-props".equals(args[i])) {
props=args[++i];
continue;
}
if("-start_directory".equals(args[i])) {
start_directory=args[++i];
continue;
}
if("-jmx".equals(args[i])) {
jmx=true;
continue;
}
help();
return;
}
try {
tree=new ReplicatedTree("ReplicatedTreeDemo-Group", props, 10000, jmx);
new ReplicatedTreeView(tree, tree.getLocalAddress());
// demo.setVisible(true);
if(start_directory != null && start_directory.length() > 0) {
populateTree(tree, start_directory);
}