本文整理匯總了Java中javax.jcr.Node.isCheckedOut方法的典型用法代碼示例。如果您正苦於以下問題:Java Node.isCheckedOut方法的具體用法?Java Node.isCheckedOut怎麽用?Java Node.isCheckedOut使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類javax.jcr.Node
的用法示例。
在下文中一共展示了Node.isCheckedOut方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: 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());
}
示例2: deleteFile
import javax.jcr.Node; //導入方法依賴的package包/類
public void deleteFile(String path,User user) throws Exception{
if(!permissionService.fileHasWritePermission(path)){
throw new NoPermissionException();
}
repositoryInteceptor.deleteFile(path);
path = processPath(path);
Node rootNode=getRootNode();
if (!rootNode.hasNode(path)) {
throw new RuleException("File [" + path + "] not exist.");
}
String[] subpaths = path.split("/");
Node fileNode = rootNode;
for (String subpath : subpaths) {
if (StringUtils.isEmpty(subpath)) {
continue;
}
String subDirs[] = subpath.split("\\.");
for (String dir : subDirs) {
if (StringUtils.isEmpty(dir)) {
continue;
}
if (!fileNode.hasNode(dir)) {
continue;
}
fileNode = fileNode.getNode(dir);
lockCheck(fileNode,user);
if (!fileNode.isCheckedOut()) {
versionManager.checkout(fileNode.getPath());
}
}
}
fileNode = rootNode.getNode(path);
lockCheck(fileNode,user);
if (!fileNode.isCheckedOut()) {
versionManager.checkout(fileNode.getPath());
}
fileNode.remove();
session.save();
}
示例3: isCheckedOutThrowsException
import javax.jcr.Node; //導入方法依賴的package包/類
@Test(expected = UnsupportedOperationException.class)
public void isCheckedOutThrowsException() throws Exception {
Node testObj = aNode("/content");
testObj.isCheckedOut();
}