/** * FragmentDefinitionProxy - private constructor used by newInstance() * * @param view site view owner of this proxy * @param locatorName name of profile locator associated * with the proxy delegate * @param parentFolder view parent proxy folder * @param fragmentDefinition proxy delegate */ private FragmentDefinitionProxy(SearchPathsSiteView view, String locatorName, Folder parentFolder, FragmentDefinition fragmentDefinition) { super(view, locatorName, parentFolder, fragmentDefinition.getName(), false); this.fragmentDefinitionReference = new FragmentDefinitionWeakReference(view.getPageManager(), fragmentDefinition); }
/** * Construct fragment definition reference capturing page manager. * * @param pageManager * @param fragmentDefinition */ public FragmentDefinitionWeakReference(PageManager pageManager, FragmentDefinition fragmentDefinition) { this.pageManager = pageManager; this.path = fragmentDefinition.getPath(); this.referentFragmentDefinition = new WeakReference<FragmentDefinition>(fragmentDefinition); }
if ((fragmentDefinition != null) && (fragmentDefinition.getRootFragment() instanceof Fragment)) fragmentFragment[0] = (Fragment)fragmentDefinition.getRootFragment(); String contentFragmentId = parentId+CONTENT_FRAGMENT_ID_SEPARATOR+fragmentFragment[0].getId(); contentFragmentImpl = newContentFragment(contentFragmentId, pageOrTemplate, fragmentDefinitions, fragmentDefinition, fragmentFragment[0], definition, fragmentReference, template, true);
public FragmentDefinition newFragmentDefinition(String path) { FragmentDefinition fragmentDefinition = null; try { // factory create the fragment definition and set id/path fragmentDefinition = (FragmentDefinition)createObject(this.fragmentDefinitionClass); if (!path.startsWith(Folder.PATH_SEPARATOR)) { path = Folder.PATH_SEPARATOR + path; } if (!path.endsWith(FragmentDefinition.DOCUMENT_TYPE)) { path += FragmentDefinition.DOCUMENT_TYPE; } fragmentDefinition.setPath(path); // create the default portlet fragment fragmentDefinition.setRootFragment(newPortletFragment()); } catch (ClassCastException e) { String message = "Failed to create fragment definition object for " + this.dynamicPageClass; log.error(message, e); } return fragmentDefinition; }
if (newFragmentDefinition.getRootFragment() instanceof Fragment) Fragment rootFragment = (Fragment)newFragmentDefinition.getRootFragment(); if (!Utils.isNull(defId)) newFragmentDefinition.setTitle(definitionTitle); newFragmentDefinition.setShortTitle(definitionShortTitle);
if (fragmentDefinition.getDefId().equals(refId))
/** * <p> * getFragmentDefinition * </p> * * @param name * @param checkAccess flag * @return page * @throws PageNotFoundException * @throws NodeException */ public FragmentDefinition getFragmentDefinition(String name, boolean checkAccess) throws PageNotFoundException, NodeException { // get fragment definition FragmentDefinition fragmentDefinition = (FragmentDefinition) getAllNodes().subset(FragmentDefinition.DOCUMENT_TYPE).get(name); if (fragmentDefinition == null) { throw new PageNotFoundException("Jetspeed PSML fragment definition not found: " + name); } // check access if (checkAccess) { fragmentDefinition.checkAccess(JetspeedActions.VIEW); } return fragmentDefinition; }
/** * Get or retrieve referent fragment definition. * * @return fragment definition */ public FragmentDefinition getFragmentDefinition() { FragmentDefinition fragmentDefinition = referentFragmentDefinition.get(); if ((fragmentDefinition != null) && !fragmentDefinition.isStale()) { return fragmentDefinition; } else { try { referentFragmentDefinition = new WeakReference<FragmentDefinition>(pageManager.getFragmentDefinition(path)); return referentFragmentDefinition.get(); } catch (PageNotFoundException pnfe) { throw new RuntimeException("FragmentDefinition "+path+" has been removed: "+pnfe, pnfe); } catch (NodeException ne) { throw new RuntimeException("FragmentDefinition "+path+" can not be accessed: "+ne, ne); } } } }
contentPageImpl.setDefId(fragmentDefinition.getDefId());
public FragmentDefinition getFragmentDefinition(String name) throws PageNotFoundException, NodeException { // get fragment definitions instance if fragment definitions collection not available if (!fragmentDefinitionsCached) { // use PageManager to get fragment definition instance without // caching the fragment definitions collection for this folder return getPageManager().getFragmentDefinition(this, name); } // select fragment definition by name from cached fragment definitions collection FragmentDefinition fragmentDefinition = (FragmentDefinition)getFragmentDefinitionsNodeSet().get(name); if (fragmentDefinition == null) { throw new PageNotFoundException("FragmentDefinition not found: " + name); } // check for view access on page fragmentDefinition.checkAccess(JetspeedActions.VIEW); return fragmentDefinition; }
String path = concatenatePaths(destinationPath, srcFragmentDefinition.getName()); if (!pageManager.fragmentDefinitionExists(path))
log.debug("Selected fragment definition, path=" + view.getManagedFragmentDefinition(requestFragmentDefinition).getPath());
String path = PageManagerUtils.concatenatePaths(destinationPath, srcFragmentDefinition.getName()); FragmentDefinition dstFragmentDefinition = pageManager.copyFragmentDefinition(srcFragmentDefinition, path, copyIds); pageManager.updateFragmentDefinition(dstFragmentDefinition);
FragmentDefinition dstFragmentDefinition = lookupFragmentDefinition(dest, srcFragmentDefinition.getPath()); if (null != dstFragmentDefinition) context.logger.info("overwriting fragment definition " + srcFragmentDefinition.getPath()); dest.removeFragmentDefinition(dstFragmentDefinition); dstFragmentDefinition = dest.copyFragmentDefinition(srcFragmentDefinition, srcFragmentDefinition.getPath(), true); dest.updateFragmentDefinition(dstFragmentDefinition); context.pageCount++; context.logger.info("skipping fragment definition " + srcFragmentDefinition.getPath()); context.logger.info("processing fragment definition " + srcFragmentDefinition.getPath()); dstFragmentDefinition = dest.copyFragmentDefinition(srcFragmentDefinition, srcFragmentDefinition.getPath(), true); dest.updateFragmentDefinition(dstFragmentDefinition); context.pageCount++;
String path = PageManagerUtils.concatenatePaths(destinationPath, srcFragmentDefinition.getName()); if (!pageManager.fragmentDefinitionExists(path))