From aeec429991f329019687e928f41581239b323523 Mon Sep 17 00:00:00 2001 From: "Tristan B. Kildaire" Date: Mon, 30 Aug 2021 14:45:35 +0200 Subject: [PATCH] ProtocolBuffer generated code works Made umports public Added stub createChannel method and Channel class --- .../liblibdnet.a | Bin 793842 -> 811164 bytes .../liblibdnet.a | Bin 793842 -> 811164 bytes README.md | 17 ++++++++++++++++- bin/liblibdnet.a | Bin 793842 -> 811164 bytes cleanUp.sh | 2 +- source/libdnet/api/client.d | 15 +++++++++++++++ source/libdnet/protobuf/channel.d | 3 ++- source/libdnet/protobuf/channel.proto | 5 ++++- source/libdnet/protobuf/dnet.d | 10 +++++----- 9 files changed, 43 insertions(+), 9 deletions(-) diff --git a/.dub/build/library-debug-linux.posix-x86_64-dmd_2094-B5B51DAEC8DA83664A254684354915B4/liblibdnet.a b/.dub/build/library-debug-linux.posix-x86_64-dmd_2094-B5B51DAEC8DA83664A254684354915B4/liblibdnet.a index a2761715bc57527e6ec172b3586998bfbb3a8b95..d6164e0c74019d7453d066c82716e15a4651b6e8 100644 GIT binary patch delta 10908 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

3!FO{CLJ`d0)sFD39 zbQ_0mAf;!3QYqFk&T&V83XKn!2XkJ%M~VjsEww;-bY`FT1K+f z)s~5g^=GG=EX%pK0FF%_UFE{XY{v~2>~aP?aNE_}m|Sly;O;`zRWfMo)U_68;-oDb zm&MB0TIMIzAbb9POEA#~7;!iAbjbZM35D3CPI*XbPIU3&=*?OHZsU3@BnD1QjDRP` z{TBx6ba|H!02Q9i?){r36Cw(>=|3$a5`KuG_`d(hGR_K~Sov8?>g0slFdUQxqpXWK z$M;`_m>o2mvgQ^Mi^vc+&>#g~iguQ%@gHpMtD}&{VUg8dzXukMT3|neV zS_(Itwba@WUsN}3d)#VcAKzlVGO-?}>|NbvT}@yy-&@%4cjq%pLI8Pwm{UX*oYUbtNJDOpnH|WVZO?jrP6|qu5mG7eK(BHdEE!k*o84g z@?1h9-Y#o6hh-0!FXT9ba9w8HXmt}jz&X<2h z=)hw(?m@a3m_`w^MNM*gh7-JPQ!8|LWsGgho$@Rd40TtS0Yo2Y-BUHBv_B6MVEH16 z5hcVI8jN)vVu*#+8H_;a+|#u+2OsGc9>6Mr8`z#gM#106X1C|r0x~Yq2jq`p9fh_N zsxx}2zrbM6M+>B+E7&zADr0s{iETw+@UA1q4P>(RgLQE;@mkx}gp_#sRGlm~&31X$ zA%YXJg5@;XzQm-&XDkI9)NGrY5CyjS3mZi2eu&uji1e1(pwNE1($=W-kWklJ+jU%a z7u;`K-$m%yX4^>AAQH4OixxFP&`i&Lr)0DL*kPOHa)vzM1@}~)@v~MEiXWo3|F9(v z5kDa-Sn=O%f5#9a^k-$qY*%;nV-Ap~6p{uwL!saP*hSAA7j1h%AwPXYc`R}2KmxLu zo}s*m@q9YvJ0++e-JL-USGeO0A-{Ap zieKi;m6j%|^DK)K)hdLBb4-qonjkWN4bjWo$^iPMTM5weDa1;LW-HU#pdY2XFjM*} z$0TwYHj?YvSMWd{9{%D4E>bjs91-Z~eL!)f z7*dtl9_1=n74s0|P1M^aXVWiQ1-ldev1BAqtUO&|dk20bdd{zu&<>BHIyewAFi89_ zsHo>K-RFa*v0i27%<;b|GXmugokS>z?SGFc#Ik}Z&|`5-fUXHv4JKhR~yX?L@IS1Qax z-W0mBHFVn~V@o?GDXsWNx@a=Is%Xb#r5w*g2q7FP%Y!ropF1Fz?GObW=Q+i0c^ zlDE;8*v6#IOHFK^l`pJqC|?#QeXUxVN&8nTcjXkC8vyHhJG7f3J`7%0V7g<5vXB&C`k91P^|QQ0n6I7-_pt6u5xTBHnU0Us z0rNp7A+K&EbjeKPGK3!9YLnUS`N|mqOn4~RGiO1;gtyTnJJrjmXS#JUh_Rn7FH#}v z6VW13o}Nsy3f%4uZ&eDcB!Fn?ua&;^c#53M)~rzeqVQh*_yt7FOCu|5c47=wkWhVF`|8_*_r{D2pCfoarvLm6^%v8$C zLkeV%KTB8dWlN7JzfNSDp7~e_@g!6Dj8fjk(n$9F{#&J*Kr)ndey7}#tmCuTN{6aJ zlX-}l;8e%Bonem_HU8MtJ*P|7%j@IoRS0QcNOAN^tQd~MnaQ0?=u^wper)?f zwXX_!55K=>KyI-7`%?8LnS>C)c&g4kp}V@^!LnQ@I;@R9ePK#!w%BdHmakNI3GVKIq2}K6f0Z!p87P;(fN)4 yPIWI11qVHw{qpas0(m%(Ne=_aGcMy9A5?~sHt8wY48p3%t;FYLe@(L&sQ(QERGTIM delta 8007 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 Ui)8U>i00j7pTPFsZ2v&{Z%DB(8UO$Q diff --git a/.dub/build/library-debug-linux.posix-x86_64-dmd_2094-F2A63E81AF8AAF15F8C8A03035331967/liblibdnet.a b/.dub/build/library-debug-linux.posix-x86_64-dmd_2094-F2A63E81AF8AAF15F8C8A03035331967/liblibdnet.a index e1a10d12f78468ee2d4c19ad6c093ba05fbf4eaf..09462bfaa541282cee3304c84ce72863adacce91 100644 GIT binary patch delta 10908 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 U7Rln%5Y4;EK7sAM+5Um@-(5E@n*aa+ diff --git a/README.md b/README.md index fef286c..7256e95 100644 --- a/README.md +++ b/README.md @@ -7,4 +7,19 @@ DNET client library. This library also contains some data structures used by the There are two _"sets"_, persay, of data structures in the library, there are those generated by ProtocolBuffers and then which are used by the library internally. There are then the OOP data structures used by the user through the API. -The former are located in `source/libdnet/protobuf/` and the latter in `source/libdnet/api/types/` \ No newline at end of file +The former are located in `source/libdnet/protobuf/` and the latter in `source/libdnet/api/types/` + +## Todo + +Below is a todo list of what needs to be done. There is a lot of work ahead and many projects that are being used to make this piece of art come to life. + +- [ ] ProtocolBuffer definitions + - [ ] Server-side encoding + - [ ] Server-to-client + - [ ] Server-to-server (not urgent) + - [ ] Client-side encoding +- [ ] Encoder/Decoder functions (for the above) +- [ ] Setup eventing system + - [ ] `tristanable` dequeue loop with hooking system into `eventy` +- [ ] Task queuing and completion with `eventy` +- [ ] Asynchronous notifications support via `eventy` \ No newline at end of file diff --git a/bin/liblibdnet.a b/bin/liblibdnet.a index a2761715bc57527e6ec172b3586998bfbb3a8b95..d6164e0c74019d7453d066c82716e15a4651b6e8 100644 GIT binary patch delta 10908 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

3!FO{CLJ`d0)sFD39 zbQ_0mAf;!3QYqFk&T&V83XKn!2XkJ%M~VjsEww;-bY`FT1K+f z)s~5g^=GG=EX%pK0FF%_UFE{XY{v~2>~aP?aNE_}m|Sly;O;`zRWfMo)U_68;-oDb zm&MB0TIMIzAbb9POEA#~7;!iAbjbZM35D3CPI*XbPIU3&=*?OHZsU3@BnD1QjDRP` z{TBx6ba|H!02Q9i?){r36Cw(>=|3$a5`KuG_`d(hGR_K~Sov8?>g0slFdUQxqpXWK z$M;`_m>o2mvgQ^Mi^vc+&>#g~iguQ%@gHpMtD}&{VUg8dzXukMT3|neV zS_(Itwba@WUsN}3d)#VcAKzlVGO-?}>|NbvT}@yy-&@%4cjq%pLI8Pwm{UX*oYUbtNJDOpnH|WVZO?jrP6|qu5mG7eK(BHdEE!k*o84g z@?1h9-Y#o6hh-0!FXT9ba9w8HXmt}jz&X<2h z=)hw(?m@a3m_`w^MNM*gh7-JPQ!8|LWsGgho$@Rd40TtS0Yo2Y-BUHBv_B6MVEH16 z5hcVI8jN)vVu*#+8H_;a+|#u+2OsGc9>6Mr8`z#gM#106X1C|r0x~Yq2jq`p9fh_N zsxx}2zrbM6M+>B+E7&zADr0s{iETw+@UA1q4P>(RgLQE;@mkx}gp_#sRGlm~&31X$ zA%YXJg5@;XzQm-&XDkI9)NGrY5CyjS3mZi2eu&uji1e1(pwNE1($=W-kWklJ+jU%a z7u;`K-$m%yX4^>AAQH4OixxFP&`i&Lr)0DL*kPOHa)vzM1@}~)@v~MEiXWo3|F9(v z5kDa-Sn=O%f5#9a^k-$qY*%;nV-Ap~6p{uwL!saP*hSAA7j1h%AwPXYc`R}2KmxLu zo}s*m@q9YvJ0++e-JL-USGeO0A-{Ap zieKi;m6j%|^DK)K)hdLBb4-qonjkWN4bjWo$^iPMTM5weDa1;LW-HU#pdY2XFjM*} z$0TwYHj?YvSMWd{9{%D4E>bjs91-Z~eL!)f z7*dtl9_1=n74s0|P1M^aXVWiQ1-ldev1BAqtUO&|dk20bdd{zu&<>BHIyewAFi89_ zsHo>K-RFa*v0i27%<;b|GXmugokS>z?SGFc#Ik}Z&|`5-fUXHv4JKhR~yX?L@IS1Qax z-W0mBHFVn~V@o?GDXsWNx@a=Is%Xb#r5w*g2q7FP%Y!ropF1Fz?GObW=Q+i0c^ zlDE;8*v6#IOHFK^l`pJqC|?#QeXUxVN&8nTcjXkC8vyHhJG7f3J`7%0V7g<5vXB&C`k91P^|QQ0n6I7-_pt6u5xTBHnU0Us z0rNp7A+K&EbjeKPGK3!9YLnUS`N|mqOn4~RGiO1;gtyTnJJrjmXS#JUh_Rn7FH#}v z6VW13o}Nsy3f%4uZ&eDcB!Fn?ua&;^c#53M)~rzeqVQh*_yt7FOCu|5c47=wkWhVF`|8_*_r{D2pCfoarvLm6^%v8$C zLkeV%KTB8dWlN7JzfNSDp7~e_@g!6Dj8fjk(n$9F{#&J*Kr)ndey7}#tmCuTN{6aJ zlX-}l;8e%Bonem_HU8MtJ*P|7%j@IoRS0QcNOAN^tQd~MnaQ0?=u^wper)?f zwXX_!55K=>KyI-7`%?8LnS>C)c&g4kp}V@^!LnQ@I;@R9ePK#!w%BdHmakNI3GVKIq2}K6f0Z!p87P;(fN)4 yPIWI11qVHw{qpas0(m%(Ne=_aGcMy9A5?~sHt8wY48p3%t;FYLe@(L&sQ(QERGTIM delta 8007 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 Ui)8U>i00j7pTPFsZ2v&{Z%DB(8UO$Q diff --git a/cleanUp.sh b/cleanUp.sh index 8aa43c6..dbe602a 100755 --- a/cleanUp.sh +++ b/cleanUp.sh @@ -4,7 +4,7 @@ protoCodeFile=source/libdnet/protobuf/dnet.d # Fix up -cat $protoCodeFile | sed -e "s/source.libdnet.protobuf./ /" > tmpFile +cat $protoCodeFile | sed -e "s/import source.libdnet.protobuf./public import /" > tmpFile # Fix up module header cat tmpFile | sed -e "s/dnet/libdnet.protobuf.dnet/" > tmpFile2 diff --git a/source/libdnet/api/client.d b/source/libdnet/api/client.d index 6ef6911..6543936 100644 --- a/source/libdnet/api/client.d +++ b/source/libdnet/api/client.d @@ -17,6 +17,21 @@ import libdnet.protobuf.dnet; * is mirrored into the library) */ public final class Client +{ + public Channel createChannel(string name) + { + Channel newChannel; + + /* TODO: Check if the channel exists firstly */ + ChannelMessage d = new ChannelMessage(); + d.name = name; + d.type = ChannelMessage.MessageType.CREATE; + + return newChannel; + } +} + +public final class Channel { } \ No newline at end of file diff --git a/source/libdnet/protobuf/channel.d b/source/libdnet/protobuf/channel.d index 1dd227d..e4fa564 100644 --- a/source/libdnet/protobuf/channel.d +++ b/source/libdnet/protobuf/channel.d @@ -11,7 +11,8 @@ class ChannelMessage { @Proto(1) MessageType type = protoDefaultValue!MessageType; @Proto(2) string name = protoDefaultValue!string; - @Proto(3) bytes additionalData = protoDefaultValue!bytes; + @Proto(3) string statusCode = protoDefaultValue!string; + @Proto(4) bytes additionalData = protoDefaultValue!bytes; enum MessageType { diff --git a/source/libdnet/protobuf/channel.proto b/source/libdnet/protobuf/channel.proto index 5d9d9e5..b0a32e9 100644 --- a/source/libdnet/protobuf/channel.proto +++ b/source/libdnet/protobuf/channel.proto @@ -24,6 +24,9 @@ message ChannelMessage // The channel to which the command applies string name = 2; + // (Only for returns) + string statusCode = 3; + // Additional data (dependent on command) - bytes additionalData = 3; + bytes additionalData = 4; } \ No newline at end of file diff --git a/source/libdnet/protobuf/dnet.d b/source/libdnet/protobuf/dnet.d index 1253aca..b8887d9 100644 --- a/source/libdnet/protobuf/dnet.d +++ b/source/libdnet/protobuf/dnet.d @@ -1,13 +1,13 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: libdnet.protobuf.dnet.proto +// source: source/liblibdnet.protobuf.dnet/protobuf/dnet.proto module libdnet.protobuf.dnet; import google.protobuf; -import account; -import channel; -import server; -import property; +public import account; +public import channel; +public import server; +public import property; enum protocVersion = 3014000;