package org.korsakow.domain.interchange.mapper.output; import java.util.Collection; import org.dsrg.soenea.domain.interf.IDomainObject; import org.korsakow.domain.interchange.ddg.DynamicPropertiesDDG; import org.korsakow.domain.interchange.ddg.KeywordDDG; import org.korsakow.domain.interf.IDynamicProperties; import org.korsakow.domain.interf.IKeyword; import org.w3c.dom.Element; public class AbstractOutputMapper { protected Long getOptionalId(IDomainObject<Long> domainObject) { return domainObject==null?null:domainObject.getId(); } protected Element outputKeywords(KeywordDDG keywordDDG, Collection<IKeyword> keywords) { Element listElement = keywordDDG.createList(); for (IKeyword keyword : keywords) { keywordDDG.append(listElement, keyword.getValue(), keyword.getWeight()); } return listElement; } protected void outputDynamicProperties(Element parent, DynamicPropertiesDDG dynamicPropertiesDDG, IDynamicProperties props) { for (String id : props.getDynamicPropertyIds()) { Object value = props.getDynamicProperty(id); dynamicPropertiesDDG.append(parent, id, value); } } }