use of org.olat.ims.cp.objects.CPResource in project OpenOLAT by OpenOLAT.
the class CPTreeController method getCurrentPageInfoStringHTML.
/**
* Builds an html-info string about the current page and its linked resources
*
* @return HTML-String
*/
private String getCurrentPageInfoStringHTML() {
// test if currentPage links to resource, which is used (linked) somewhere
// else in the manifest
CPManager cpMgm = CPManager.getInstance();
DefaultElement ele = cpMgm.getElementByIdentifier(cp, currentPage.getIdRef());
boolean single = false;
if (ele instanceof CPResource) {
CPResource res = (CPResource) ele;
single = cpMgm.isSingleUsedResource(res, cp);
}
StringBuilder b = new StringBuilder();
b.append("<br /><ul>");
b.append("<li><b>" + translate("cptreecontroller.pagetitle") + "</b> " + currentPage.getTitle() + "</li>");
if (single) {
b.append("<li><b>" + translate("cptreecontroller.file") + "</b> " + currentPage.getFileName() + "</li>");
}
b.append("</ul>");
return b.toString();
}
use of org.olat.ims.cp.objects.CPResource in project openolat by klemens.
the class CPTreeController method getCurrentPageInfoStringHTML.
/**
* Builds an html-info string about the current page and its linked resources
*
* @return HTML-String
*/
private String getCurrentPageInfoStringHTML() {
// test if currentPage links to resource, which is used (linked) somewhere
// else in the manifest
CPManager cpMgm = CPManager.getInstance();
DefaultElement ele = cpMgm.getElementByIdentifier(cp, currentPage.getIdRef());
boolean single = false;
if (ele instanceof CPResource) {
CPResource res = (CPResource) ele;
single = cpMgm.isSingleUsedResource(res, cp);
}
StringBuilder b = new StringBuilder();
b.append("<br /><ul>");
b.append("<li><b>" + translate("cptreecontroller.pagetitle") + "</b> " + currentPage.getTitle() + "</li>");
if (single) {
b.append("<li><b>" + translate("cptreecontroller.file") + "</b> " + currentPage.getFileName() + "</li>");
}
b.append("</ul>");
return b.toString();
}
use of org.olat.ims.cp.objects.CPResource in project OpenOLAT by OpenOLAT.
the class CPPage method getResource.
protected CPResource getResource() {
CPResource resource = null;
CPManager mgr = CPManager.getInstance();
DefaultElement resElement = mgr.getElementByIdentifier(cp, idRef);
if (resElement instanceof CPResource) {
resource = (CPResource) resElement;
}
return resource;
}
use of org.olat.ims.cp.objects.CPResource in project OpenOLAT by OpenOLAT.
the class CPCore method findReferencesToResource.
/**
* Searches for <item>-elements or <dependency>-elements which references to
* the resource with id "resourceIdentifier"
*
* if an element is found, search is aborted and the found element is returned
*
* @param resourceIdentifier
* @return the found element or null
*/
public DefaultElement findReferencesToResource(String resourceIdentifier) {
// search for <item identifierref="resourceIdentifier" >
for (Iterator<CPOrganization> it = rootNode.getOrganizations().getOrganizationIterator(); it.hasNext(); ) {
CPOrganization org = it.next();
for (Iterator<CPItem> itO = org.getItems().iterator(); itO.hasNext(); ) {
CPItem item = itO.next();
CPItem found = _findReferencesToRes(item, resourceIdentifier);
if (found != null)
return found;
}
}
// search for <dependency identifierref="resourceIdentifier" >
for (Iterator<CPResource> itRes = rootNode.getResources().getResourceIterator(); itRes.hasNext(); ) {
CPResource res = itRes.next();
for (Iterator<CPDependency> itDep = res.getDependencyIterator(); itDep.hasNext(); ) {
CPDependency dep = itDep.next();
if (dep.getIdentifierRef().equals(resourceIdentifier))
return dep;
}
}
return null;
}
use of org.olat.ims.cp.objects.CPResource in project openolat by klemens.
the class CPCore method addElement.
// *** CP manipulation ***
/**
* adds an element as a child to the element with id parentId if the element
* with parentId is not found, it returns false
*
* if adding was successful, it returns true
*/
public boolean addElement(DefaultElement newElement, String parentId, int position) {
DefaultElement parentElement = rootNode.getElementByIdentifier(parentId);
if (parentElement == null) {
throw new OLATRuntimeException(CPOrganizations.class, "Parent-element with identifier:\"" + parentId + "\" not found!", new Exception());
}
if (parentElement instanceof CPItem) {
// parent is a <item>
if (newElement instanceof CPItem) {
// only CPItems can be added to CPItems
CPItem item = (CPItem) parentElement;
item.addItemAt((CPItem) newElement, position);
return true;
} else {
throw new OLATRuntimeException(CPOrganizations.class, "you can only add <item> elements to an <item>-element", new Exception());
}
} else if (parentElement instanceof CPOrganization) {
// parent is a <organization>
if (newElement instanceof CPItem) {
// add a new item to organization element
CPOrganization org = (CPOrganization) parentElement;
org.addItemAt((CPItem) newElement, position);
return true;
} else {
throw new OLATRuntimeException(CPOrganizations.class, "you can only add <item> elements to an <organization>-element", new Exception());
}
} else if (parentElement instanceof CPResource) {
// parent is a <resource>
CPResource resource = (CPResource) parentElement;
if (newElement instanceof CPFile) {
resource.addFile((CPFile) newElement);
} else if (newElement instanceof CPDependency) {
resource.addDependency((CPDependency) newElement);
} else {
throw new OLATRuntimeException(CPOrganizations.class, "you can only add <dependency> or <file> elements to a Resource", new Exception());
}
return true;
} else if (parentElement instanceof CPResources) {
// parent is <resources> !!see the "s" at the end ;)
if (newElement instanceof CPResource) {
CPResources resources = (CPResources) parentElement;
resources.addResource((CPResource) newElement);
return true;
} else {
throw new OLATRuntimeException(CPOrganizations.class, "you can only add <resource>elements to the <resources> element", new Exception());
}
}
return false;
}
Aggregations