jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marvin Lau (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-2273) Lock.getLockToken() returns null for session scoped lock
Date Fri, 11 Sep 2009 04:42:57 GMT

    [ https://issues.apache.org/jira/browse/JCR-2273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12753997#action_12753997
] 

Marvin Lau commented on JCR-2273:
---------------------------------

The Javadoc for Lock.isSessionScoped() says "Returns true if this is a session-scoped lock.
Returns false if this is an open-scoped lock."  It doesn't say anything about the current
session.

For my use case, I need to know whether "this Session holds the lock token for this lock"
is true or not.  My understanding of the Javadoc is that if Lock.isSessionScoped() returns
true, then the lock is session scoped.  Does it also mean that the current session (i.e. the
Session instance that was used to get the Node instance that in turn was used to get the Lock
instance) is holding the lock?

> Lock.getLockToken() returns null for session scoped lock
> --------------------------------------------------------
>
>                 Key: JCR-2273
>                 URL: https://issues.apache.org/jira/browse/JCR-2273
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 1.6.0
>         Environment: Linux (Fedora 11), Sun JDK 1.5 (Java(TM) 2 Runtime Environment,
Standard Edition (build 1.5.0_16-b02))
>            Reporter: Marvin Lau
>
> The following code (part of a JUnit test) works in Jackrabbit 1.5.0 but fails in Jackrabbit
1.6.0 at the last line (assertNotNull("Failed to get lock token.", sessionLockToken)).  Is
this related to the work on JSR 283 where the behavior of Lock.getLockToken() has changed?
>             // Create lockable node
>             Node rootNode = session.getRootNode();
>             Node lockableNode = rootNode.addNode("foo");
>             rootNode.save();
>             lockableNode.addMixin(JcrConstants.MIX_LOCKABLE);
>             lockableNode.save();
>             session.save();
>             // Get an open scope lock on the node
>             lockableNode.lock(false, false);
>             // Get lock token
>             Lock lock = lockableNode.getLock();
>             String openLockToken = lock.getLockToken();
>             assertNotNull("Failed to get lock token.", openLockToken);
>             // Remove the lock token by unlocking
>             lockableNode.unlock();
>             // Get a session scope lock on the node
>             lockableNode.lock(false, true);
>             // Get lock token
>             lock = lockableNode.getLock();
>             String sessionLockToken = lock.getLockToken();
>             assertNotNull("Failed to get lock token.", sessionLockToken);

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message