googleapis / googleapis/java-storage
Support `InputStream` as a source of `RequestBody`
- Lenguaje dominante
- Java
- Estrellas
- 141
- Forks
- 93
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
**Is your feature request related to a problem? Please describe.**
Currently `RequestBody` can only be constructed from `ByteBuffer`. If a caller wants to supply data from an `InputStream` this API forces an allocation and copy of the data in the stream into an intermediate buffer.
**Describe the solution you'd like**
I would like to be able to create `RequestBody` from an `InputStream`. It seems that `mark` and `reset` functionality can be used to implement rewinding in `RewindableContent`.
**Describe alternatives you've considered**
I can use an intermediate buffer solution and it works but it's not ideal.
Guía de contribución
Línea de trabajo
Comienza localizando la API de construcción de RequestBody y la implementación de RewindableContent; después, compara cómo se gestiona la fuente ByteBuffer existente. Determina el comportamiento requerido de mark/reset para un InputStream y verifica que la nueva fuente evite la copia intermedia sin dejar de ser rewindable.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- api
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 55/100