Ejemplo n.º 1
0
 /**
  * Replicate the Ledger fragment to target Bookie passed.
  *
  * @param lh - ledgerHandle
  * @param ledgerFragment - LedgerFragment to replicate
  */
 public void replicateLedgerFragment(LedgerHandle lh, final LedgerFragment ledgerFragment)
     throws InterruptedException, BKException {
   Optional<Set<BookieSocketAddress>> excludedBookies = Optional.absent();
   Map<Integer, BookieSocketAddress> targetBookieAddresses =
       getReplacedBookiesByIndexes(
           lh, ledgerFragment.getEnsemble(), ledgerFragment.getBookiesIndexes(), excludedBookies);
   replicateLedgerFragment(lh, ledgerFragment, targetBookieAddresses);
 }
Ejemplo n.º 2
0
 private static Map<BookieSocketAddress, BookieSocketAddress> getReplacedBookiesMap(
     LedgerFragment ledgerFragment, Map<Integer, BookieSocketAddress> targetBookieAddresses) {
   Map<BookieSocketAddress, BookieSocketAddress> bookiesMap =
       new HashMap<BookieSocketAddress, BookieSocketAddress>();
   for (Integer bookieIndex : ledgerFragment.getBookiesIndexes()) {
     BookieSocketAddress oldBookie = ledgerFragment.getAddress(bookieIndex);
     BookieSocketAddress newBookie = targetBookieAddresses.get(bookieIndex);
     bookiesMap.put(oldBookie, newBookie);
   }
   return bookiesMap;
 }