processLargeFile method
Process a large file using streaming/chunked approach
Implementation
Future<List<DocumentNode>> processLargeFile(
BuildStep buildStep,
AssetId assetId, {
int chunkSize = defaultChunkSize,
bool enableMemoryMonitoring = true,
}) async {
final fileSize = await _getFileSize(buildStep, assetId);
// Use streaming for files larger than 1MB
if (fileSize > 1024 * 1024) {
return _processFileStreaming(
buildStep,
assetId,
chunkSize: chunkSize,
enableMemoryMonitoring: enableMemoryMonitoring,
);
} else {
// Use regular processing for smaller files
return _processFileRegular(buildStep, assetId);
}
}