Package javax.jcr.nodetype

Examples of javax.jcr.nodetype.PropertyDefinitionTemplate


        assertEquals(false, pdt.isQueryOrderable());
    }

    public void testSetDefaultValues() throws Exception {

        PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate();
        pdt.setRequiredType(PropertyType.LONG);

        pdt.setDefaultValues(null);
        assertNull(pdt.getDefaultValues());

        pdt.setDefaultValues(new Value[0]);
        assertNotNull(pdt.getDefaultValues());
        assertEquals(0, pdt.getDefaultValues().length);

        pdt.setDefaultValues(new Value[] { superuser.getValueFactory().createValue(24)});
        assertNotNull(pdt.getDefaultValues());
        assertEquals(1, pdt.getDefaultValues().length);
        assertEquals(24, pdt.getDefaultValues()[0].getLong());
        assertEquals(PropertyType.LONG, pdt.getDefaultValues()[0].getType());
    }
View Full Code Here


        NodeDefinitionTemplate ndt = ntm.createNodeDefinitionTemplate();
        ndt.setName(residualName);
        assertEquals(residualName, ndt.getName());

        PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate();
        pdt.setName(residualName);
        assertEquals(residualName, pdt.getName());
    }
View Full Code Here

        } catch (ConstraintViolationException e) {
            // success
        }

        // invalid name(s) passed to PropertyDefinitionTemplate
        PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate();
        try {
            pdt.setName(invalidName);
            fail("ConstraintViolationException expected. Name is invalid");
        } catch (ConstraintViolationException e) {
            // success
        }
    }
View Full Code Here

        ntt.setAbstract(false);
        ntt.setMixin(true);
        ntt.setOrderableChildNodes(false);
        ntt.setQueryable(false);

        PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate();
        pdt.setAutoCreated(false);
        pdt.setName("foo");
        pdt.setMultiple(false);
        pdt.setRequiredType(PropertyType.STRING);
        List pdefs = ntt.getPropertyDefinitionTemplates();
        pdefs.add(pdt);

        ntm.registerNodeType(ntt, true);
View Full Code Here

            ntt.setAbstract(false);
            ntt.setMixin(true);
            ntt.setOrderableChildNodes(false);
            ntt.setQueryable(false);

            PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate();
            pdt.setAutoCreated(false);
            pdt.setName("foo" + i);
            pdt.setMultiple(false);
            pdt.setRequiredType(PropertyType.STRING);
            List pdefs = ntt.getPropertyDefinitionTemplates();
            pdefs.add(pdt);

            defs[i] = ntt;
        }
View Full Code Here

            // success
        }
    }

    private PropertyDefinitionTemplate createBooleanPropTemplate() throws RepositoryException {
        PropertyDefinitionTemplate pdt = ntm.createPropertyDefinitionTemplate();
        pdt.setName(expandedPropName);
        pdt.setAutoCreated(false);
        pdt.setMandatory(false);
        pdt.setOnParentVersion(OnParentVersionAction.IGNORE);
        pdt.setProtected(false);
        pdt.setRequiredType(PropertyType.BOOLEAN);
        pdt.setValueConstraints(null);
        pdt.setDefaultValues(null);
        pdt.setMultiple(false);
        pdt.setAvailableQueryOperators(new String[] { QueryObjectModelConstants.JCR_OPERATOR_EQUAL_TO });
        pdt.setFullTextSearchable(false);
        pdt.setQueryOrderable(false);

        return pdt;
    }   
View Full Code Here

        NodeTypeManager ntm = session.getWorkspace().getNodeTypeManager();

        NodeTypeTemplate ntt = ntm.createNodeTypeTemplate();
        ntt.setName(ntName);

        PropertyDefinitionTemplate propertyWithType = ntm.createPropertyDefinitionTemplate();
        propertyWithType.setName("javaObject");
        propertyWithType.setRequiredType(PropertyType.STRING);

        PropertyDefinitionTemplate unnamed = ntm.createPropertyDefinitionTemplate();
        unnamed.setName("*");
        unnamed.setRequiredType(PropertyType.UNDEFINED);

        List<PropertyDefinition> properties = ntt.getPropertyDefinitionTemplates();
        properties.add(propertyWithType);
        properties.add(unnamed);

View Full Code Here

            NodeTypeManager nodeTypeManager = workspace.getNodeTypeManager();
            NodeTypeTemplate template = nodeTypeManager.createNodeTypeTemplate();
            template.setName("test:unstructured");
            template.setDeclaredSuperTypeNames(
                    new String[] {"nt:unstructured"});
            PropertyDefinitionTemplate pDef1 = nodeTypeManager.createPropertyDefinitionTemplate();
            pDef1.setName("defaultString");
            pDef1.setRequiredType(PropertyType.STRING);
            Value stringValue = session.getValueFactory().createValue("stringValue");
            pDef1.setDefaultValues(new Value[] {stringValue});
            template.getPropertyDefinitionTemplates().add(pDef1);

            PropertyDefinitionTemplate pDef2 = nodeTypeManager.createPropertyDefinitionTemplate();
            pDef2.setName("defaultPath");
            pDef2.setRequiredType(PropertyType.PATH);
            Value pathValue = session.getValueFactory().createValue("/jcr:path/nt:value", PropertyType.PATH);
            pDef2.setDefaultValues(new Value[] {pathValue});
            template.getPropertyDefinitionTemplates().add(pDef2);

            nodeTypeManager.registerNodeType(template, false);

            template = nodeTypeManager.createNodeTypeTemplate();
View Full Code Here

                    while (pitr.hasNext()) {
                        final Node metaclassChild = pitr.nextNode();

                        if (metaclassChild.isNodeType(JcrId.PROPERTY_DEFINITION)) {
                            final PropertyDefinitionTemplate propDefn = ntMgr.createPropertyDefinitionTemplate();
                            propDefn.setName(metaclassChild.getName());

                            { // default value
                                if (metaclassChild.hasProperty(JcrId.Property.DEFAULT_VALUE)) {
                                    final String defaultValue = metaclassChild.getProperty(JcrId.Property.DEFAULT_VALUE).getString();
                                    final Value value = this.writer.getContext().valueFactory().createValue(defaultValue);
                                    propDefn.setDefaultValues(new Value[] {value});
                                    propDefn.setAutoCreated(true);
                                }
                            }

                            { // mandatory
                                if (metaclassChild.hasProperty(JcrId.Property.REQUIRED)) {
                                    final boolean mandatory = metaclassChild.getProperty(JcrId.Property.REQUIRED).getBoolean();
                                    propDefn.setMandatory(mandatory);
                                }
                            }

                            { // type
                                final String type = metaclassChild.getProperty(JcrId.Property.RUNTIME_TYPE).getString();
                                Integer msType = TYPE_MAPPINGS.get(type);

                                if (msType == null) {
                                    msType = PropertyType.STRING;
                                }

                                propDefn.setRequiredType(msType);
                            }

                            propDefns.add(propDefn);
                            LOGGER.debug("added property '{0}' to mixin '{1}'", propDefn.getName(), mixinName);
                        }
                    }
                }
            }
View Full Code Here

            throw new SystemFailureException(e);
        }
    }

    protected PropertyDefinition readPropertyDefinition( CachedNode propDefn ) throws ConstraintViolationException {
        PropertyDefinitionTemplate defn = new JcrPropertyDefinitionTemplate(context());
        defn.setName(strings.create(first(propDefn, JcrLexicon.NAME, JcrNodeType.RESIDUAL_ITEM_NAME)));
        defn.setAutoCreated(booleans.create(first(propDefn, JcrLexicon.AUTO_CREATED)));
        defn.setMandatory(booleans.create(first(propDefn, JcrLexicon.MANDATORY)));
        defn.setMultiple(booleans.create(first(propDefn, JcrLexicon.MULTIPLE)));
        defn.setProtected(booleans.create(first(propDefn, JcrLexicon.PROTECTED)));
        defn.setOnParentVersion(OnParentVersionAction.valueFromName(strings.create(first(propDefn, JcrLexicon.ON_PARENT_VERSION))));
        defn.setRequiredType(propertyType(first(propDefn, JcrLexicon.REQUIRED_TYPE)));

        Property queryOps = propDefn.getProperty(JcrLexicon.AVAILABLE_QUERY_OPERATORS, system);
        if (queryOps != null && !queryOps.isEmpty()) {
            String[] queryOperators = new String[queryOps.size()];
            int i = 0;
            for (Object op : queryOps) {
                queryOperators[i++] = strings.create(op);
            }
            defn.setAvailableQueryOperators(queryOperators);
        }

        Property defaultValues = propDefn.getProperty(JcrLexicon.DEFAULT_VALUES, system);
        if (defaultValues != null && !defaultValues.isEmpty()) {
            Value[] values = new Value[defaultValues.size()];
            int i = 0;
            for (Object value : defaultValues) {
                org.modeshape.jcr.value.PropertyType modeType = org.modeshape.jcr.value.PropertyType.discoverType(value);
                int jcrType = PropertyTypeUtil.jcrPropertyTypeFor(modeType);
                String strValue = strings.create(value);
                try {
                    values[i++] = jcrValues.createValue(strValue, jcrType);
                } catch (ValueFormatException err) {
                    values[i++] = jcrValues.createValue(strValue);
                }
                i++;
            }
            defn.setDefaultValues(values);
        }

        Property constraints = propDefn.getProperty(JcrLexicon.VALUE_CONSTRAINTS, system);
        if (constraints != null && !constraints.isEmpty()) {
            String[] values = new String[constraints.size()];
            int i = 0;
            for (Object value : constraints) {
                values[i++] = strings.create(value);
            }
            defn.setValueConstraints(values);
        }

        return defn;
    }
View Full Code Here

TOP

Related Classes of javax.jcr.nodetype.PropertyDefinitionTemplate

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.