提交 ac4ffaf4 编写于 作者: S Serge Rider

#469 Extract input readers


Former-commit-id: 6e6be657
上级 4b9155b2
......@@ -37,6 +37,8 @@ import org.jkiss.utils.IOUtils;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.Reader;
import java.io.StringWriter;
import java.sql.*;
/**
......@@ -198,6 +200,17 @@ public class JDBCContentValueHandler extends JDBCAbstractValueHandler {
}
IOUtils.close(stream);
return new JDBCContentBytes(session.getDataSource(), buffer.toByteArray());
} else if (object instanceof Reader) {
// Copy reader to string
StringWriter buffer = new StringWriter();
final Reader reader = (Reader) object;
try {
IOUtils.copyText(reader, buffer);
} catch (Exception e) {
throw new DBCException("Error reading content reader", e);
}
IOUtils.close(reader);
return new JDBCContentChars(session.getDataSource(), buffer.toString());
} else if (object instanceof DBDContent) {
if (copy && object instanceof DBDValueCloneable) {
return (DBDContent) ((DBDValueCloneable)object).cloneValue(session.getProgressMonitor());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册