List of usage examples for com.google.gwt.uibinder.rebind UiBinderWriter die
public void die(String message) throws UnableToCompleteException
From source file:com.jhickman.web.gwt.gxtuibinder.elementparsers.form.SliderFieldParser.java
License:Apache License
@Override public void parse(XMLElement elem, String fieldName, JClassType type, UiBinderWriter writer) throws UnableToCompleteException { boolean seen = false; for (XMLElement child : elem.consumeChildElements()) { if (seen) { writer.die("SliderField can contain exactly one child element of type Slider."); }/*from w w w . ja v a 2 s .c o m*/ // single child must be of type "Slider" String childField = writer.parseElementToField(child); writer.setFieldInitializerAsConstructor(fieldName, type, childField); seen = true; } }
From source file:org.vectomatic.dev.svg.impl.gen.SVGValidator.java
License:Open Source License
/** * Validates the specified SVG input//from ww w .j a va 2 s . co m * @param rawSvg The SVG input to validate * @param systemId The URL of the resource being validated * @param logger A logger to report validation errors (if the method is invoked * to validate an {@link org.vectomatic.dom.svg.ui.SVGResource} or an * {@link org.vectomatic.dom.svg.ui.ExternalSVGResource}) * @param writer A writer to report validation errors (if the method is * invoked to validate a UiBinder template) * @throws UnableToCompleteException If validation error occur */ public static void validate(String rawSvg, String systemId, final TreeLogger logger, final UiBinderWriter writer) throws UnableToCompleteException { try { if (validator == null) { SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); URL svgSchemaURL = SVGValidator.class.getResource("SVG.xsd"); Source schemaFile = new StreamSource(svgSchemaURL.openStream(), svgSchemaURL.toExternalForm()); Schema schema = factory.newSchema(schemaFile); validator = schema.newValidator(); validator.setResourceResolver(new LSResourceResolver() { @Override public LSInput resolveResource(String type, String namespaceURI, final String publicId, final String systemId, final String baseURI) { if (logger != null) { logger.log(TreeLogger.INFO, "resolveResource(" + type + ", " + namespaceURI + ", " + publicId + ", " + systemId + ", " + baseURI + ")"); } return new LSInput() { @Override public Reader getCharacterStream() { return new StringReader(""); } @Override public void setCharacterStream(Reader characterStream) { } @Override public InputStream getByteStream() { return new ByteArrayInputStream(new byte[0]); } @Override public void setByteStream(InputStream byteStream) { } @Override public String getStringData() { return ""; } @Override public void setStringData(String stringData) { } @Override public String getSystemId() { return systemId; } @Override public void setSystemId(String systemId) { } @Override public String getPublicId() { return publicId; } @Override public void setPublicId(String publicId) { } @Override public String getBaseURI() { return baseURI; } @Override public void setBaseURI(String baseURI) { } @Override public String getEncoding() { return null; } @Override public void setEncoding(String encoding) { } @Override public boolean getCertifiedText() { return false; } @Override public void setCertifiedText(boolean certifiedText) { } }; } }); } validator.validate(new StreamSource(new StringReader(rawSvg), systemId)); } catch (SAXParseException e) { if (writer != null) { writer.die(e.getMessage() + " @" + e.getSystemId() + " L:" + e.getLineNumber() + ",C:" + e.getColumnNumber()); } else if (logger != null) { logger.log(TreeLogger.ERROR, "Invalid SVG input @" + e.getSystemId() + " L:" + e.getLineNumber() + ",C:" + e.getColumnNumber(), e); throw new UnableToCompleteException(); } } catch (Throwable t) { if (writer != null) { writer.die(t.getMessage()); } else if (logger != null) { logger.log(TreeLogger.ERROR, "Invalid SVG input", t); throw new UnableToCompleteException(); } } }