@Override public String getEncoding() { return this.cacheWriter.getEncoding(); }
@Override public String getEncoding() { return delegatee.getEncoding(); }
@Override public String getEncoding() { return delegatee.getEncoding(); }
@Override public String getEncoding() { return this.cacheWriter.getEncoding(); }
if (writer.getEncoding() == null) charWriter = new OutputStreamWriter(writer.getContentOutputStream(), writer.getEncoding());
if (writer.getEncoding() == null) charWriter = new OutputStreamWriter(writer.getContentOutputStream(), writer.getEncoding());
public Void execute() throws Throwable { try { // put the content if (writer.getEncoding() == null) { os.write(content.getBytes()); } else { os.write(content.getBytes(writer.getEncoding())); } os.close(); } finally { if (os != null) { try { os.close(); } catch (IOException e) {} } } return null; } };
String encoding = writer.getEncoding(); String targetMimeType = writer.getMimetype();
String encoding = writer.getEncoding(); String targetMimeType = writer.getMimetype();
currentWriter = new FileContentWriter(tempFile); currentWriter.setMimetype(outputMimetype); currentWriter.setEncoding(writer.getEncoding());
currentWriter = new FileContentWriter(tempFile); currentWriter.setMimetype(outputMimetype); currentWriter.setEncoding(writer.getEncoding());
extractor.setLinks(false); extractor.setReplaceNonBreakingSpaces(false); extractor.setURL(tempHtmlFile, contentWriter.getEncoding()); sb.append(extractor.getStrings());
extractor.setLinks(false); extractor.setReplaceNonBreakingSpaces(false); extractor.setURL(tempHtmlFile, contentWriter.getEncoding()); sb.append(extractor.getStrings());
@Test public void encodingAttrsCopiedToBackingStoreWriter() { cachingStore = new CachingContentStore(backingStore, cache, true); ContentContext ctx = ContentContext.NULL_CONTEXT; ContentWriter bsWriter = mock(ContentWriter.class); when(backingStore.getWriter(ctx)).thenReturn(bsWriter); when(bsWriter.getContentUrl()).thenReturn("url"); ContentWriter cacheWriter = mock(ContentWriter.class); when(cache.getWriter("url")).thenReturn(cacheWriter); ContentReader readerFromCacheWriter = mock(ContentReader.class); when(cacheWriter.getReader()).thenReturn(readerFromCacheWriter); when(cacheWriter.getEncoding()).thenReturn("UTF-8"); when(cacheWriter.getLocale()).thenReturn(Locale.UK); when(cacheWriter.getMimetype()).thenReturn("not/real/mimetype"); cachingStore.getWriter(ctx); // Get the stream listener and trigger it ArgumentCaptor<ContentStreamListener> arg = ArgumentCaptor.forClass(ContentStreamListener.class); verify(cacheWriter).addListener(arg.capture()); // Simulate a stream close arg.getValue().contentStreamClosed(); verify(bsWriter).setEncoding("UTF-8"); verify(bsWriter).setLocale(Locale.UK); verify(bsWriter).setMimetype("not/real/mimetype"); }
String targetEncoding = writer.getEncoding();
String targetEncoding = writer.getEncoding();
@Test public void testMimetypAndEncodingAndLocale() throws Exception { ContentWriter writer = getWriter(); // set mimetype and encoding writer.setMimetype("text/plain"); writer.setEncoding("UTF-16"); writer.setLocale(Locale.CHINESE); // create a UTF-16 string String content = "A little bit o' this and a little bit o' that"; byte[] bytesUtf16 = content.getBytes("UTF-16"); // write the bytes directly to the writer OutputStream os = writer.getContentOutputStream(); os.write(bytesUtf16); os.close(); // now get a reader from the writer ContentReader reader = writer.getReader(); assertEquals("Writer -> Reader content URL mismatch", writer.getContentUrl(), reader.getContentUrl()); assertEquals("Writer -> Reader mimetype mismatch", writer.getMimetype(), reader.getMimetype()); assertEquals("Writer -> Reader encoding mismatch", writer.getEncoding(), reader.getEncoding()); assertEquals("Writer -> Reader locale mismatch", writer.getLocale(), reader.getLocale()); // now get the string directly from the reader String contentCheck = reader.getContentString(); // internally it should have taken care of the encoding assertEquals("Encoding and decoding of strings failed", content, contentCheck); }
assertEquals("UTF-16", writer.getEncoding()); assertEquals(Locale.CHINESE, writer.getLocale()); assertEquals("UTF-8", writer.getEncoding()); assertEquals(Locale.getDefault(), writer.getLocale());
int length = content.getBytes(writer.getEncoding()).length; assertEquals("Reader content length is incorrect", length, readerFromWriter.getSize());
assertNotNull("Content URL should not be null", writer.getContentUrl()); assertNotNull("Content mimetype should not be null", writer.getMimetype()); assertNotNull("Content encoding should not be null", writer.getEncoding()); assertNotNull("Content locale should not be null", writer.getLocale());