diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-04-26 23:35:10 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-04-26 23:35:10 +0100 |
| commit | 5506c630f1974595a4fb23b0d7acdb163d96d807 (patch) | |
| tree | 2ed30d080ae0c56b4307076998b826bee88d6a1d /dotnet/Mammoth | |
| parent | 29f0f5e881220626c5eb6a270ed73a653176660b (diff) | |
Implement InMemoryDocxFile
Diffstat (limited to 'dotnet/Mammoth')
| -rw-r--r-- | dotnet/Mammoth/Couscous/mammoth/internal/docx/InMemoryDocxFile.cs | 14 | ||||
| -rw-r--r-- | dotnet/Mammoth/Couscous/mammoth/internal/docx/ZippedDocxFile.cs | 4 |
2 files changed, 9 insertions, 9 deletions
diff --git a/dotnet/Mammoth/Couscous/mammoth/internal/docx/InMemoryDocxFile.cs b/dotnet/Mammoth/Couscous/mammoth/internal/docx/InMemoryDocxFile.cs index a475acd..9b7efd0 100644 --- a/dotnet/Mammoth/Couscous/mammoth/internal/docx/InMemoryDocxFile.cs +++ b/dotnet/Mammoth/Couscous/mammoth/internal/docx/InMemoryDocxFile.cs @@ -1,17 +1,13 @@ using Mammoth.Couscous.java.io; using Mammoth.Couscous.java.util; +using System.IO; namespace Mammoth.Couscous.org.zwobble.mammoth.@internal.docx { - internal class InMemoryDocxFile : DocxFile { + internal class InMemoryDocxFile { internal static DocxFile fromStream(InputStream stream) { - return new InMemoryDocxFile(); - } - - public Optional<InputStream> tryGetInputStream(string name) { - throw new System.NotImplementedException(); - } - - public void close() { + var memoryStream = new MemoryStream(); + stream.Stream.CopyTo(memoryStream); + return new ZippedDocxFile(memoryStream); } } } diff --git a/dotnet/Mammoth/Couscous/mammoth/internal/docx/ZippedDocxFile.cs b/dotnet/Mammoth/Couscous/mammoth/internal/docx/ZippedDocxFile.cs index cad7a2f..cf39e63 100644 --- a/dotnet/Mammoth/Couscous/mammoth/internal/docx/ZippedDocxFile.cs +++ b/dotnet/Mammoth/Couscous/mammoth/internal/docx/ZippedDocxFile.cs @@ -9,6 +9,10 @@ namespace Mammoth.Couscous.org.zwobble.mammoth.@internal.docx { internal ZippedDocxFile(File file) { _zipFile = ZipFile.OpenRead(file.Path); } + + internal ZippedDocxFile(System.IO.Stream stream) { + _zipFile = new ZipArchive(stream); + } public Optional<InputStream> tryGetInputStream(string name) { var entry = _zipFile.GetEntry(name); |
