From 36d31f82bc1022c8afe41f6d9e98fb2e2d9a7b38 Mon Sep 17 00:00:00 2001 From: Peter Chapman Date: Tue, 12 Nov 2024 12:14:56 +1300 Subject: [PATCH] Update API example to zip on run --- samples/ApiExample/ApiExample.csproj | 5 +- samples/ApiExample/Program.cs | 15 ++- samples/ApiExample/data/TEA.zip | Bin 8833 -> 0 bytes samples/ApiExample/data/TEA/84MANTEA.SFM | 66 +++++++++ samples/ApiExample/data/TEA/85PS2TEA.SFM | 32 +++++ samples/ApiExample/data/TEA/BookNames.xml | 126 ++++++++++++++++++ samples/ApiExample/data/TEA/C3LAOTEA.SFM | 37 +++++ samples/ApiExample/data/TEA/CommentTags.xml | 5 + .../ApiExample/data/TEA/ProjectProgress.xml | 20 +++ .../ApiExample/data/TEA/ProjectUpdates.xml | 7 + samples/ApiExample/data/TEA/Settings.xml | 32 +++++ samples/ApiExample/data/TEA/en.ldml | 26 ++++ samples/ApiExample/data/TEA/unique.id | 1 + samples/ApiExample/data/TMA.zip | Bin 4505 -> 0 bytes samples/ApiExample/data/TMA/84MANTMA.SFM | 48 +++++++ samples/ApiExample/data/TMA/85PS2TMA.SFM | 32 +++++ samples/ApiExample/data/TMA/BookNames.xml | 126 ++++++++++++++++++ samples/ApiExample/data/TMA/C3LAOTMA.SFM | 14 ++ samples/ApiExample/data/TMA/CommentTags.xml | 5 + .../ApiExample/data/TMA/ProjectProgress.xml | 20 +++ samples/ApiExample/data/TMA/Settings.xml | 31 +++++ samples/ApiExample/data/TMA/mi.ldml | 15 +++ samples/ApiExample/data/TMA/unique.id | 1 + 23 files changed, 656 insertions(+), 8 deletions(-) delete mode 100644 samples/ApiExample/data/TEA.zip create mode 100644 samples/ApiExample/data/TEA/84MANTEA.SFM create mode 100644 samples/ApiExample/data/TEA/85PS2TEA.SFM create mode 100644 samples/ApiExample/data/TEA/BookNames.xml create mode 100644 samples/ApiExample/data/TEA/C3LAOTEA.SFM create mode 100644 samples/ApiExample/data/TEA/CommentTags.xml create mode 100644 samples/ApiExample/data/TEA/ProjectProgress.xml create mode 100644 samples/ApiExample/data/TEA/ProjectUpdates.xml create mode 100644 samples/ApiExample/data/TEA/Settings.xml create mode 100644 samples/ApiExample/data/TEA/en.ldml create mode 100644 samples/ApiExample/data/TEA/unique.id delete mode 100644 samples/ApiExample/data/TMA.zip create mode 100644 samples/ApiExample/data/TMA/84MANTMA.SFM create mode 100644 samples/ApiExample/data/TMA/85PS2TMA.SFM create mode 100644 samples/ApiExample/data/TMA/BookNames.xml create mode 100644 samples/ApiExample/data/TMA/C3LAOTMA.SFM create mode 100644 samples/ApiExample/data/TMA/CommentTags.xml create mode 100644 samples/ApiExample/data/TMA/ProjectProgress.xml create mode 100644 samples/ApiExample/data/TMA/Settings.xml create mode 100644 samples/ApiExample/data/TMA/mi.ldml create mode 100644 samples/ApiExample/data/TMA/unique.id diff --git a/samples/ApiExample/ApiExample.csproj b/samples/ApiExample/ApiExample.csproj index a7c70643..9d56d539 100644 --- a/samples/ApiExample/ApiExample.csproj +++ b/samples/ApiExample/ApiExample.csproj @@ -12,10 +12,7 @@ PreserveNewest - - PreserveNewest - - + PreserveNewest diff --git a/samples/ApiExample/Program.cs b/samples/ApiExample/Program.cs index 0c46d5ff..33a07201 100644 --- a/samples/ApiExample/Program.cs +++ b/samples/ApiExample/Program.cs @@ -4,6 +4,7 @@ using Microsoft.Extensions.DependencyInjection; using Newtonsoft.Json.Linq; using Serval.Client; +using System.IO.Compression; // Setup and get the services ServiceProvider services = SetupServices(); @@ -95,9 +96,12 @@ async Task CreatePreTranslationEngineAsync(CancellationToken cancellationToken) { // 1a. Create the source data file Console.WriteLine("Create a source data file"); - const string SourceFileName = "TEA.zip"; - await using (Stream sourceFileStream = File.OpenRead(Path.Combine("data", SourceFileName))) + const string SourceDirectory = "TEA"; + const string SourceFileName = $"{SourceDirectory}.zip"; + await using (var sourceFileStream = new MemoryStream()) { + ZipFile.CreateFromDirectory(Path.Combine("data", SourceDirectory), sourceFileStream); + sourceFileStream.Seek(0, SeekOrigin.Begin); DataFile sourceDataFile = await dataFilesClient.CreateAsync( new FileParameter(sourceFileStream, SourceFileName), FileFormat.Paratext, @@ -109,9 +113,12 @@ async Task CreatePreTranslationEngineAsync(CancellationToken cancellationToken) // 1b. Create the target data file Console.WriteLine("Create a target data file"); - const string TargetFileName = "TMA.zip"; - await using (Stream targetFileStream = File.OpenRead(Path.Combine("data", TargetFileName))) + const string TargetDirectory = "TMA"; + const string TargetFileName = $"{TargetDirectory}.zip"; + await using (var targetFileStream = new MemoryStream()) { + ZipFile.CreateFromDirectory(Path.Combine("data", TargetDirectory), targetFileStream); + targetFileStream.Seek(0, SeekOrigin.Begin); DataFile targetDataFile = await dataFilesClient.CreateAsync( new FileParameter(targetFileStream, TargetFileName), FileFormat.Paratext, diff --git a/samples/ApiExample/data/TEA.zip b/samples/ApiExample/data/TEA.zip deleted file mode 100644 index 8dd5c5067458b941f7a0d54f87795ccfcec6656e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8833 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/samples/ApiExample/data/TEA/C3LAOTEA.SFM b/samples/ApiExample/data/TEA/C3LAOTEA.SFM new file mode 100644 index 00000000..f5209310 --- /dev/null +++ b/samples/ApiExample/data/TEA/C3LAOTEA.SFM @@ -0,0 +1,37 @@ +\id LAO - Test English Apocrypha +\h Laodiceans +\toc1 Laodiceans +\toc2 Laodiceans +\toc3 Laodiceans +\mt1 Epistle to the Laodiceans +\imt Introduction +\ip The following is a translation of the J.B. Lightfoot’s reverse translation of the surviving Latin translation of the Epistle to the Laodiceans into Koine Greek. This translation, published in his commentary on Colossians and Philemon (new edition, 1879) is based on the premise that the original epistle is a composition of quotations from the Pauline Epistles, compiled by an unknown author, purporting to be a letter from Paul to the church at Laodicea. +\c 1 +\po +\v 1 Paul, an apostle—not from men nor through man, but through Jesus Christ,\x - \xo 1.1 \xt Gal 1:1\x* to the brothers who are in Laodicea.\x - \xo 1.1 \xt Col 4:16\x* +\v 2 Grace to you and peace from God the\f + \fr 1.2 \fq the \ft Some manuscripts \fq our\f* Father and the Lord Jesus Christ.\x - \xo 1.2 \xt Gal 1:3; Phil 1:2 \x* +\p +\v 3 I give thanks to Christ in all my prayers,\x - \xo 1.3 \xt Phil 1:3\x* that you are continuing in him and persevering in his works, eagerly awaiting the promise \add of salvation\add*\x - \xo 1.3 \xt Gal 5:5\x* in the day of judgment.\x - \xo 1.3 \xt 2 Pet 2:9; 3:7; cf. Phil 2:16\x* +\p +\v 4 Neither do the vain discussions of certain men\x - \xo 1.4 \xt 1 Tim 1:6\x* deceive you, with their aim to turn you away\x - \xo 1.4 \xt 2 Tim 4:4\x* from the truth of the gospel\x - \xo 1.4 \xt Col 1:5; Gal 2:5, 14\x* which is preached by me.\x - \xo 1.4 \xt Gal 1:11 (cf. Gal 1:8)\x* +\v 5 So\f + \fr 1.5 \fq So \ft Greek: \fqa And \f* now God will work in those who are \add imitators\add*\x - \xo 1.5 \xt 1 Thes 2:14\x* of me\f + \fr 1.5 \fq imitators of me \ft Greek \fqa of mine\f* to advance the truth of the gospel,\x - \xo 1.5 \xt Phil 1:12\x* […]\f + \fr 1.5 \fq […] \ft A section appears to be missing, according to J.B. Lightfoot. \f* worshipping and practicing generosity—works of salvation [and]\f + \fr 1.5 \fq [and] \ft It is doubtful that this word was in the original Greek.\f* of eternal life. +\v 6 And now my imprisonment\f + \fr 1.6 \fq imprisonment \ft Greek \fqa chains\f* is widely known, which I suffer in Christ, in which I rejoice and am glad.\x - \xo 1.6 \xt Matt 5:12 cf. Phil 1:18\x* +\v 7 And this is for my eternal salvation, which will occur through your prayers, and the help of the Holy Spirit,\x - \xo 1.7 \xt Phil 1:19\x* whether by life or by death.\x - \xo 1.7 \xt Phil 1:20\x* +\v 8 For to me, to live is Christ, and to die is joy.\x - \xo 1.8 \xt Phil 1:21\x* +\v 9 And so he will work in you according to his mercy, that you may have the same love, and be in full accord.\x - \xo 1.9 \xt Phil 2:2\x* +\v 10 Therefore beloved, as you have obeyed in my presence,\x - \xo 1.10 \xt Phil 2:12\x* so work, remembering\x - \xo 1.10 \xt 2 Thes 2:5 (Vulgate)\x* the fear of God,\f + \fr 1.10 \fq God \ft J.B. Lightfoot’s Greek text has \fqa Lord\fqa*, but this is not present in any Latin manuscripts.\f* and it will be to you eternal life,\f + \fr 1.10 \fq life, \ft The Latin and Greek text end the sentence here.\f* +\v 11 for it is God who works in you.\x - \xo 1.11 \xt Phil 2:13\x* +\v 12 And do without grumbling,\x - \xo 1.12 \xt Phil 2:14\x* whatever you do.\x - \xo 1.12 \xt Col 3:17\x* +\p +\v 13 And finally, beloved, rejoice in Christ.\x - \xo 1.13 \xt Phil 3:1\x* Look out for those \add who are\add* greedy for dishonest gain.\x - \xo 1.13 \xt 1 Tim 3:8; Tit 1:7\x* +\v 14 Let all your requests be made known to God,\x - \xo 1.14 \xt Phil 4:6\x* and be steadfast\x - \xo 1.14 \xt 1 Cor 15:58\x* in the mind of Christ.\x - \xo 1.14 \xt 1 Cor 2:16\x* +\v 15 Whatever is sound, and true, and honourable, and just,\f + \fr 1.15 \ft Some manuscripts add \fq and pure\f* and lovely,\x - \xo 1.15 \xt Phil 4:8\x* practice these things.\x - \xo 1.15 \xt Phil 4:9\x* +\v 16 And what you have heard and received, hold in your heart, and peace will be with you. +\p +\v 17 [Greet the brothers.\x - \xo 1.17 \xt 1 Thes 5:26\x*]\f + \fr 1.17 \ft Most manuscripts omit verse 17.\f* +\p +\v 18 The saints greet you.\f + \fr 1.18 \ft One manuscript omits this verse.\f*\x - \xo 1.18 \xt Phil 4:22\x* +\p +\v 19 The grace of the Lord Jesus Christ\f + \fr 1.19 \ft Some manuscripts omit \fq Christ\f* be with your spirit.\x - \xo 1.19 \xt Phil 4:28\x* +\p +\v 20 And have this \add letter\add* read to the Colossians, and that of the Colossians to you.\f + \fr 1.20 \ft One manuscript adds \fq Amen.\fq*, another manuscript omits this verse.\f*\x - \xo 1.20 \xt Col 4:16\x* diff --git a/samples/ApiExample/data/TEA/CommentTags.xml b/samples/ApiExample/data/TEA/CommentTags.xml new file mode 100644 index 00000000..624f1523 --- /dev/null +++ b/samples/ApiExample/data/TEA/CommentTags.xml @@ -0,0 +1,5 @@ + + + + 1 + \ No newline at end of file diff --git a/samples/ApiExample/data/TEA/ProjectProgress.xml b/samples/ApiExample/data/TEA/ProjectProgress.xml new file mode 100644 index 00000000..bd16524a --- /dev/null +++ b/samples/ApiExample/data/TEA/ProjectProgress.xml @@ -0,0 +1,20 @@ + + + + None + + 000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000001 + + + 000001111111110010000000000000010000000000000000000000000000000000111001111111001010100000000000000000000000000000000000000 + + + 110110000000001100000000000000000000000111010000000001111010001111000000000000110101000000000000000000000000000111111111111 + + + 001000000000000000111100001000000000101000100110000110000001110000000110000000000000000000000000000000000000000000000000000 + + + 000000000000000001000011110111101111010000001001111000000100000000000000000000000000010000000000000000011100000000000000000 + + \ No newline at end of file diff --git a/samples/ApiExample/data/TEA/ProjectUpdates.xml b/samples/ApiExample/data/TEA/ProjectUpdates.xml new file mode 100644 index 00000000..0bbf0e6e --- /dev/null +++ b/samples/ApiExample/data/TEA/ProjectUpdates.xml @@ -0,0 +1,7 @@ + + + 1FE40EDA-1D82-4ED8-95D1-5F44B8EC25CD + 207EF1E9-D931-41A0-920D-96BAEF744746 + 5C974ECE-A444-4E5A-B980-125E3CDEE7E2 + B946EEE7-B890-47FA-BBEF-8D0E6F729F82 + \ No newline at end of file diff --git a/samples/ApiExample/data/TEA/Settings.xml b/samples/ApiExample/data/TEA/Settings.xml new file mode 100644 index 00000000..43bbbf3d --- /dev/null +++ b/samples/ApiExample/data/TEA/Settings.xml @@ -0,0 +1,32 @@ + + usfm.sty + 4 + English + 8.0.100.76 + Test English Apocrypha + 65001 + T + + NFC + TEA + a7e9f1c362e728a143bb5eef7f6c79bcab2478fa + Charis SIL + 12 + + + en::: + 41MAT + + TEA.SFM + Major::BiblicalTerms.xml + F + F + F + Public + Standard:: + + 3 + 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000001 + + \ No newline at end of file diff --git a/samples/ApiExample/data/TEA/en.ldml b/samples/ApiExample/data/TEA/en.ldml new file mode 100644 index 00000000..87c6fb5a --- /dev/null +++ b/samples/ApiExample/data/TEA/en.ldml @@ -0,0 +1,26 @@ +[A-Za-z][!'-),-.\:;?\[\]\u00B4\u200C\u200D\u2014\u2018\u2019\u201C\u201D]['\-\u00B4\u2014][][][a b c d e f g h i j k l m n o p q r s t u v w x y z {aa} {bb} {cc} {dd} {ee} {ff} {gg} {hh} {ii} {jj} {kk} {ll} {mm} {nn} {oo} {pp} {qq} {rr} {ss} {tt} {uu} {vv} {ww} {xx} {yy} {zz}][][]left-to-rightstandard \ No newline at end of file diff --git a/samples/ApiExample/data/TEA/unique.id b/samples/ApiExample/data/TEA/unique.id new file mode 100644 index 00000000..66104d45 --- /dev/null +++ b/samples/ApiExample/data/TEA/unique.id @@ -0,0 +1 @@ +ed450f1c-1d1f-4ef1-87ac-a6b1d3b4735b \ No newline at end of file diff --git a/samples/ApiExample/data/TMA.zip b/samples/ApiExample/data/TMA.zip deleted file mode 100644 index 133f62f5b3be7f3026ef7ab786f79c4dd6b24390..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4505 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 diff --git a/samples/ApiExample/data/TMA/84MANTMA.SFM b/samples/ApiExample/data/TMA/84MANTMA.SFM new file mode 100644 index 00000000..ce7aa080 --- /dev/null +++ b/samples/ApiExample/data/TMA/84MANTMA.SFM @@ -0,0 +1,48 @@ +\id MAN - Test Maori Apocrypha +\h +\mt1 +\imt +\ip +\c 1 +\q1 \v 1 +\q2 +\q1 +\q2 +\q1 \v 2 +\q1 \v 3 +\q2 +\q1 \v 4 +\q1 \v 5 +\q1 +\q1 \v 6 +\q1 \v 7 +\q2 +\q3 +\q1 \v 8 +\q2 +\q1 +\q2 +\q1 \v 9 +\q2 +\q1 +\q2 +\q1 \v 10 +\q2 +\q3 +\q1 +\q2 +\q3 +\q1 \v 11 +\q1 \v 12 +\q2 +\q1 \v 13 +\q2 +\q1 +\q2 +\q3 +\q1 +\q2 \v 14 +\q1 +\q2 \v 15 +\q1 +\q2 diff --git a/samples/ApiExample/data/TMA/85PS2TMA.SFM b/samples/ApiExample/data/TMA/85PS2TMA.SFM new file mode 100644 index 00000000..1a1922d6 --- /dev/null +++ b/samples/ApiExample/data/TMA/85PS2TMA.SFM @@ -0,0 +1,32 @@ +\id PS2 - Test Māori Apocrypha +\h NGA WAIATA 151 +\toc1 Ko Nga Waiata 151 +\toc2 Nga Waiata 151 +\toc3 Waiata 151 +\mt1 NGA WAIATA 151 +\imt Te Tīmatanga Kōrero +\ip +\c 1 +\cp 151 +\d Na Rawiri i tuhituhi tenei waiata ki tona ringa ake (ahakoa kei waho i te tatau), i muri i tana whawhai kotahi ki a Golia. +\q1 +\v 1 He i iti ahau waenga i oku tuākana, me te pōtiki i te whare o āku papa; +\q2 I tiaki ahau i nga hipi a toku papa. +\q1 +\v 2 I hanga e oku ringa te hapa; +\q2 i hanga e oku maihao he kutā. +\q1 +\v 3 A ma wai e korero ki toku Ariki? +\q2 Ko te Ariki tonu, e rongo ana ia. +\q1 +\v 4 I tono mai ia i tana karere ki ahau, ka tango mai i ahau i roto i nga hipi a toku papa, +\q2 a pania ana ahau e ia ki te hinu. +\q1 +\v 5 He ataahua, he nunui rawa oku teina; +\q2 otiia kihai te Ariki i ahuareka ki a ratou. +\q1 +\v 6 I haere mai ahau kia whakatau i te tangata iwi ke, +\q2 a kanga iho ahau e ia ki ana whakapakoko. +\q1 +\v 7 Na unuhia ana e ahau tana hoari, tapahia ana tona matenga e ahau, +\q2 a ka tangohia e ahau te tawai o nga tama a Iharaira. diff --git a/samples/ApiExample/data/TMA/BookNames.xml b/samples/ApiExample/data/TMA/BookNames.xml new file mode 100644 index 00000000..833a316b --- /dev/null +++ b/samples/ApiExample/data/TMA/BookNames.xml @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/samples/ApiExample/data/TMA/C3LAOTMA.SFM b/samples/ApiExample/data/TMA/C3LAOTMA.SFM new file mode 100644 index 00000000..9459c187 --- /dev/null +++ b/samples/ApiExample/data/TMA/C3LAOTMA.SFM @@ -0,0 +1,14 @@ +\id LAO - Test Maori Apocrypha +\h +\mt1 +\imt +\ip +\c 1 +\po \v 1 \v 2 +\p \v 3 +\p \v 4 \v 5 \v 6 \v 7 \v 8 \v 9 \v 10 \v 11 \v 12 +\p \v 13 \v 14 \v 15 \v 16 +\p \v 17 +\p \v 18 +\p \v 19 +\p \v 20 diff --git a/samples/ApiExample/data/TMA/CommentTags.xml b/samples/ApiExample/data/TMA/CommentTags.xml new file mode 100644 index 00000000..624f1523 --- /dev/null +++ b/samples/ApiExample/data/TMA/CommentTags.xml @@ -0,0 +1,5 @@ + + + + 1 + \ No newline at end of file diff --git a/samples/ApiExample/data/TMA/ProjectProgress.xml b/samples/ApiExample/data/TMA/ProjectProgress.xml new file mode 100644 index 00000000..bd16524a --- /dev/null +++ b/samples/ApiExample/data/TMA/ProjectProgress.xml @@ -0,0 +1,20 @@ + + + + None + + 000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000001 + + + 000001111111110010000000000000010000000000000000000000000000000000111001111111001010100000000000000000000000000000000000000 + + + 110110000000001100000000000000000000000111010000000001111010001111000000000000110101000000000000000000000000000111111111111 + + + 001000000000000000111100001000000000101000100110000110000001110000000110000000000000000000000000000000000000000000000000000 + + + 000000000000000001000011110111101111010000001001111000000100000000000000000000000000010000000000000000011100000000000000000 + + \ No newline at end of file diff --git a/samples/ApiExample/data/TMA/Settings.xml b/samples/ApiExample/data/TMA/Settings.xml new file mode 100644 index 00000000..a970e88e --- /dev/null +++ b/samples/ApiExample/data/TMA/Settings.xml @@ -0,0 +1,31 @@ + + usfm.sty + Maori + 8.0.100.76 + Test Maori Apocrypha + 65001 + T + + NFC + TMA + e1b3f0c799c4378a1757dd1b382c1dd515af37db + Charis SIL + 12 + + + mi::: + 41MAT + + TMA.SFM + Major::BiblicalTerms.xml + F + F + F + Public + Daughter:TEA:a7e9f1c362e728a143bb5eef7f6c79bcab2478fa + + 3 + 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000001 + + \ No newline at end of file diff --git a/samples/ApiExample/data/TMA/mi.ldml b/samples/ApiExample/data/TMA/mi.ldml new file mode 100644 index 00000000..aa095e0e --- /dev/null +++ b/samples/ApiExample/data/TMA/mi.ldml @@ -0,0 +1,15 @@ +[AEHIKM-PRTUWaehikm-prtuw\u0100\u0101\u0112\u0113\u012A\u012B\u014C\u014D\u016A\u016B{ng}{wh}][!(-*,-.\:;?\u00B6\u200C\u200D\u2010\u2014][*\-][][a e h i k m n {ng} o p r t u w {wh}][a e h i k m n {ng} o p r t u w {wh}][][]left-to-rightstandard \ No newline at end of file diff --git a/samples/ApiExample/data/TMA/unique.id b/samples/ApiExample/data/TMA/unique.id new file mode 100644 index 00000000..d3b98c55 --- /dev/null +++ b/samples/ApiExample/data/TMA/unique.id @@ -0,0 +1 @@ +f2ca92e1-0778-4424-9096-a1e64feb6123 \ No newline at end of file