Example #1
0
 public void insert(int i, Object obj) {
   if (mActiveIndexes.isEmpty() && mPendingItemsToInsert.isEmpty()) {
     mActiveIndexes.add(new AtomicInteger(i));
     mInsertable.add(i, obj);
     return;
   } else {
     mPendingItemsToInsert.add(new Pair(Integer.valueOf(i), obj));
     return;
   }
 }
Example #2
0
  private void insertPending() {
    Pair pair;
    for (Iterator iterator = mPendingItemsToInsert.iterator();
        iterator.hasNext();
        mInsertable.add(((Integer) pair.first).intValue(), pair.second)) {
      pair = (Pair) iterator.next();
      Iterator iterator1 = mActiveIndexes.iterator();
      do {
        if (!iterator1.hasNext()) {
          break;
        }
        AtomicInteger atomicinteger = (AtomicInteger) iterator1.next();
        if (atomicinteger.intValue() >= ((Integer) pair.first).intValue()) {
          atomicinteger.incrementAndGet();
        }
      } while (true);
      mActiveIndexes.add(new AtomicInteger(((Integer) pair.first).intValue()));
    }

    mPendingItemsToInsert.clear();
  }
Example #3
0
  public void insert(List list) {
    if (mActiveIndexes.isEmpty() && mPendingItemsToInsert.isEmpty()) {
      Pair pair;
      for (list = list.iterator();
          list.hasNext();
          mInsertable.add(((Integer) pair.first).intValue(), pair.second)) {
        pair = (Pair) list.next();
        Iterator iterator = mActiveIndexes.iterator();
        do {
          if (!iterator.hasNext()) {
            break;
          }
          AtomicInteger atomicinteger = (AtomicInteger) iterator.next();
          if (atomicinteger.intValue() >= ((Integer) pair.first).intValue()) {
            atomicinteger.incrementAndGet();
          }
        } while (true);
        mActiveIndexes.add(new AtomicInteger(((Integer) pair.first).intValue()));
      }

    } else {
      mPendingItemsToInsert.addAll(list);
    }
  }