LOG.warn( PARTIAL_IMPL_WARNING );
cursor.afterLast();
while ( cursor.previous() ) // apply ldifs in reverse order
{
ChangeLogEvent event = cursor.get();
List<LdifEntry> reverses = event.getReverseLdifs();
for ( LdifEntry reverse:reverses )
{
switch( reverse.getChangeType().getChangeType() )
{
case ChangeType.ADD_ORDINAL :
adminSession.add(
new DefaultServerEntry( registries, reverse.getEntry() ), true );
break;
case ChangeType.DELETE_ORDINAL :
adminSession.delete( reverse.getDn(), true );
break;
case ChangeType.MODIFY_ORDINAL :
List<Modification> mods = reverse.getModificationItems();
adminSession.modify( reverse.getDn(), mods, true );
break;
case ChangeType.MODDN_ORDINAL :
// NO BREAK - both ModDN and ModRDN handling is the same
case ChangeType.MODRDN_ORDINAL :
LdapDN forwardDn = event.getForwardLdif().getDn();
LdapDN reverseDn = reverse.getDn();
moddn( reverseDn, forwardDn, reverse.isDeleteOldRdn() );
break;