Class StreamingChunkProcessor
java.lang.Object
ai.pipeline.connector.intake.service.StreamingChunkProcessor
Processor for handling streaming chunks from large file uploads.
This processor forwards chunks to repo-service's NodeUploadService which handles streaming to S3. SHA256 is calculated incrementally for verification.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classResult of processing a chunk.static classUpload result containing metadata about the uploaded file. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidClean up stale streaming sessions.io.smallrye.mutiny.Uni<StreamingChunkProcessor.ProcessingResult> processChunk(ai.pipestream.connector.intake.StreamingChunk chunk, String bucketName, String connectorId, String fileName, String path, Map<String, String> metadata) Process a streaming chunk for a large file using header/raw/footer protocol.
-
Constructor Details
-
StreamingChunkProcessor
public StreamingChunkProcessor()
-
-
Method Details
-
processChunk
public io.smallrye.mutiny.Uni<StreamingChunkProcessor.ProcessingResult> processChunk(ai.pipestream.connector.intake.StreamingChunk chunk, String bucketName, String connectorId, String fileName, String path, Map<String, String> metadata) Process a streaming chunk for a large file using header/raw/footer protocol.This method handles three types of chunks: 1. Header chunk: Blob with storage_ref and metadata 2. Raw data chunks: Pure file content streamed to S3 3. Footer chunk: Final metadata and completion status
- Parameters:
chunk- The streaming chunk databucketName- S3 bucket name (used as drive name)connectorId- Connector identifierfileName- Original file namepath- File pathmetadata- File metadata- Returns:
- ProcessingResult indicating completion status and upload metadata
-
cleanupStaleSessions
public void cleanupStaleSessions()Clean up stale streaming sessions.
-