throws CompatibilityException, KeeperException,
InterruptedException, IOException {
this.zkc = zkc;
this.conf = conf;
this.targetBookie = targetBKAddr;
LedgerManagerFactory mFactory = LedgerManagerFactory
.newLedgerManagerFactory(this.conf, this.zkc);
this.underreplicationManager = mFactory
.newLedgerUnderreplicationManager();
this.bkc = new BookKeeper(new ClientConfiguration(conf), zkc);
this.admin = new BookKeeperAdmin(bkc);
this.ledgerChecker = new LedgerChecker(bkc);
this.workerThread = new Thread(this, "ReplicationWorker");