本文整理汇总了Java中javax.jcr.Node.getPath方法的典型用法代码示例。如果您正苦于以下问题:Java Node.getPath方法的具体用法?Java Node.getPath怎么用?Java Node.getPath使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.jcr.Node
的用法示例。
在下文中一共展示了Node.getPath方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: buildPath
import javax.jcr.Node; //导入方法依赖的package包/类
private void buildPath(List<String> list, Node parentNode) throws RepositoryException {
NodeIterator nodeIterator=parentNode.getNodes();
while(nodeIterator.hasNext()){
Node node=nodeIterator.nextNode();
String nodePath=node.getPath();
if(nodePath.endsWith(FileType.Ruleset.toString())){
list.add(nodePath);
}else if(nodePath.endsWith(FileType.UL.toString())){
list.add(nodePath);
}else if(nodePath.endsWith(FileType.DecisionTable.toString())){
list.add(nodePath);
}else if(nodePath.endsWith(FileType.ScriptDecisionTable.toString())){
list.add(nodePath);
}else if(nodePath.endsWith(FileType.DecisionTree.toString())){
list.add(nodePath);
}else if(nodePath.endsWith(FileType.RuleFlow.toString())){
list.add(nodePath);
}
buildPath(list,node);
}
}
示例2: unlockAllChildNodes
import javax.jcr.Node; //导入方法依赖的package包/类
private void unlockAllChildNodes(Node node,User user,List<Node> nodeList,String rootPath) throws Exception{
NodeIterator iter=node.getNodes();
while(iter.hasNext()){
Node nextNode=iter.nextNode();
String absPath=nextNode.getPath();
if(!lockManager.isLocked(absPath)){
continue;
}
Lock lock=lockManager.getLock(absPath);
String owner=lock.getLockOwner();
if(!user.getUsername().equals(owner)){
throw new NodeLockException("当前目录下有子目录被其它人锁定,您不能执行锁定"+rootPath+"目录");
}
nodeList.add(nextNode);
unlockAllChildNodes(nextNode, user, nodeList, rootPath);
}
}
示例3: unlockPath
import javax.jcr.Node; //导入方法依赖的package包/类
@Override
public void unlockPath(String path,User user) throws Exception{
path = processPath(path);
int pos=path.indexOf(":");
if(pos!=-1){
path=path.substring(0,pos);
}
Node rootNode=getRootNode();
if (!rootNode.hasNode(path)) {
throw new RuleException("File [" + path + "] not exist.");
}
Node fileNode = rootNode.getNode(path);
String absPath=fileNode.getPath();
if(!lockManager.isLocked(absPath)){
throw new NodeLockException("当前文件未锁定,不需要解锁!");
}
Lock lock=lockManager.getLock(absPath);
String owner=lock.getLockOwner();
if(!owner.equals(user.getUsername())){
throw new NodeLockException("当前文件由【"+owner+"】锁定,您无权解锁!");
}
lockManager.unlock(lock.getNode().getPath());
}
示例4: getDirectories
import javax.jcr.Node; //导入方法依赖的package包/类
@Override
public List<RepositoryFile> getDirectories(String project) throws Exception {
Node rootNode=getRootNode();
NodeIterator nodeIterator = rootNode.getNodes();
Node targetProjectNode = null;
while (nodeIterator.hasNext()) {
Node projectNode = nodeIterator.nextNode();
if (!projectNode.hasProperty(FILE)) {
continue;
}
String projectName = projectNode.getName();
if (project != null && !project.equals(projectName)) {
continue;
}
targetProjectNode = projectNode;
break;
}
if (targetProjectNode == null) {
throw new RuleException("Project [" + project + "] not exist.");
}
List<RepositoryFile> fileList = new ArrayList<RepositoryFile>();
RepositoryFile root = new RepositoryFile();
root.setName("根目录");
String projectPath = targetProjectNode.getPath();
root.setFullPath(projectPath);
fileList.add(root);
NodeIterator projectNodeIterator = targetProjectNode.getNodes();
while (projectNodeIterator.hasNext()) {
Node dirNode = projectNodeIterator.nextNode();
if (!dirNode.hasProperty(DIR_TAG)) {
continue;
}
RepositoryFile file = new RepositoryFile();
file.setName(dirNode.getPath().substring(projectPath.length()));
file.setFullPath(dirNode.getPath());
fileList.add(file);
buildDirectories(dirNode, fileList, projectPath);
}
return fileList;
}
示例5: buildNodeLockInfo
import javax.jcr.Node; //导入方法依赖的package包/类
private void buildNodeLockInfo(Node node,RepositoryFile file) throws Exception{
String absPath=node.getPath();
if(!lockManager.isLocked(absPath)){
return;
}
String owner=lockManager.getLock(absPath).getLockOwner();
file.setLock(true);
file.setLockInfo("被"+owner+"锁定");
}
示例6: lockPath
import javax.jcr.Node; //导入方法依赖的package包/类
@Override
public void lockPath(String path,User user) throws Exception{
path = processPath(path);
int pos=path.indexOf(":");
if(pos!=-1){
path=path.substring(0,pos);
}
Node rootNode=getRootNode();
if (!rootNode.hasNode(path)) {
throw new RuleException("File [" + path + "] not exist.");
}
Node fileNode = rootNode.getNode(path);
String topAbsPath=fileNode.getPath();
if(lockManager.isLocked(topAbsPath)){
String owner=lockManager.getLock(topAbsPath).getLockOwner();
throw new NodeLockException("【"+path+"】已被"+owner+"锁定,您不能进行再次锁定!");
}
List<Node> nodeList=new ArrayList<Node>();
unlockAllChildNodes(fileNode, user, nodeList, path);
for(Node node:nodeList){
if(!lockManager.isLocked(node.getPath())){
continue;
}
Lock lock=lockManager.getLock(node.getPath());
lockManager.unlock(lock.getNode().getPath());
}
if(!fileNode.isNodeType(NodeType.MIX_LOCKABLE)){
if (!fileNode.isCheckedOut()) {
versionManager.checkout(fileNode.getPath());
}
fileNode.addMixin("mix:lockable");
session.save();
}
lockManager.lock(topAbsPath, true, true, Long.MAX_VALUE, user.getUsername());
}
示例7: getResourceNodePath
import javax.jcr.Node; //导入方法依赖的package包/类
/**
* Get resource node path by session and uuid
*
* @param session The session used to get resource node path
* @param resourceNodeUUID The uuid used to get resource node path
* @param renderContext A renderContext object
* @param resource A resource object
* @return resourceNodePath
* @throws RepositoryException
*/
public static String getResourceNodePath(final Session session,
final String resourceNodeUUID,
final RenderContext renderContext,
final Resource resource)
throws RepositoryException {
String resourcePath = "";
if (StringUtils.isNotEmpty(resourceNodeUUID)) {
Node n = session.getNodeByIdentifier(resourceNodeUUID);
try {
URLGenerator urlGenerator = new URLGenerator(renderContext, resource);
String base = urlGenerator.getBase();
String nodeType = n.getPrimaryNodeType().getName();
if(nodeType.equals(JAHIA_JNT_PAGE)) {
resourcePath = base + n.getPath() + HTML_EXT;
} else {
resourcePath = ( (JCRNodeWrapper) n).getUrl();
}
} catch (Exception e){
log.error("Error casting Node: " + n + " to JCRNodeWrapper, using path only", e);
resourcePath = n.getPath();
}
}
return resourcePath;
}