private void parseJobRepository(final XMLExtendedStreamReader reader, final ModelNode subsystemAddOp, final ModelNode jdbcAddOp) throws XMLStreamException {
while (reader.hasNext() && reader.nextTag() != END_ELEMENT) {
final String localName = reader.getLocalName();
final Element element = Element.forName(localName);
final JobRepositoryType jobRepositoryType;
if (element == Element.IN_MEMORY) {
jobRepositoryType = JobRepositoryType.IN_MEMORY;
ParseUtils.requireNoContent(reader);
} else if (element == Element.JDBC) {
jobRepositoryType = JobRepositoryType.JDBC;
if (reader.getAttributeCount() > 0) {
final String value = ParseUtils.readStringAttributeElement(reader, Attribute.JNDI_NAME.getLocalName());
JobRepositoryDefinition.JNDI_NAME.parseAndSetParameter(value, jdbcAddOp, reader);
} else {
ParseUtils.requireNoContent(reader);
}
} else {
throw ParseUtils.unexpectedElement(reader);
}
BatchSubsystemDefinition.JOB_REPOSITORY_TYPE.parseAndSetParameter(jobRepositoryType.toString(), subsystemAddOp, reader);
}
}