javax.jcr.Item.isModified()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(9.6k)|赞(0)|评价(0)|浏览(123)

本文整理了Java中javax.jcr.Item.isModified()方法的一些代码示例,展示了Item.isModified()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Item.isModified()方法的具体详情如下:
包路径:javax.jcr.Item
类名称:Item
方法名:isModified

Item.isModified介绍

[英]Returns true if this Item has been saved but has subsequently been modified through the current session and therefore the state of this item as recorded in the session differs from the state of this item as saved. Within a transaction, isModified on an Item may return false (because the Item has been saved since the modification) even if the modification in question is not in persistent storage (because the transaction has not yet been committed).

Note that in read-only implementations, this method will always return false.
[中]如果此Item已保存,但随后在当前会话中被修改,因此会话中记录的此项目状态与保存的此项目状态不同,则返回true。在事务中,Item上的isModified可能返回false(因为Item在修改后已保存),即使相关修改未在持久存储中(因为事务尚未提交)。
请注意,在只读实现中,此方法将始终返回false

代码示例

代码示例来源:origin: apache/jackrabbit

/** {@inheritDoc} */
public boolean isModified() throws RemoteException {
  return item.isModified();
}

代码示例来源:origin: org.onehippo.cms7/hippo-repository-connector

/** {@inheritDoc} */
public boolean isModified() {
  return item.isModified();
}

代码示例来源:origin: net.adamcin.oakpal/oakpal-core

@Override
public boolean isModified() {
  return delegate.isModified();
}

代码示例来源:origin: net.adamcin.commons/net.adamcin.commons.jcr

public boolean isModified()
{ return this.item.isModified(); }

代码示例来源:origin: brix-cms/brix-cms

public Boolean execute() throws Exception {
    return getDelegate().isModified();
  }
});

代码示例来源:origin: brix-cms/brix-cms

public boolean isModified() {
  return getDelegate().isModified();
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns false after a new NodeItem is set
 * (before node is saved (transient). That means the NodeItem don't exists
 * persistent).
 *
 * @see javax.jcr.Item#isModified()
 */
public void testTransientNewNodeItemIsModified () throws RepositoryException {
  Node testNode = testRootNode.addNode(nodeName1, testNodeType);
  Item testNodeItem = superuser.getItem(testNode.getPath());
  // check testNodeItem.isModified() for a new NodeItem before save
  assertFalse("Item.isModified() must return false directly after a new NodeItem is added (before save of the parent node)", testNodeItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns false after a new NodeItem is set
 * and saved (persistent). That means the NodeItem exists persistently but
 * isn't modified after save.
 * This is equivalent to the test if Item.isModified() returns false for an
 * already exixting and not modified NodeItem.
 *
 * @see javax.jcr.Item#isModified()
 */
public void testPersistentNewNodeItemIsModified () throws RepositoryException {
  Node testNode = testRootNode.addNode(nodeName1, testNodeType);
  testRootNode.getSession().save();
  Item testNodeItem = superuser.getItem(testNode.getPath());
  // check testNodeItem.isModified() for a new NodeItem after save
  assertFalse("Item.isModified() must return false after a new NodeItem is added and the parent Node is saved", testNodeItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns true for an already existing and modified
 * NodeItem (modifications aren't saved (transient)).
 * Modified means that a property is added with a string value.
 *
 * @see javax.jcr.Item#isModified()
 */
public void testTransientNodeItemIsModified () throws RepositoryException {
  Node testNode = testRootNode.addNode(nodeName1, testNodeType);
  testRootNode.getSession().save();
  // modify the persistent testNode
  testNode.setProperty(propertyName1, "test");
  Item testNodeItem = superuser.getItem(testNode.getPath());
  // check testNodeItem.isModified() before save
  assertTrue("Item.isModified() must return true directly after an existing NodeItem is modified (before current node is saved)", testNodeItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns false for an already exixting and modified
 * NodeItem after the node is saved (persistent).
 * Modified means that a property is added with a string value.
 *
 * @see javax.jcr.Item#isModified()
 */
public void testPersistentNodeItemIsModified () throws RepositoryException {
  Node testNode = testRootNode.addNode(nodeName1, testNodeType);
  testRootNode.getSession().save();
  // modify the persistent testNode
  testNode.setProperty(propertyName1, "test");
  testNode.save();
  Item testNodeItem = superuser.getItem(testNode.getPath());
  // check testNodeItem.isModified() after save
  assertFalse("Item.isModified() must return false after an existing Property is modified and the current Node is saved", testNodeItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns false after a new PropertyItem is set
 * (before node is saved (transient). That means the PropertyItem don't exists
 * persistent).
 *
 * @see javax.jcr.Item#isModified()
 */
public void testTransientNewPropertyItemIsModified () throws RepositoryException {
  Property testProperty = testNode.setProperty(propertyName1, "test");
  Item testPropertyItem = superuser.getItem(testProperty.getPath());
  // check testPropertyItem.isModified() for a new PropertyItem before save
  assertFalse("Item.isModified() must return false directly after a new PropertyItem is set (before current node is saved)", testPropertyItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns false after a new PropertyItem is set
 * and saved (persistent). That means the PropertyItem exists persistently but
 * isn't modified after save.
 * This is equivalent to the test if Item.isModified() returns false for an
 * already exixting and not modified PropertyItem.
 *
 * @see javax.jcr.Item#isModified()
 */
public void testPersistentNewPropertyItemIsModified () throws RepositoryException {
  Property testProperty = testNode.setProperty(propertyName1, "test");
  testNode.save();
  Item testPropertyItem = superuser.getItem(testProperty.getPath());
  // check testPropertyItem.isModified() for a new PropertyItem after save
  assertFalse("Item.isModified() must return false after a new PropertyItem is set and current node is saved", testPropertyItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns true for an already existing and modified
 * PropertyItem (modifications aren't saved (transient)).
 *
 * @see javax.jcr.Item#isModified()
 */
public void testTransientPropertyItemIsModified () throws RepositoryException {
  Property testProperty = testNode.setProperty(propertyName1, "test1");
  testNode.save();
  testProperty.setValue("test2");
  Item testPropertyItem = superuser.getItem(testProperty.getPath());
  // check testPropertyItem.isModified() before save
  assertTrue("Item.isModified() must return true directly after an existing Property is modified (before current node is saved)", testPropertyItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if Item.isModified() returns false for an already exixting and modified
 * PropertyItem after the current node is saved (persistent).
 *
 * @see javax.jcr.Item#isModified()
 */
public void testPersistentPropertyItemIsModified () throws RepositoryException {
  Property testProperty = testNode.setProperty(propertyName1, "test1");
  testNode.save();
  testProperty.setValue("test2");
  testNode.save();
  Item testPropertyItem = superuser.getItem(testProperty.getPath());
  // check testPropertyItem.isModified() after save
  assertFalse("Item.isModified() must return false after an existing Property is modified and the current Node is saved", testPropertyItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * Test if a node, that has be transiently remove is not 'Modified'.
 */
public void testNotModifiedRemovedItem() throws RepositoryException {
  removeItem.remove();
  assertFalse("Transiently removed node must not be 'modified'.", removeItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

/**
 * If this resource exists but does not contain a transaction id, complete
 * will try to persist any modifications present on the underlying
 * repository item.
 *
 * @throws DavException if calling {@link Item#save()} fails
 */
void complete() throws DavException {
  if (exists() && getTransactionId() == null) {
    try {
      if (item.isModified()) {
        item.save();
      }
    } catch (RepositoryException e) {
      // this includes LockException, ConstraintViolationException etc. not detected before
      log.error("Error while completing request: " + e.getMessage() +" -> reverting changes.");
      try {
        item.refresh(false);
      } catch (RepositoryException re) {
        log.error("Error while reverting changes: " + re.getMessage());
      }
      throw new JcrDavException(e);
    }
  }
}

代码示例来源:origin: apache/jackrabbit

/**
 * Same as {@link #testNotModifiedRemovedItem()} but calls save() before
 * executing the test.
 */
public void testNotModifiedRemovedItem2() throws RepositoryException {
  removeItem.remove();
  testRootNode.save();
  assertFalse("Removed node must not be 'modified'.", removeItem.isModified());
}

代码示例来源:origin: apache/jackrabbit

public void testNodeIsModifiedAfterSetPolicy() throws RepositoryException, AccessDeniedException, NotExecutableException {
  checkCanModifyAc(path);
  AccessControlPolicyIterator it = acMgr.getApplicablePolicies(path);
  if (it.hasNext()) {
    Item item = superuser.getItem(path);
    AccessControlPolicy policy = it.nextAccessControlPolicy();
    acMgr.setPolicy(path, policy);
    assertTrue("After setting a policy the node must be marked modified.", item.isModified());
  } else {
    throw new NotExecutableException();
  }
}

代码示例来源:origin: apache/jackrabbit

@Override
protected void initPropertyNames() {
  super.initPropertyNames();
  if (exists()) {
    names.addAll(JcrDavPropertyNameSet.EXISTING_ITEM_BASE_SET);
    try {
      if (item.getDepth() > 0) {
        names.add(JCR_PARENT);
      }
    } catch (RepositoryException e) {
      log.warn("Error while accessing node depth: " + e.getMessage());
    }
    if (item.isNew()) {
      names.add(JCR_ISNEW);
    } else if (item.isModified()) {
      names.add(JCR_ISMODIFIED);
    }
  } else {
    names.addAll(JcrDavPropertyNameSet.ITEM_BASE_SET);
  }
}

代码示例来源:origin: apache/jackrabbit

public void testSystemUsersAreSaved() throws Exception {
  String adminId = ((UserPerWorkspaceSecurityManager) secMgr).adminId;
  UserManager umgr = ((JackrabbitSession) superuser).getUserManager();
  Principal p = umgr.getAuthorizable(adminId).getPrincipal();
  if (p instanceof ItemBasedPrincipal) {
    Item item = superuser.getItem(((ItemBasedPrincipal) p).getPath());
    assertFalse(item.isNew());
    assertFalse(item.isModified());
  }
}

相关文章