*/
void synchronizeInternal() throws SynchronizationException {
final long startTime = System.currentTimeMillis();
try {
TransactionManager txMgr=TransactionManager.getTransactionManager();
// pings the central repository admin
Ping pc = getPingCommand();
pc.execute();
if ( pc.isAlive() ) { // central repository admin is responding
SynchronizationRequest[] reqs = getAllRequests(pc);
assert(reqs.length != 0);
assert(_dpr != null);
// begin a transaction for the synchronization
Transaction tx = txMgr.begin(reqs.length);
// requests from the meta data
RequestMediator[] mReqs=new RequestMediator[reqs.length];
// total synchronization request threads