public ModificationStatus copy(final List<T> srcList, final List<T> destList, final Object... objects)
{
final int srcSize = srcList != null ? srcList.size() : 0;
final int destSize = destList != null ? destList.size() : 0;
int index = 0;
ModificationStatus modStatus = ModificationStatus.NONE;
do {
if (index < srcSize) {
final T srcEntry = srcList.get(index);
if (index < destSize) {
final T destEntry = destList.get(index);
final ModificationStatus st = copyFrom(srcEntry, destEntry, objects);
modStatus = AbstractBaseDO.getModificationStatus(modStatus, st);
} else {
appendDestEntry(destList, srcEntry, objects);
modStatus = ModificationStatus.MAJOR;
}