microsoft-azure-storage/src/com/microsoft/azure/storage/table/TableBatchOperation.java
@Override
    public boolean addAll(final int index, final java.util.Collection<? extends TableOperation> c) {
        int size = this.size();
        for (final TableOperation operation : c) {
            Utility.assertNotNull("operation", operation);
            this.checkSingleQueryPerBatch(operation, size);

            if (operation.getEntity() == null) {
                // Query operation
                this.lockToPartitionKey(((QueryTableOperation) operation).getPartitionKey());
            }
            else {
                this.lockToPartitionKey(operation.getEntity().getPartitionKey());
            }

            size++;
        }

        return super.addAll(index, c);
    }
@Override
    public boolean addAll(final int index, final java.util.Collection<? extends TableOperation> c) {
        int size = this.size();
        for (final TableOperation operation : c) {
            Utility.assertNotNull("operation", operation);
            this.checkSingleQueryPerBatch(operation, size);

            if (operation.getEntity() == null) {
                // Query operation
                this.lockToPartitionKey(((QueryTableOperation) operation).getPartitionKey());
            }
            else {
                this.lockToPartitionKey(operation.getEntity().getPartitionKey());
            }

            size++;
        }

        return super.addAll(index, c);
    }
Adds the collection of table operations to the batch operation <code>ArrayList</code> starting at the specified
index.

@param index
An <code>int</code> which represents the index in the batch operation <code>ArrayList</code> to add
the table operation at.
@param c
A <code>java.util.Collection</code> of {@link TableOperation} objects to add to the batch operation.
@return
<code>true</code> if the operations were added successfully.