protected TransientItemData copyItemDataDelete ( final ItemData item ) throws RepositoryException { if ( item == null ) { return null ; } // make a copy if ( item . isNode ( ) ) { final NodeData node = ( NodeData ) item ; // the node ACL can't be are null as ACL manager does care about this final AccessControlList acl = node . getACL ( ) ; if ( acl == null ) { throw new RepositoryException ( "Node ACL is null. " + node . getQPath ( ) . getAsString ( ) + " " + node . getIdentifier ( ) ) ; } return new TransientNodeData ( node . getQPath ( ) , node . getIdentifier ( ) , node . getPersistedVersion ( ) , node . getPrimaryTypeName ( ) , node . getMixinTypeNames ( ) , node . getOrderNumber ( ) , node . getParentIdentifier ( ) , acl ) ; } // else - property final PropertyData prop = ( PropertyData ) item ; // make a copy, value wil be null for deleting items TransientPropertyData newData = new TransientPropertyData ( prop . getQPath ( ) , prop . getIdentifier ( ) , prop . getPersistedVersion ( ) , prop . getType ( ) , prop . getParentIdentifier ( ) , prop . isMultiValued ( ) ) ; return newData ; }
Copy ItemData for Delete operation .