Java Code Examples for org.springframework.core.io.buffer.DataBuffer#read()

The following examples show how to use org.springframework.core.io.buffer.DataBuffer#read() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
/**
 * Convert the given data buffer into a {@link HttpHeaders} instance. The given string is read
 * as US-ASCII, then split along \r\n line boundaries, each line containing a header name and
 * value(s).
 */
private static HttpHeaders toHeaders(DataBuffer dataBuffer) {
	byte[] bytes = new byte[dataBuffer.readableByteCount()];
	dataBuffer.read(bytes);
	DataBufferUtils.release(dataBuffer);
	String string = new String(bytes, StandardCharsets.US_ASCII);
	String[] lines = string.split(HEADER_SEPARATOR);
	HttpHeaders result = new HttpHeaders();
	for (String line : lines) {
		int idx = line.indexOf(':');
		if (idx != -1) {
			String name = line.substring(0, idx);
			String value = line.substring(idx + 1);
			while (value.startsWith(" ")) {
				value = value.substring(1);
			}
			String[] tokens = StringUtils.tokenizeToStringArray(value, ",");
			for (String token : tokens) {
				result.add(name, token);
			}
		}
	}
	return result;
}
 
Example 2
@Test
public void resolveParts() {
	ServerHttpRequest request = generateMultipartRequest();
	ResolvableType elementType = forClassWithGenerics(MultiValueMap.class, String.class, Part.class);
	MultiValueMap<String, Part> parts = this.reader.readMono(elementType, request, emptyMap()).block();
	assertEquals(2, parts.size());

	assertTrue(parts.containsKey("fooPart"));
	Part part = parts.getFirst("fooPart");
	assertTrue(part instanceof FilePart);
	assertEquals("fooPart", part.name());
	assertEquals("foo.txt", ((FilePart) part).filename());
	DataBuffer buffer = DataBufferUtils.join(part.content()).block();
	assertEquals(12, buffer.readableByteCount());
	byte[] byteContent = new byte[12];
	buffer.read(byteContent);
	assertEquals("Lorem Ipsum.", new String(byteContent));

	assertTrue(parts.containsKey("barPart"));
	part = parts.getFirst("barPart");
	assertTrue(part instanceof FormFieldPart);
	assertEquals("barPart", part.name());
	assertEquals("bar", ((FormFieldPart) part).value());
}
 
Example 3
@Test
public void resolveParts() {
	ServerHttpRequest request = generateMultipartRequest();
	ResolvableType elementType = forClassWithGenerics(MultiValueMap.class, String.class, Part.class);
	MultiValueMap<String, Part> parts = this.reader.readMono(elementType, request, emptyMap()).block();
	assertEquals(2, parts.size());

	assertTrue(parts.containsKey("fooPart"));
	Part part = parts.getFirst("fooPart");
	assertTrue(part instanceof FilePart);
	assertEquals("fooPart", part.name());
	assertEquals("foo.txt", ((FilePart) part).filename());
	DataBuffer buffer = DataBufferUtils.join(part.content()).block();
	assertEquals(12, buffer.readableByteCount());
	byte[] byteContent = new byte[12];
	buffer.read(byteContent);
	assertEquals("Lorem Ipsum.", new String(byteContent));

	assertTrue(parts.containsKey("barPart"));
	part = parts.getFirst("barPart");
	assertTrue(part instanceof FormFieldPart);
	assertEquals("barPart", part.name());
	assertEquals("bar", ((FormFieldPart) part).value());
}
 
Example 4
Source Project: spring-analysis-note   File: ResourceDecoder.java    License: MIT License 5 votes vote down vote up
@Override
public Resource decode(DataBuffer dataBuffer, ResolvableType elementType,
		@Nullable MimeType mimeType, @Nullable Map<String, Object> hints) {

	byte[] bytes = new byte[dataBuffer.readableByteCount()];
	dataBuffer.read(bytes);
	DataBufferUtils.release(dataBuffer);

	if (logger.isDebugEnabled()) {
		logger.debug(Hints.getLogPrefix(hints) + "Read " + bytes.length + " bytes");
	}

	Class<?> clazz = elementType.toClass();
	String filename = hints != null ? (String) hints.get(FILENAME_HINT) : null;
	if (clazz == InputStreamResource.class) {
		return new InputStreamResource(new ByteArrayInputStream(bytes)) {
			@Override
			public String getFilename() {
				return filename;
			}
		};
	}
	else if (Resource.class.isAssignableFrom(clazz)) {
		return new ByteArrayResource(bytes) {
			@Override
			public String getFilename() {
				return filename;
			}
		};
	}
	else {
		throw new IllegalStateException("Unsupported resource class: " + clazz);
	}
}
 
Example 5
private static String bufferToString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	DataBufferUtils.release(buffer);
	return new String(bytes, charset);
}
 
Example 6
private static String bufferToString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	DataBufferUtils.release(buffer);
	return new String(bytes, charset);
}
 
Example 7
Source Project: java-technology-stack   File: ResourceDecoder.java    License: MIT License 5 votes vote down vote up
@Override
protected Resource decodeDataBuffer(DataBuffer dataBuffer, ResolvableType elementType,
		@Nullable MimeType mimeType, @Nullable Map<String, Object> hints) {

	byte[] bytes = new byte[dataBuffer.readableByteCount()];
	dataBuffer.read(bytes);
	DataBufferUtils.release(dataBuffer);

	if (logger.isDebugEnabled()) {
		logger.debug(Hints.getLogPrefix(hints) + "Read " + bytes.length + " bytes");
	}

	Class<?> clazz = elementType.toClass();
	if (clazz == InputStreamResource.class) {
		return new InputStreamResource(new ByteArrayInputStream(bytes));
	}
	else if (Resource.class.isAssignableFrom(clazz)) {
		return new ByteArrayResource(bytes);
	}
	else {
		throw new IllegalStateException("Unsupported resource class: " + clazz);
	}
}
 
Example 8
Source Project: java-technology-stack   File: ByteArrayDecoder.java    License: MIT License 5 votes vote down vote up
@Override
protected byte[] decodeDataBuffer(DataBuffer dataBuffer, ResolvableType elementType,
		@Nullable MimeType mimeType, @Nullable Map<String, Object> hints) {

	byte[] result = new byte[dataBuffer.readableByteCount()];
	dataBuffer.read(result);
	DataBufferUtils.release(dataBuffer);
	if (logger.isDebugEnabled()) {
		logger.debug(Hints.getLogPrefix(hints) + "Read " + result.length + " bytes");
	}
	return result;
}
 
Example 9
private static String bufferToString(DataBuffer buffer, Charset charset) {
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 10
private static String toString(DataBuffer dataBuffer, Charset charset) {
	byte[] bytes = new byte[dataBuffer.readableByteCount()];
	dataBuffer.read(bytes);
	DataBufferUtils.release(dataBuffer);
	return new String(bytes, charset).trim();
}
 
Example 11
private static String bufferToString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 12
private static String dumpString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 13
private static String bufferToString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 14
private static String dumpString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 15
Source Project: armeria   File: TestUtil.java    License: Apache License 2.0 4 votes vote down vote up
static String bufferToString(DataBuffer buffer) {
    final byte[] bytes = new byte[buffer.readableByteCount()];
    buffer.read(bytes);
    return new String(bytes);
}
 
Example 16
private static String dumpString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 17
private static String bufferToString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 18
private static String bufferToString(DataBuffer buffer, Charset charset) {
	Assert.notNull(charset, "'charset' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return new String(bytes, charset);
}
 
Example 19
/**
 * Dump all the bytes in the given data buffer, and returns them as a byte array.
 * <p>Note that this method reads the entire buffer into the heap,  which might
 * consume a lot of memory.
 * @param buffer the data buffer to dump the bytes of
 * @return the bytes in the given data buffer
 */
public static byte[] dumpBytes(DataBuffer buffer) {
	Assert.notNull(buffer, "'buffer' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return bytes;
}
 
Example 20
/**
 * Dump all the bytes in the given data buffer, and returns them as a byte array.
 * <p>Note that this method reads the entire buffer into the heap,  which might
 * consume a lot of memory.
 * @param buffer the data buffer to dump the bytes of
 * @return the bytes in the given data buffer
 */
public static byte[] dumpBytes(DataBuffer buffer) {
	Assert.notNull(buffer, "'buffer' must not be null");
	byte[] bytes = new byte[buffer.readableByteCount()];
	buffer.read(bytes);
	return bytes;
}