private boolean validatePropertyIsMultiple(String propName) { for (Object o : ntd.getPropertyDefinitionTemplates()) { PropertyDefinitionTemplate pd = (PropertyDefinitionTemplate) o; if ((pd != null) && (pd.getName().equals(propName)) && (!pd.isMultiple())) { return false; } } return true; }
private boolean isPropertyProtected(String propName) { for (Object o : ntd.getPropertyDefinitionTemplates()) { PropertyDefinitionTemplate pd = (PropertyDefinitionTemplate) o; if ((pd != null) && (pd.getName().equals(propName)) && (pd.isProtected())) { return true; } } return false; }
LOGGER.debug("added property '{0}' to mixin '{1}'", propDefn.getName(), mixinName);
LOGGER.debug("added property '{0}' to mixin '{1}'", propDefn.getName(), mixinName);
public void testResidualNames() throws Exception { String residualName = "*"; NodeDefinitionTemplate ndt = ntm.createNodeDefinitionTemplate(); ndt.setName(residualName); assertEquals(residualName, ndt.getName()); PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate(); pdt.setName(residualName); assertEquals(residualName, pdt.getName()); }
List<PropertyDefinitionTemplate> pdts = ntt.getPropertyDefinitionTemplates(); for (PropertyDefinitionTemplate pdt : pdts) { if ("jcr:language".equals(pdt.getName())) { pdt.setMandatory(true);
PropertyDefinitionTemplate pd = (PropertyDefinitionTemplate) _pd; String propDefPath = nodeTypePath + "/" + RegistryJCRSpecificStandardLoderUtil.JCR_SYSTEM_PERSIS_PROP_DEFS + "/" + pd.getName(); pdNode.setProperty("name", pd.getName()); pdNode.setProperty("autoCreated", String.valueOf(pd.isAutoCreated())); pdNode.setProperty("mandatory", String.valueOf(pd.isMandatory()));
@SuppressWarnings("unchecked") @Test @FixFor("MODE-1954") public void shouldRemovePropertyDefinitionViaTemplate() throws Exception { session.getWorkspace().getNamespaceRegistry().registerNamespace("dmsmix", "http://myexample.com/dms"); NodeTypeTemplate fileContent = nodeTypeMgr.createNodeTypeTemplate(); fileContent.setName("dmsmix:filecontent"); nodeTypeMgr.registerNodeType(fileContent, true); NodeType nodeType = nodeTypeMgr.getNodeType("dmsmix:filecontent"); NodeTypeTemplate nodeTypeTemplate = nodeTypeMgr.createNodeTypeTemplate(nodeType); PropertyDefinitionTemplate tp = nodeTypeMgr.createPropertyDefinitionTemplate(); tp.setName("dmsmix:owner"); nodeTypeTemplate.getPropertyDefinitionTemplates().add(tp); nodeTypeMgr.registerNodeType(nodeTypeTemplate, true); nodeType = nodeTypeMgr.getNodeType("dmsmix:filecontent"); nodeTypeTemplate = nodeTypeMgr.createNodeTypeTemplate(nodeType); List<PropertyDefinitionTemplate> pts = nodeTypeTemplate.getPropertyDefinitionTemplates(); Iterator<PropertyDefinitionTemplate> pit = pts.iterator(); while (pit.hasNext()) { PropertyDefinitionTemplate pi = pit.next(); if (pi.getName().equals("dmsmix:owner")) { pit.remove(); } } nodeTypeMgr.registerNodeType(nodeTypeTemplate, true); }
@Test public void testCreateSimpleNodeTypeContent() throws RepositoryException { // GIVEN String name = NodeTypes.LastModified.NAME; String superType = NodeType.NT_BASE; HashMap<String, Integer> propertyNameTypeMap = new HashMap<String, Integer>(); propertyNameTypeMap.put(NodeTypes.LastModified.LAST_MODIFIED, PropertyType.DATE); propertyNameTypeMap.put(NodeTypes.LastModified.LAST_MODIFIED_BY, PropertyType.STRING); // WHEN NodeTypeTemplate nodeTypeTemplate = NodeTypeTemplateUtil.createSimpleMixinNodeType(nodeTypeManager, name, superType, propertyNameTypeMap); // THEN assertNotNull(nodeTypeTemplate); assertEquals(NodeTypes.LastModified.LAST_MODIFIED, nodeTypeTemplate.getName()); assertTrue(nodeTypeTemplate.isMixin()); assertEquals(1, nodeTypeTemplate.getDeclaredSupertypeNames().length); assertEquals("nt:base", nodeTypeTemplate.getDeclaredSupertypeNames()[0]); assertEquals(2, nodeTypeTemplate.getPropertyDefinitionTemplates().size()); PropertyDefinitionTemplate lastModifiedProperty = (PropertyDefinitionTemplate) nodeTypeTemplate.getPropertyDefinitionTemplates().get(0); assertEquals(NodeTypes.LastModified.LAST_MODIFIED_BY, lastModifiedProperty.getName()); assertEquals(PropertyType.STRING, lastModifiedProperty.getRequiredType()); assertEquals(OnParentVersionAction.COPY, lastModifiedProperty.getOnParentVersion()); assertFalse(lastModifiedProperty.isAutoCreated()); assertFalse(lastModifiedProperty.isMandatory()); assertFalse(lastModifiedProperty.isProtected()); assertFalse(lastModifiedProperty.isMultiple()); PropertyDefinitionTemplate lastModifiedByProperty = (PropertyDefinitionTemplate) nodeTypeTemplate.getPropertyDefinitionTemplates().get(1); assertEquals(NodeTypes.LastModified.LAST_MODIFIED, lastModifiedByProperty.getName()); assertEquals(PropertyType.DATE, lastModifiedByProperty.getRequiredType()); }
public void testEmptyPropertyDefinitionTemplate() throws Exception { PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate(); assertNull(pdt.getName()); assertFalse(pdt.isAutoCreated()); assertFalse(pdt.isMandatory()); assertFalse(pdt.isProtected()); assertEquals(OnParentVersionAction.COPY, pdt.getOnParentVersion()); assertNull(pdt.getDeclaringNodeType()); assertEquals(PropertyType.STRING, pdt.getRequiredType()); assertFalse(pdt.isMultiple()); assertNull(pdt.getValueConstraints()); assertNull(pdt.getDefaultValues()); // the following methods cannot be tested as default value is // implementation specific: // - getAvailableQueryOperators // - isFullTextSearchable // - isQueryOrderable }
public void testPropertyDefinitionTemplate() throws Exception { PropertyDefinitionTemplate pdt = createBooleanPropTemplate(); assertEquals(jcrPropName, pdt.getName()); try { pdt.setName(null); fail("null isn't a valid JCR name"); } catch (ConstraintViolationException e) { // success } assertEquals(false, pdt.isAutoCreated()); assertEquals(false, pdt.isMandatory()); assertEquals(OnParentVersionAction.IGNORE, pdt.getOnParentVersion()); assertEquals(false, pdt.isProtected()); assertEquals(PropertyType.BOOLEAN, pdt.getRequiredType()); assertEquals(null, pdt.getValueConstraints()); assertEquals(null, pdt.getDefaultValues()); assertEquals(false, pdt.isMultiple()); String[] qo = pdt.getAvailableQueryOperators(); assertEquals(1, qo.length); assertEquals(QueryObjectModelConstants.JCR_OPERATOR_EQUAL_TO, qo[0]); assertEquals(false, pdt.isFullTextSearchable()); assertEquals(false, pdt.isQueryOrderable()); }