Merged V3.2 to HEAD

19165: Fix "avmbrowse" sample web script


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19257 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Jan Vonka
2010-03-12 15:41:50 +00:00
parent 76bba1fa4e
commit e96af8d097
3 changed files with 31 additions and 13 deletions

View File

@@ -1,24 +1,24 @@
<html>
<head>
<title>AVM Folder: ${folder.displayPath}/${folder.name}</title>
<title>AVM Folder: ${folder.displayPath}</title>
</head>
<body>
<a href="${url.serviceContext}/sample/avm/stores">AVM Store</a>: ${store.id}
<br>
<br>
AVM Folder: ${folder.displayPath}/${folder.name}
AVM Folder: ${folder.displayPath}
<br>
<br>
<table>
<#if folder.parent?exists>
<tr>
<td>${folder.parent.properties.creator}<td>&nbsp;<td>${folder.parent.size}<td>&nbsp;<td>${folder.parent.properties.modified?datetime}<td>&nbsp;<td><td><a href="${url.serviceContext}/sample/avm/path/${store.id}<@encodepath node=folder.parent/>">..</a>
<td>${folder.parent.properties.creator}<td>&nbsp;<td>&nbsp<td>&nbsp;<td>${folder.parent.properties.modified?datetime}<td>&nbsp;<td><td><a href="${url.serviceContext}/sample/avm/path/${store.id}<#if folder.parent.parent?exists><@encodepath node=folder.parent/><#else>/</#if>">..</a>
</tr>
</#if>
<#list folder.children as child>
<tr>
<#if child.isContainer>
<td>${child.properties.creator}<td>&nbsp;<td>${child.size}<td>&nbsp;<td>${child.properties.modified?datetime}<td>&nbsp;<td>&gt;<td><a href="${url.serviceContext}/sample/avm/path/${store.id}<@encodepath node=child/>">${child.name}</a>
<td>${child.properties.creator}<td>&nbsp;<td>&nbsp<td>&nbsp;<td>${child.properties.modified?datetime}<td>&nbsp;<td>&gt;<td><a href="${url.serviceContext}/sample/avm/path/${store.id}<@encodepath node=child/>">${child.name}</a>
<#else>
<td>${child.properties.creator}<td>&nbsp;<td>${child.size}<td>&nbsp;<td>${child.properties.modified?datetime}<td>&nbsp;<td><td><a href="${url.serviceContext}/api/node/content/${child.nodeRef.storeRef.protocol}/${child.nodeRef.storeRef.identifier}/${child.nodeRef.id}/${child.name?url}">${child.name}</a>
</#if>

View File

@@ -62,9 +62,11 @@ public class AVMUtil
}
/**
* Split a path into its parent path and its base name.
* Split a path into its parent path and its base name. If the store root path is passed, then return [null, ""].
*
* @param path The initial AVM path.
* @return An array of 2 Strings containing the parent path and the base
*
* @return An array of 2 Strings containing the parent AVM path (or null) and the base
* name.
*/
public static String[] splitBase(String path)

View File

@@ -23,16 +23,14 @@ import java.io.StringReader;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.alfresco.model.ContentModel;
import org.alfresco.model.WCMModel;
import org.alfresco.repo.avm.AVMNodeConverter;
import org.alfresco.repo.avm.util.AVMUtil;
import org.alfresco.repo.domain.PropertyValue;
import org.alfresco.repo.template.BaseContentNode.TemplateContentData;
import org.alfresco.service.ServiceRegistry;
import org.alfresco.service.cmr.audit.AuditInfo;
import org.alfresco.service.cmr.avm.AVMNodeDescriptor;
@@ -41,7 +39,6 @@ import org.alfresco.service.cmr.dictionary.DataTypeDefinition;
import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.ContentData;
import org.alfresco.service.cmr.repository.ContentReader;
import org.alfresco.service.cmr.repository.ContentService;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.service.cmr.repository.TemplateImageResolver;
@@ -53,7 +50,6 @@ import org.springframework.extensions.surf.util.Pair;
import org.springframework.extensions.surf.util.URLEncoder;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.util.StringUtils;
import org.xml.sax.InputSource;
import freemarker.ext.dom.NodeModel;
@@ -316,13 +312,17 @@ public class AVMTemplateNode extends BasePermissionsNode implements NamespacePre
// TemplateProperties API
/**
* @return the immediate parent in the node path
* @return the immediate parent in the node path (null if root of store)
*/
public TemplateProperties getParent()
{
if (this.parent == null)
{
this.parent = new AVMTemplateNode(this.getParentPath(), this.version, this.services, this.imageResolver);
String parentPath = this.getParentPath();
if (parentPath != null)
{
this.parent = new AVMTemplateNode(parentPath, this.version, this.services, this.imageResolver);
}
}
return this.parent;
}
@@ -498,6 +498,10 @@ public class AVMTemplateNode extends BasePermissionsNode implements NamespacePre
*/
public String getMimetype()
{
if (getIsContainer())
{
return null;
}
return this.services.getAVMService().getContentDataForRead(this.avmRef).getMimetype();
}
@@ -507,6 +511,10 @@ public class AVMTemplateNode extends BasePermissionsNode implements NamespacePre
*/
public String getDisplayMimetype()
{
if (getIsContainer())
{
return null;
}
final String mimetype = this.services.getAVMService().getContentDataForRead(this.avmRef).getMimetype();
return services.getMimetypeService().getDisplaysByMimetype().get(mimetype);
}
@@ -517,6 +525,10 @@ public class AVMTemplateNode extends BasePermissionsNode implements NamespacePre
*/
public String getEncoding()
{
if (getIsContainer())
{
return null;
}
return this.services.getAVMService().getContentDataForRead(this.avmRef).getEncoding();
}
@@ -526,6 +538,10 @@ public class AVMTemplateNode extends BasePermissionsNode implements NamespacePre
*/
public long getSize()
{
if (getIsContainer())
{
return -1;
}
return this.services.getAVMService().getContentDataForRead(this.avmRef).getSize();
}