public static void writeCase(Case caseModel, XMLStreamWriter xtw) throws Exception {
xtw.writeStartElement(ELEMENT_CASE);
xtw.writeAttribute(ATTRIBUTE_ID, caseModel.getId());
if (StringUtils.isNotEmpty(caseModel.getName())) {
xtw.writeAttribute(ATTRIBUTE_NAME, caseModel.getName());
}
if (StringUtils.isNotEmpty(caseModel.getInitiatorVariableName())) {
xtw.writeAttribute(FLOWABLE_EXTENSIONS_PREFIX, FLOWABLE_EXTENSIONS_NAMESPACE, ATTRIBUTE_INITIATOR_VARIABLE_NAME, caseModel.getInitiatorVariableName());
}
if (!caseModel.getCandidateStarterUsers().isEmpty()) {
xtw.writeAttribute(FLOWABLE_EXTENSIONS_PREFIX, FLOWABLE_EXTENSIONS_NAMESPACE, ATTRIBUTE_CASE_CANDIDATE_USERS, CmmnXmlUtil.convertToDelimitedString(caseModel.getCandidateStarterUsers()));
}
if (!caseModel.getCandidateStarterGroups().isEmpty()) {
xtw.writeAttribute(FLOWABLE_EXTENSIONS_PREFIX, FLOWABLE_EXTENSIONS_NAMESPACE, ATTRIBUTE_CASE_CANDIDATE_GROUPS, CmmnXmlUtil.convertToDelimitedString(caseModel.getCandidateStarterGroups()));
}
if (StringUtils.isNotEmpty(caseModel.getDocumentation())) {
xtw.writeStartElement(ELEMENT_DOCUMENTATION);
xtw.writeCharacters(caseModel.getDocumentation());
xtw.writeEndElement();
}
}
}