public boolean rewrite(HttpRequest request, HttpResponse original, MutableContent content) throws RewritingException { String mimeType = RewriterUtils.getMimeType(request, original); if (OS_TEMPLATE_MIME.equalsIgnoreCase(mimeType)) { content.setContent(converter.domToJson(content.getContent())); return true; } return false; }
public boolean rewrite(HttpRequest request, HttpResponse original, MutableContent content) throws RewritingException { String mimeType = RewriterUtils.getMimeType(request, original); if (OS_TEMPLATE_MIME.equalsIgnoreCase(mimeType)) { content.setContent(converter.domToJson(content.getContent())); return true; } return false; }
@Override public void rewrite(Gadget gadget, MutableContent content) throws RewritingException { if (gadget.sanitizeOutput()) { boolean sanitized = false; try { super.rewrite(gadget, content); sanitized = true; } finally { // Defensively clean the content in case of failure if (!sanitized) { content.setContent(""); } } } }
public boolean rewrite(HttpRequest request, HttpResponse original, MutableContent content) throws RewritingException { String mimeType = RewriterUtils.getMimeType(request, original); if (OS_TEMPLATE_MIME.equalsIgnoreCase(mimeType)) { content.setContent(converter.domToJson(content.getContent())); return true; } return false; }
@Override public void rewrite(Gadget gadget, MutableContent content) throws RewritingException { if (gadget.sanitizeOutput()) { boolean sanitized = false; try { super.rewrite(gadget, content); sanitized = true; } finally { // Defensively clean the content in case of failure if (!sanitized) { content.setContent(""); } } } }
@Override public void rewrite(Gadget gadget, MutableContent content) throws RewritingException { if (gadget.sanitizeOutput()) { boolean sanitized = false; try { super.rewrite(gadget, content); sanitized = true; } finally { // Defensively clean the content in case of failure if (!sanitized) { content.setContent(""); } } } }
@Test public void modifyContentReflectedInTreeUtf8() throws Exception { String theContent = "N\uFFFDW C\uFFFDNT\uFFFDNT"; assertEquals(0, mhc.getNumChanges()); mhc.setContent(theContent); assertEquals(1, mhc.getNumChanges()); assertEquals(theContent, new String(IOUtils.toByteArray(mhc.getContentBytes()), "UTF8")); Document document = mhc.getDocument(); assertEquals(1, document.getChildNodes().getLength()); assertEquals(theContent, document.getChildNodes().item(0).getTextContent()); mhc.documentChanged(); assertEquals(2, mhc.getNumChanges()); }
@Test public void modifyContentReflectedInTreeUtf8() throws Exception { String theContent = "N\uFFFDW C\uFFFDNT\uFFFDNT"; assertEquals(0, mhc.getNumChanges()); mhc.setContent(theContent); assertEquals(1, mhc.getNumChanges()); assertEquals(theContent, new String(IOUtils.toByteArray(mhc.getContentBytes()), "UTF8")); Document document = mhc.getDocument(); assertEquals(1, document.getChildNodes().getLength()); assertEquals(theContent, document.getChildNodes().item(0).getTextContent()); mhc.documentChanged(); assertEquals(2, mhc.getNumChanges()); }
@Test public void modifyContentReflectedInTreeAndBytes() throws Exception { assertEquals(0, mhc.getNumChanges()); mhc.setContent("NEW CONTENT"); assertEquals(1, mhc.getNumChanges()); assertEquals("NEW CONTENT", new String(IOUtils.toByteArray(mhc.getContentBytes()), "UTF8")); Document document = mhc.getDocument(); assertEquals(1, document.getChildNodes().getLength()); assertEquals("NEW CONTENT", document.getChildNodes().item(0).getTextContent()); mhc.documentChanged(); assertEquals(2, mhc.getNumChanges()); }
@Test public void modifyContentReflectedInTreeAndBytes() throws Exception { assertEquals(0, mhc.getNumChanges()); mhc.setContent("NEW CONTENT"); assertEquals(1, mhc.getNumChanges()); assertEquals("NEW CONTENT", new String(IOUtils.toByteArray(mhc.getContentBytes()), "UTF8")); Document document = mhc.getDocument(); assertEquals(1, document.getChildNodes().getLength()); assertEquals("NEW CONTENT", document.getChildNodes().item(0).getTextContent()); mhc.documentChanged(); assertEquals(2, mhc.getNumChanges()); }
@Test public void modifyContentReflectedInTreeAndBytes() throws Exception { assertEquals(0, mhc.getNumChanges()); mhc.setContent("NEW CONTENT"); assertEquals(1, mhc.getNumChanges()); assertEquals("NEW CONTENT", new String(IOUtils.toByteArray(mhc.getContentBytes()), "UTF8")); Document document = mhc.getDocument(); assertEquals(1, document.getChildNodes().getLength()); assertEquals("NEW CONTENT", document.getChildNodes().item(0).getTextContent()); mhc.documentChanged(); assertEquals(2, mhc.getNumChanges()); }
@Test public void modifyContentReflectedInTreeUtf8() throws Exception { String theContent = "N\uFFFDW C\uFFFDNT\uFFFDNT"; assertEquals(0, mhc.getNumChanges()); mhc.setContent(theContent); assertEquals(1, mhc.getNumChanges()); assertEquals(theContent, new String(IOUtils.toByteArray(mhc.getContentBytes()), "UTF8")); Document document = mhc.getDocument(); assertEquals(1, document.getChildNodes().getLength()); assertEquals(theContent, document.getChildNodes().item(0).getTextContent()); mhc.documentChanged(); assertEquals(2, mhc.getNumChanges()); }
private void checkRewriteHttp(String reqMime, String origMime, boolean expectRewrite) throws Exception { HttpRequest req = new HttpRequest(Uri.parse("http://dummy.com")).setRewriteMimeType(reqMime); HttpResponse resp = new HttpResponseBuilder().setHeader("Content-Type", origMime).create(); String inXml = "thexml"; String outJson = "{thejson}"; Converter converter = mockConverter(inXml, outJson, 1); MutableContent mc = createMock(MutableContent.class); if (expectRewrite) { expect(mc.getContent()).andReturn(inXml).once(); mc.setContent(outJson); expectLastCall().once(); } replay(mc); boolean result = new OsTemplateXmlLoaderRewriter(converter).rewrite(req, resp, mc); assertEquals(expectRewrite, result); verify(mc); if (expectRewrite) { verify(converter); } } }
if (!safe) { mc.setContent(""); return;
private void checkRewriteHttp(String reqMime, String origMime, boolean expectRewrite) throws Exception { HttpRequest req = new HttpRequest(Uri.parse("http://dummy.com")).setRewriteMimeType(reqMime); HttpResponse resp = new HttpResponseBuilder().setHeader("Content-Type", origMime).create(); String inXml = "thexml"; String outJson = "{thejson}"; Converter converter = mockConverter(inXml, outJson, 1); MutableContent mc = createMock(MutableContent.class); if (expectRewrite) { expect(mc.getContent()).andReturn(inXml).once(); mc.setContent(outJson); expectLastCall().once(); } replay(mc); boolean result = new OsTemplateXmlLoaderRewriter(converter).rewrite(req, resp, mc); assertEquals(expectRewrite, result); verify(mc); if (expectRewrite) { verify(converter); } } }
private void checkRewriteHttp(String reqMime, String origMime, boolean expectRewrite) throws Exception { HttpRequest req = new HttpRequest(Uri.parse("http://dummy.com")).setRewriteMimeType(reqMime); HttpResponse resp = new HttpResponseBuilder().setHeader("Content-Type", origMime).create(); String inXml = "thexml"; String outJson = "{thejson}"; Converter converter = mockConverter(inXml, outJson, 1); MutableContent mc = createMock(MutableContent.class); if (expectRewrite) { expect(mc.getContent()).andReturn(inXml).once(); mc.setContent(outJson); expectLastCall().once(); } replay(mc); boolean result = new OsTemplateXmlLoaderRewriter(converter).rewrite(req, resp, mc); assertEquals(expectRewrite, result); verify(mc); if (expectRewrite) { verify(converter); } } }
if (!safe) { mc.setContent("");