/**
* This method deletes a siteNode and also erases all the children and all versions.
*/
public void markForDeletion(SiteNodeVO siteNodeVO, Database db, boolean forceDelete, InfoGluePrincipal infogluePrincipal, Map<SiteNodeVO, List<ReferenceBean>> contactPersons) throws ConstraintException, SystemException, Exception
{
SiteNode siteNode = getSiteNodeWithId(siteNodeVO.getSiteNodeId(), db);
SiteNode parent = siteNode.getParentSiteNode();
boolean notifyResponsibleOnReferenceChange = CmsPropertyHandler.getNotifyResponsibleOnReferenceChange();
logger.info("notifyResponsibleOnReferenceChange:" + notifyResponsibleOnReferenceChange);
if(parent != null)
{
Iterator childSiteNodeIterator = parent.getChildSiteNodes().iterator();
while(childSiteNodeIterator.hasNext())
{
SiteNode candidate = (SiteNode)childSiteNodeIterator.next();
if(candidate.getId().equals(siteNodeVO.getSiteNodeId()))
markForDeletionRecursive(siteNode, db, forceDelete, infogluePrincipal, contactPersons, notifyResponsibleOnReferenceChange);
}
}
else
{