package org.openmrs.module.htmlformentry.handler;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import org.openmrs.RelationshipType;
import org.openmrs.module.htmlformentry.FormEntrySession;
import org.openmrs.module.htmlformentry.FormSubmissionController;
import org.openmrs.module.htmlformentry.element.RelationshipSubmissionElement;
/**
* Handles the {@code <relationship>} tag
*/
public class RelationshipTagHandler extends SubstitutionTagHandler {
@Override
protected List<AttributeDescriptor> createAttributeDescriptors() {
List<AttributeDescriptor> attributeDescriptors = new ArrayList<AttributeDescriptor>();
attributeDescriptors.add(new AttributeDescriptor("type", RelationshipType.class));
return Collections.unmodifiableList(attributeDescriptors);
}
@Override
protected String getSubstitution(FormEntrySession session, FormSubmissionController controllerActions,
Map<String, String> parameters) {
RelationshipSubmissionElement element = new RelationshipSubmissionElement(session.getContext(), parameters);
session.getSubmissionController().addAction(element);
return element.generateHtml(session.getContext());
}
}