AgreementGenerator { public Agreement generate() { String agreementId = UUID.randomUUID().toString(); Agreement result = generate(agreementId); return result; } AgreementGenerator(Template template);  AgreementGenerator(Template template, ContextInfo ctx); Agreement generate(); Agreement generate(String agreementId);  }
@Test public void testGenerate() throws JAXBException, IOException { TemplateParser templateParser = new TemplateParser(); File file = new File(AgreementGeneratorTest.class.getResource("/template.xml").getFile()); String templateString = Files.toString(file, Charsets.UTF_8); Template wsagTemplate; try { wsagTemplate = templateParser.getWsagObject(templateString); } catch (ParserException e) { throw new SlaGeneratorException(e.getMessage(), e); } Agreement wsagAgreement = new AgreementGenerator(wsagTemplate).generate(); JaxbUtils.print(wsagAgreement); }