public void WriteElement()

in dotnet/Utils/ChunkedJsonWriter.cs [54:88]


        public void WriteElement(string jsonElement)
        {
            lock (_lock)
            {
                if (_textStream == null)
                {
                    var filename = GetChunkedOutputFilename(_outputFilenameTemplate, NumChunksWrittenSoFar);
                    Console.WriteLine($"Opening output file {filename}.");
                    var fileStream = File.Create(filename);
                    var gzipStream = new GZipStream(fileStream, CompressionMode.Compress, false);
                    _textStream = new StreamWriter(gzipStream);
                    _numElementsWrittenInCurrentChunk = 0;
                    if (!_useJsonlFormat) _textStream.Write('[');
                }

                if (_numElementsWrittenInCurrentChunk > 0)
                {
                    if (_useJsonlFormat)
                    {
                        _textStream.Write('\n');
                    }
                    else
                    {
                        _textStream.Write(',');
                    }
                }
                _textStream.Write(jsonElement);

                ++_numElementsWrittenInCurrentChunk;
                if (_numElementsWrittenInCurrentChunk >= _max_elements_per_chunk)
                {
                    CloseOutputFile();
                }
            }
        }