package com.constellio.app.api.cmis.builders.objectType; import org.apache.chemistry.opencmis.commons.definitions.MutablePropertyDefinition; import org.apache.chemistry.opencmis.commons.enums.Cardinality; import org.apache.chemistry.opencmis.commons.enums.Updatability; public class PropertyBuilder { MutablePropertyDefinition<?> propertyDefinition; public PropertyBuilder(MutablePropertyDefinition<?> propertyDefinition, String id) { this.propertyDefinition = propertyDefinition; propertyDefinition.setId(id); } public PropertyBuilder setName(String name) { this.propertyDefinition.setQueryName(name); this.propertyDefinition.setDisplayName(name); this.propertyDefinition.setLocalName(name); return this; } public PropertyBuilder setMultivalue(boolean multivalue) { this.propertyDefinition.setCardinality(multivalue ? Cardinality.MULTI : Cardinality.SINGLE); return this; } public PropertyBuilder setUpdatability(boolean updatability) { this.propertyDefinition.setUpdatability(updatability ? Updatability.READWRITE : Updatability.READONLY); return this; } public PropertyBuilder setRequired(boolean isRequired) { this.propertyDefinition.setIsRequired(isRequired); return this; } public MutablePropertyDefinition<?> build() { return propertyDefinition; } }