@Override public List<ValidationMessage> validate(final Path path, final TemplateModel model) { try { final List<ValidationMessage> messages = validateTemplateVariables(path, model); messages.addAll(genericValidator.validate(path, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal(model))); return messages; } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
@Override public List<ValidationMessage> validate(final Path path, final TemplateModel model) { try { final List<ValidationMessage> messages = validateTemplateVariables(path, model); messages.addAll(genericValidator.validate(path, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal(model))); return messages; } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
@Override public TemplateModel load(final Path path) { try { final String content = ioService.readAllString(Paths.convert(path)); return (TemplateModel) RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(content); } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
@Override public TemplateModel load(final Path path) { try { final String content = ioService.readAllString(Paths.convert(path)); return (TemplateModel) RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(content); } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
@Override public List<ValidationMessage> validate(final Path path) { try { final String content = ioService.readAllString(Paths.convert(path)); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(content); return validateTemplateVariables(path, model); } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
@Override public ResourceConversionResult loadFromInputStream(InputStream is) throws IOException { String xml = new String(IoUtils.readBytesFromInputStream(is), IoUtils.UTF8_CHARSET); TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(xml); String content = RuleTemplateModelDRLPersistenceImpl.getInstance().marshal(model); if (model.hasDSLSentences()) { return new ResourceConversionResult(content, ResourceType.DSLR); } else { return new ResourceConversionResult(content, ResourceType.DRL); } }
@Override public List<ValidationMessage> validate(final Path path) { try { final String content = ioService.readAllString(Paths.convert(path)); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(content); return validateTemplateVariables(path, model); } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
@Test public void testLoadEmpty() { RuleModel m = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(null); assertNotNull(m); m = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(""); assertNotNull(m); } }
@Override public void postProcess( final Path source, final Path destination ) { //Load existing file final org.uberfire.java.nio.file.Path _destination = Paths.convert( destination ); final String content = ioService.readAllString( Paths.convert( destination ) ); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal( content ); //Update rule name final String ruleName = FileNameUtil.removeExtension( destination, resourceType ); model.name = ruleName; //Save file ioService.write( _destination, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal( model ), commentedOptionFactory.makeCommentedOption( "File [" + source.toURI() + "] copied to [" + destination.toURI() + "]." ) ); }
@Override public void postProcess( final Path source, final Path destination ) { //Load existing file final org.uberfire.java.nio.file.Path _destination = Paths.convert( destination ); final String content = ioService.readAllString( Paths.convert( destination ) ); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal( content ); //Update rule name final String ruleName = FileNameUtil.removeExtension( destination, resourceType ); model.name = ruleName; //Save file ioService.write( _destination, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal( model ), commentedOptionFactory.makeCommentedOption( "File [" + source.toURI() + "] renamed to [" + destination.toURI() + "]." ) ); }
@Override public void postProcess( final Path source, final Path destination ) { //Load existing file final org.uberfire.java.nio.file.Path _destination = Paths.convert( destination ); final String content = ioService.readAllString( Paths.convert( destination ) ); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal( content ); //Update rule name final String ruleName = FileNameUtil.removeExtension( destination, resourceType ); model.name = ruleName; //Save file ioService.write( _destination, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal( model ), commentedOptionFactory.makeCommentedOption( "File [" + source.toURI() + "] renamed to [" + destination.toURI() + "]." ) ); }
@Override public void postProcess( final Path source, final Path destination ) { //Load existing file final org.uberfire.java.nio.file.Path _destination = Paths.convert( destination ); final String content = ioService.readAllString( Paths.convert( destination ) ); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal( content ); //Update rule name final String ruleName = FileNameUtil.removeExtension( destination, resourceType ); model.name = ruleName; //Save file ioService.write( _destination, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal( model ), commentedOptionFactory.makeCommentedOption( "File [" + source.toURI() + "] copied to [" + destination.toURI() + "]." ) ); }
@Test public void testMoreComplexRendering() { final RuleTemplateModelPersistence p = RuleTemplateModelXMLPersistenceImpl.getInstance(); final TemplateModel m = getComplexModel(); final String xml = p.marshal(m); System.out.println(xml); assertTrue(xml.indexOf("org.kie") == -1); }
@Override public DefaultIndexBuilder fillIndexBuilder(final Path path) throws Exception { final String content = ioService.readAllString(path); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(content); final DefaultIndexBuilder builder = getIndexBuilder(path); if (builder == null) { return null; } final GuidedRuleTemplateIndexVisitor visitor = new GuidedRuleTemplateIndexVisitor(builder, model); visitor.visit(); addReferencedResourcesToIndexBuilder(builder, visitor); return builder; } }
@Override public DefaultIndexBuilder fillIndexBuilder(final Path path) throws Exception { final String content = ioService.readAllString(path); final TemplateModel model = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(content); final DefaultIndexBuilder builder = getIndexBuilder(path); if (builder == null) { return null; } final GuidedRuleTemplateIndexVisitor visitor = new GuidedRuleTemplateIndexVisitor(builder, model); visitor.visit(); addReferencedResourcesToIndexBuilder(builder, visitor); return builder; } }
@Test public void testGenerateEmptyXML() { final RuleTemplateModelPersistence p = RuleTemplateModelXMLPersistenceImpl.getInstance(); final String xml = p.marshal(new TemplateModel()); assertNotNull(xml); assertFalse(xml.equals("")); assertTrue(xml.startsWith("<rule>")); assertTrue(xml.endsWith("</rule>")); }
/** * This will verify that we can load an old BRL change. If this fails, then * backwards compatibility is broken. */ @Test public void testBackwardsCompatibility() throws Exception { RuleModel m2 = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal(loadResource("existing_brl.xml")); assertNotNull(m2); assertEquals(3, m2.rhs.length); }
public Path create(final Path context, final String fileName, final TemplateModel content, final String comment) { try { final Package pkg = moduleService.resolvePackage(context); final String packageName = (pkg == null ? null : pkg.getPackageName()); content.setPackageName(packageName); final org.uberfire.java.nio.file.Path nioPath = Paths.convert(context).resolve(fileName); final Path newPath = Paths.convert(nioPath); if (ioService.exists(nioPath)) { throw new FileAlreadyExistsException(nioPath.toString()); } ioService.write(nioPath, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal(content), commentedOptionFactory.makeCommentedOption(comment)); return newPath; } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }
/** * This will verify that we can load an old BRL change. If this fails, then * backwards compatibility is broken. */ @Test public void testBackwardsCompat() throws Exception { RuleModel m2 = RuleTemplateModelXMLPersistenceImpl.getInstance().unmarshal( loadResource( "existing_brl.xml" ) ); assertNotNull( m2 ); assertEquals( 3, m2.rhs.length ); }
public Path create(final Path context, final String fileName, final TemplateModel content, final String comment) { try { final Package pkg = moduleService.resolvePackage(context); final String packageName = (pkg == null ? null : pkg.getPackageName()); content.setPackageName(packageName); final org.uberfire.java.nio.file.Path nioPath = Paths.convert(context).resolve(fileName); final Path newPath = Paths.convert(nioPath); if (ioService.exists(nioPath)) { throw new FileAlreadyExistsException(nioPath.toString()); } ioService.write(nioPath, RuleTemplateModelXMLPersistenceImpl.getInstance().marshal(content), commentedOptionFactory.makeCommentedOption(comment)); return newPath; } catch (Exception e) { throw ExceptionUtilities.handleException(e); } }