javax.jcr.Property.isNew()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(93)

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

Property.isNew介绍

暂无

代码示例

代码示例来源:origin: org.apache.sling/org.apache.sling.scripting.javascript

public boolean jsGet_new() {
  return property.isNew();
}

代码示例来源:origin: info.magnolia/magnolia-core

@Override
public boolean isNew() {
  return getWrappedProperty().isNew();
}

代码示例来源:origin: org.apache.sling/org.apache.sling.jcr.contentloader

private void createProperty(String name, Object[] values, boolean overwriteExisting) throws RepositoryException {
  final Node node = this.parentNodeStack.peek();
  // check if the property already exists, don't overwrite it in this case
  if (node.hasProperty(name) && !node.getProperty(name).isNew() && !overwriteExisting) {
    return;
  }
  if (values == null || values.length == 0) {
    if (node.hasProperty(name)) {
      checkoutIfNecessary(node);
      String propPath = node.getProperty(name).getPath();
      node.getProperty(name).remove();
      if (this.importListener != null) {
        this.importListener.onDelete(propPath);
      }
    }
  } else {
    checkoutIfNecessary(node);
    final Value[] jcrValues = new Value[values.length];
    for (int i = 0; i < values.length; i++) {
      jcrValues[i] = this.createValue(node.getSession().getValueFactory(), values[i]);
    }
    node.setProperty(name, jcrValues);
    if (this.importListener != null) {
      this.importListener.onModify(node.getProperty(name).getPath());
    }
  }
}

代码示例来源:origin: org.onehippo.jcr.console/hippo-jcr-console-api

public static boolean hasNewOrModifiedProperty(Node node) {
    if (node == null) {
      return false;
    }
    
    try {
      for (PropertyIterator propIt = node.getProperties(); propIt.hasNext(); ) {
        Property prop = propIt.nextProperty();
        
        if (prop.isNew() || prop.isModified()) {
          return true;
        }
      }
    } catch (RepositoryException e) {
      log.warn("Failed to retrieve property iterator", e);
    }
    
    return false;
  }
}

代码示例来源:origin: ModeShape/modeshape

@Test
public void newPropertyOnModifiedNodeShouldBeNew() {
  assertThat(newPropertyOnModifiedNode.isNew(), is(true));
}

代码示例来源:origin: ModeShape/modeshape

@Test
public void changedPropertyOnModifiedNodeShouldNotBeNew() {
  assertThat(modifiedPropertyOnModifiedNode.isNew(), is(false));
}

代码示例来源:origin: ModeShape/modeshape

@Test
public void unchangedPropertyOnModifiedNodeShouldNotBeModifiedOrNew() {
  assertThat(unmodifiedPropertyOnModifiedNode.isModified(), is(false));
  assertThat(unmodifiedPropertyOnModifiedNode.isNew(), is(false));
}

代码示例来源:origin: info.magnolia/magnolia-core

@Test
public void testReadingANodeData() throws Exception {
  Node content = getTestNode();
  Property nodeData = content.getProperty("nd1");
  assertEquals("hello", nodeData.getString());
  assertFalse(nodeData.isNew());
}

代码示例来源:origin: ModeShape/modeshape

protected void assertNumberOfNewProperties( Node node,
                      int expected ) throws Exception {
  int numNewProperties = 0;
  for (PropertyIterator iter = node.getProperties(); iter.hasNext();) {
    Property prop = iter.nextProperty();
    if (prop.isNew()) ++numNewProperties;
  }
  assertThat(numNewProperties, is(expected));
}

代码示例来源:origin: ModeShape/modeshape

protected void assertNumberOfModifiedProperties( Node node,
                         int expected ) throws Exception {
  int numModifiedProperties = 0;
  for (PropertyIterator iter = node.getProperties(); iter.hasNext();) {
    Property prop = iter.nextProperty();
    if (prop.isNew()) ++numModifiedProperties;
  }
  assertThat(numModifiedProperties, is(expected));
}

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

/**
 * @throws Exception
 */
public void testPropertyIsNew() throws Exception {
  // prerequisite: non-existing property
  if (testRootNode.hasProperty(propertyName1)) {
    testRootNode.getProperty(propertyName1).remove();
    testRootNode.save();
  }
  // get user transaction object
  UserTransaction utx = new UserTransactionImpl(superuser);
  // start transaction
  utx.begin();
  // 'add' property and save
  testRootNode.setProperty(propertyName1, "0");
  assertTrue("New property must be new.", testRootNode.getProperty(propertyName1).isNew());
  testRootNode.save();
  assertFalse("Saved property must not be new.", testRootNode.getProperty(propertyName1).isNew());
  // commit
  utx.commit();
}

代码示例来源:origin: ModeShape/modeshape

protected void assertNoModifiedOrNewProperties( Node node ) throws Exception {
  for (PropertyIterator iter = node.getProperties(); iter.hasNext();) {
    Property prop = iter.nextProperty();
    assertThat(prop.isNew(), is(false));
    assertThat(prop.isModified(), is(false));
  }
}

代码示例来源:origin: ModeShape/modeshape

protected void assertNumberOfNewOrModifiedProperties( Node node,
                           int expected ) throws Exception {
  int numModifiedOrNewProperties = 0;
  for (PropertyIterator iter = node.getProperties(); iter.hasNext();) {
    Property prop = iter.nextProperty();
    if (prop.isNew() || prop.isModified()) ++numModifiedOrNewProperties;
  }
  assertThat(numModifiedOrNewProperties, is(expected));
}

代码示例来源:origin: org.chromattic/chromattic.core

public void testReAddRef() throws Exception {
 Session session = login();
 //
 Node root = session.getRootNode();
 Node a = root.addNode("a3");
 a.addMixin("mix:referenceable");
 Node b = root.addNode("b3");
 b.setProperty("ref", a);
 session.save();
 //
 session = login();
 root = session.getRootNode();
 a = root.getNode("a3");
 b = root.getNode("b3");
 Property ref = b.getProperty("ref");
 //
 ref.remove();
 b.setProperty("ref", a);
 assertFalse(ref.isNew());
 assertTrue(ref.isModified());
 assertFalse(a.getReferences().hasNext());
 //
 session.save();
 b.setProperty("ref", a);
 assertFalse(ref.isNew());
 assertTrue(ref.isModified());
 assertEquals(ref, a.getReferences());
}

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

@Test
  public void testGetStatus() throws Exception {
    deny(path, privilegesFromName(PrivilegeConstants.JCR_READ));
    allow(path, privilegesFromName(PrivilegeConstants.REP_READ_PROPERTIES));

    List<String> propertyPaths = new ArrayList<String>();
    propertyPaths.add(childPPath);
    propertyPaths.add(childchildPPath);
    propertyPaths.add(path + "/jcr:primaryType");

    for (String pPath : propertyPaths) {
      Property p = testSession.getProperty(pPath);
      assertFalse(p.isModified());
      assertFalse(p.isNew());
    }
  }
}

代码示例来源:origin: org.chromattic/chromattic.core

public void testAddRef() throws Exception {
 Session session = login();
 //
 Node root = session.getRootNode();
 Node a = root.addNode("a1");
 a.addMixin("mix:referenceable");
 Node b = root.addNode("b1");
 //
 Property ref = b.setProperty("ref", a);
 assertTrue(ref.isNew());
 assertFalse(ref.isModified());
 assertEquals(0, Collections.set(JCR.adapt(a.getReferences())).size());
 //
 session.save();
 assertFalse(ref.isNew());
 assertFalse(ref.isModified());
 assertEquals(ref, a.getReferences());
}

代码示例来源:origin: ModeShape/modeshape

@Test
public void newNodeShouldHaveAllNewProperties() throws Exception {
  assertThat(newNode.isNew(), is(true));
  assertThat(newNode.isModified(), is(false));
  for (PropertyIterator iter = newNode.getProperties(); iter.hasNext();) {
    Property prop = iter.nextProperty();
    assertThat(prop.isNew(), is(true));
    assertThat(prop.isModified(), is(false));
  }
}

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

public void testRemovedNewItem() throws RepositoryException {
    Node n = testRootNode.addNode(nodeName2);
    Property p = n.setProperty(propertyName1, testValue);
    n.remove();

    testRootNode.refresh(true);

    // n must still be new and accessible
    String msg = "Refresh 'true' must revert the removal of new a Node/Property.";
    assertFalse(msg, testRootNode.hasNode(nodeName2));
    assertFalse(msg, n.isNew() && n.isModified());
    assertFalse(msg, p.isNew() && p.isModified());
    try {
      n.hasProperty(propertyName1);
      fail(msg);
    } catch (InvalidItemStateException e) {
      // success
    }
    try {
      p.getString();
      fail(msg);
    } catch (InvalidItemStateException e) {
      // success
    }
  }
}

代码示例来源:origin: ModeShape/modeshape

protected void assertSameProperties( Node share,
                   Node original ) throws RepositoryException {
  Set<String> originalPropertyNames = new HashSet<String>();
  for (PropertyIterator iter = original.getProperties(); iter.hasNext();) {
    Property property = iter.nextProperty();
    originalPropertyNames.add(property.getName());
  }
  for (PropertyIterator iter = share.getProperties(); iter.hasNext();) {
    Property property = iter.nextProperty();
    Property originalProperty = original.getProperty(property.getName());
    originalPropertyNames.remove(property.getName());
    assertThat(property.isModified(), is(originalProperty.isModified()));
    assertThat(property.isMultiple(), is(originalProperty.isMultiple()));
    assertThat(property.isNew(), is(originalProperty.isNew()));
    assertThat(property.isNode(), is(originalProperty.isNode()));
    assertThat(property.isSame(originalProperty), is(true)); // not the same property owner instance, but isSame()
    if (property.isMultiple()) {
      Value[] values = property.getValues();
      Value[] originalValues = originalProperty.getValues();
      assertThat(values.length, is(originalValues.length));
      for (int i = 0; i != values.length; ++i) {
        assertThat(values[i].equals(originalValues[i]), is(true));
      }
    } else {
      assertThat(property.getValue(), is(originalProperty.getValue()));
    }
  }
  assertThat("Extra properties in original: " + originalPropertyNames, originalPropertyNames.isEmpty(), is(true));
}

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

@Test
public void setStringProperty() throws RepositoryException, IOException {
  Node parentNode = getNode(TEST_PATH);
  addProperty(parentNode, "string", getAdminSession().getValueFactory().createValue("string \" value"));
  Property property = parentNode.getProperty("string");
  property.setValue("new value");
  assertTrue(parentNode.isModified());
  assertTrue(property.isModified());
  assertFalse(property.isNew());
  property.getSession().save();
  Session session2 = createAnonymousSession();
  try {
    Property property2 = session2.getProperty(TEST_PATH + "/string");
    assertEquals("new value", property2.getString());
  } finally {
    session2.logout();
  }
}

相关文章