target.setPrecision(source.getPrecision().value());
}
} else if (propertyDefinition instanceof PropertyBooleanDefinition) {
result = new CmisPropertyBooleanDefinitionType();
PropertyBooleanDefinition source = (PropertyBooleanDefinition) propertyDefinition;
CmisPropertyBooleanDefinitionType target = (CmisPropertyBooleanDefinitionType) result;
convertChoiceBooleanList(source.getChoices(), target.getChoice());
if (source.getDefaultValue() != null) {
CmisPropertyBoolean defaultValue = new CmisPropertyBoolean();
defaultValue.setPropertyDefinitionId(propertyDefinition.getId());
for (Boolean value : source.getDefaultValue()) {
defaultValue.getValue().add(value);
}
target.setDefaultValue(defaultValue);
}
} else if (propertyDefinition instanceof PropertyDateTimeDefinition) {
result = new CmisPropertyDateTimeDefinitionType();
PropertyDateTimeDefinition source = (PropertyDateTimeDefinition) propertyDefinition;
CmisPropertyDateTimeDefinitionType target = (CmisPropertyDateTimeDefinitionType) result;
convertChoiceDateTimeList(source.getChoices(), target.getChoice());
if (source.getDefaultValue() != null) {
CmisPropertyDateTime defaultValue = new CmisPropertyDateTime();
defaultValue.setPropertyDefinitionId(propertyDefinition.getId());
for (XMLGregorianCalendar value : convertCalendar(source.getDefaultValue())) {
defaultValue.getValue().add(value);
}
target.setDefaultValue(defaultValue);
}
// specific
target.setResolution(convert(EnumDateTimeResolution.class, source.getDateTimeResolution()));
} else if (propertyDefinition instanceof PropertyHtmlDefinition) {
result = new CmisPropertyHtmlDefinitionType();
PropertyHtmlDefinition source = (PropertyHtmlDefinition) propertyDefinition;
CmisPropertyHtmlDefinitionType target = (CmisPropertyHtmlDefinitionType) result;
convertChoiceHtmlList(source.getChoices(), target.getChoice());
if (source.getDefaultValue() != null) {
CmisPropertyHtml defaultValue = new CmisPropertyHtml();
defaultValue.setPropertyDefinitionId(propertyDefinition.getId());
for (String value : source.getDefaultValue()) {
defaultValue.getValue().add(value);
}
target.setDefaultValue(defaultValue);
}
} else if (propertyDefinition instanceof PropertyUriDefinition) {
result = new CmisPropertyUriDefinitionType();
PropertyUriDefinition source = (PropertyUriDefinition) propertyDefinition;
CmisPropertyUriDefinitionType target = (CmisPropertyUriDefinitionType) result;
convertChoiceUriList(source.getChoices(), target.getChoice());
if (source.getDefaultValue() != null) {
CmisPropertyUri defaultValue = new CmisPropertyUri();
defaultValue.setPropertyDefinitionId(propertyDefinition.getId());
for (String value : source.getDefaultValue()) {
defaultValue.getValue().add(value);
}
target.setDefaultValue(defaultValue);
}
} else {