{
Navigation sourceNav = session.findObjectById(ObjectType.NAVIGATION, source.data.id);
//
toEvict.add(sourceNav.getObjectId());
Workspace workspace = sourceNav.getSite().getWorkspace();
String reference = state.getPageRef();
if (reference != null)
{
String[] pageChunks = split("::", reference);
ObjectType<? extends Site> siteType = Mapper.parseSiteType(pageChunks[0]);
Site site = workspace.getSite(siteType, pageChunks[1]);
org.gatein.mop.api.workspace.Page target = site.getRootPage().getChild("pages").getChild(pageChunks[2]);
PageLink link = sourceNav.linkTo(ObjectType.PAGE_LINK);
link.setPage(target);
}
else