예제 #1
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private void backupCorruptedContent(long recoveredTransactionLogVersion, long recoveredTransactionOffset) throws java.io.IOException
        private void BackupCorruptedContent(long recoveredTransactionLogVersion, long recoveredTransactionOffset)
        {
            File corruptedLogArchive = GetArchiveFile(recoveredTransactionLogVersion, recoveredTransactionOffset);

            using (ZipOutputStream recoveryContent = new ZipOutputStream(new BufferedOutputStream(_fs.openAsOutputStream(corruptedLogArchive, false))))
            {
                ByteBuffer zipBuffer = ByteBuffer.allocate(( int )ByteUnit.mebiBytes(1));
                CopyTransactionLogContent(recoveredTransactionLogVersion, recoveredTransactionOffset, recoveryContent, zipBuffer);
                ForEachSubsequentLogFile(recoveredTransactionLogVersion, fileIndex =>
                {
                    try
                    {
                        CopyTransactionLogContent(fileIndex, 0, recoveryContent, zipBuffer);
                    }
                    catch (IOException io)
                    {
                        throw new UncheckedIOException(io);
                    }
                });
            }
        }