void bulkUpdateTargetCells(String userCredential,
        String partitionName,
        Locale requestedLocale,
        Map<Reference, Attribute[]> attributesMap)
    throws CompositeException;

Update the attributes of one or more target cells.

The update logic is as follows.

For each element in the supplied attributesMap, the entry key is the reference of the target cell to update and the entry value is an array of update attributes for that cell. If the target cell does not exist, accumulate an InvalidComponentException.

After a target cell is located, for each attribute that is specified, do the following:
  1. If the attribute name matches an existing attribute, attempt to overwrite its values field with the supplied values field.
  2. If the value type or some other aspect of the attribute's metadata definition is not met, or one or more of the supplied values is invalid or out-of-range, accumulate an InvalidAttributeException.
  3. Else accumulate AttributeNotFoundException if the named attribute does not exist.

If any exceptions are accumulated, this method throws a CompositeException and all updates are undone. The exception's list of causes include the exceptions that are listed above. For each attribute that caused the error, both the reference and the attribute name are recorded.

In all cases, the attribute update operation is subject to the usual security constraints and validation. It is the client's responsibility to determine which attributes are required by a particular component instance, the correct types, etc.