protected void syncFlushVdcConfigToLocal() throws Exception {
  if (vdcPropBarrier == null) {
    vdcPropBarrier=new VdcPropertyBarrier(targetSiteInfo,VDC_OP_BARRIER_TIMEOUT);
  }
  vdcPropBarrier.enter();
  try {
    flushVdcConfigToLocal();
  }
  finally {
    boolean allLeft=vdcPropBarrier.leave();
    if (!allLeft) {
      log.info("wait 1 minute, so all nodes be able to return from leave()");
      Thread.sleep(IPSEC_RESTART_DELAY);
    }
  }
  vdcPropBarrier=null;
}

protected void syncFlushVdcConfigToLocal ( ) throws Exception { if ( vdcPropBarrier == null ) { vdcPropBarrier = new VdcPropertyBarrier ( targetSiteInfo , VDC_OP_BARRIER_TIMEOUT ) ; } vdcPropBarrier . enter ( ) ; try { flushVdcConfigToLocal ( ) ; } finally { boolean allLeft = vdcPropBarrier . leave ( ) ; if ( ! allLeft ) { log . info ( "wait 1 minute, so all nodes be able to return from leave()" ) ; Thread . sleep ( IPSEC_RESTART_DELAY ) ; } } vdcPropBarrier = null ; }
simulaneously flush vdc config on all nodes in current site . via barrier
