-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Client server article #17
base: main
Are you sure you want to change the base?
Changes from all commits
6a6f054
04b683c
4e9aa4c
4d9f548
3ba8a5c
9b742e0
d4882fd
be73aee
e3afe60
e911ea3
6f6e07b
b95a8d9
b9e7e77
fe65c46
fd6fd9d
48fcd3b
0c7c820
097ce49
07f2ad2
75f5a15
485e8c7
ebc2528
00cf0ff
0af7e4a
4ecd0f2
1070ee0
f957e36
f93dc41
fa0a8ff
3576b55
6e59042
8cb89d0
ecb08e8
e8895e7
d0f8e95
463c767
c326648
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
*.exe | ||
*.exe.settings | ||
Packages/ |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,7 +4,7 @@ | |
"src": [ | ||
{ | ||
"files": [ | ||
"Bonsai.ZeroMQ/*.csproj" | ||
"Bonsai.ZeroMQ/Bonsai.ZeroMQ.csproj" | ||
], | ||
"src": "../src" | ||
} | ||
|
@@ -31,6 +31,12 @@ | |
"*.md" | ||
] | ||
}, | ||
{ | ||
"files": [ | ||
"tutorials/**.md", | ||
"tutorials/toc.yml" | ||
] | ||
}, | ||
{ | ||
"exclude": [ | ||
"_site/**", | ||
|
@@ -64,7 +70,6 @@ | |
"_enableNewTab": true, | ||
"_enableSearch": true, | ||
"_gitContribute": { | ||
"repo": "https://github.com/bonsai-rx/zeromq", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is there a reason to remove the explicit repo URL? Reading the docfx docs it seems like docfx does use automatically the current repo if it is not specified, so maybe there isn't a need to have it, but just confirming. If we do go for this, it might be better to make this change in a separate PR, just to avoid mixing unrelated configuration changes from the article development. |
||
"branch": "main", | ||
"apiSpecFolder": "docs/apidoc" | ||
} | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,3 +2,5 @@ | |
href: articles/ | ||
- name: Reference | ||
href: api/ | ||
- name: Tutorials | ||
href: tutorials/ |
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
- name: Tutorials | ||
- href: client-server.md |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,100 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<WorkflowBuilder Version="2.7.1" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xmlns:zmq="clr-namespace:Bonsai.ZeroMQ;assembly=Bonsai.ZeroMQ" | ||
xmlns:wie="clr-namespace:Bonsai.Windows.Input;assembly=Bonsai.Windows.Input" | ||
xmlns:rx="clr-namespace:Bonsai.Reactive;assembly=Bonsai.Core" | ||
xmlns="https://bonsai-rx.org/2018/workflow"> | ||
<Workflow> | ||
<Nodes> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Router"> | ||
<zmq:ConnectionString>@tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="MemberSelector"> | ||
<Selector>Request.First</Selector> | ||
</Expression> | ||
<Expression xsi:type="MemberSelector"> | ||
<Selector>Buffer</Selector> | ||
</Expression> | ||
<Expression xsi:type="Index"> | ||
<Operand xsi:type="IntProperty"> | ||
<Value>1</Value> | ||
</Operand> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="rx:Zip" /> | ||
</Expression> | ||
<Expression xsi:type="MemberSelector"> | ||
<Selector>Request.Last</Selector> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:ConvertToString" /> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="wie:KeyDown"> | ||
<wie:Filter>D1</wie:Filter> | ||
<wie:SuppressRepetitions>false</wie:SuppressRepetitions> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="StringProperty"> | ||
<Value>Client1</Value> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Dealer"> | ||
<zmq:ConnectionString>tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="wie:KeyDown"> | ||
<wie:Filter>D2</wie:Filter> | ||
<wie:SuppressRepetitions>false</wie:SuppressRepetitions> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="StringProperty"> | ||
<Value>Client2</Value> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Dealer"> | ||
<zmq:ConnectionString>tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="wie:KeyDown"> | ||
<wie:Filter>D3</wie:Filter> | ||
<wie:SuppressRepetitions>false</wie:SuppressRepetitions> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="StringProperty"> | ||
<Value>Client3</Value> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Dealer"> | ||
<zmq:ConnectionString>tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
</Nodes> | ||
<Edges> | ||
<Edge From="0" To="1" Label="Source1" /> | ||
<Edge From="0" To="5" Label="Source1" /> | ||
<Edge From="1" To="2" Label="Source1" /> | ||
<Edge From="2" To="3" Label="Source1" /> | ||
<Edge From="2" To="4" Label="Source2" /> | ||
<Edge From="3" To="4" Label="Source1" /> | ||
<Edge From="5" To="6" Label="Source1" /> | ||
<Edge From="7" To="8" Label="Source1" /> | ||
<Edge From="8" To="9" Label="Source1" /> | ||
<Edge From="10" To="11" Label="Source1" /> | ||
<Edge From="11" To="12" Label="Source1" /> | ||
<Edge From="13" To="14" Label="Source1" /> | ||
<Edge From="14" To="15" Label="Source1" /> | ||
</Edges> | ||
</Workflow> | ||
</WorkflowBuilder> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<WorkflowBuilder Version="2.7.1" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xmlns:zmq="clr-namespace:Bonsai.ZeroMQ;assembly=Bonsai.ZeroMQ" | ||
xmlns:rx="clr-namespace:Bonsai.Reactive;assembly=Bonsai.Core" | ||
xmlns:wie="clr-namespace:Bonsai.Windows.Input;assembly=Bonsai.Windows.Input" | ||
xmlns="https://bonsai-rx.org/2018/workflow"> | ||
<Workflow> | ||
<Nodes> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Router"> | ||
<zmq:ConnectionString>@tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="MemberSelector"> | ||
<Selector>Request.First</Selector> | ||
</Expression> | ||
<Expression xsi:type="MemberSelector"> | ||
<Selector>Buffer</Selector> | ||
</Expression> | ||
<Expression xsi:type="Index"> | ||
<Operand xsi:type="IntProperty"> | ||
<Value>1</Value> | ||
</Operand> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="rx:Zip" /> | ||
</Expression> | ||
<Expression xsi:type="rx:DistinctBy"> | ||
<rx:KeySelector>Item1</rx:KeySelector> | ||
</Expression> | ||
<Expression xsi:type="rx:ReplaySubject"> | ||
<Name>ClientAddresses</Name> | ||
<rx:BufferSize xsi:nil="true" /> | ||
</Expression> | ||
<Expression xsi:type="MemberSelector"> | ||
<Selector>Request.Last</Selector> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:ConvertToString" /> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="wie:KeyDown"> | ||
<wie:Filter>D1</wie:Filter> | ||
<wie:SuppressRepetitions>false</wie:SuppressRepetitions> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="StringProperty"> | ||
<Value>Client1</Value> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Dealer"> | ||
<zmq:ConnectionString>tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="wie:KeyDown"> | ||
<wie:Filter>D2</wie:Filter> | ||
<wie:SuppressRepetitions>false</wie:SuppressRepetitions> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="StringProperty"> | ||
<Value>Client2</Value> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Dealer"> | ||
<zmq:ConnectionString>tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="wie:KeyDown"> | ||
<wie:Filter>D3</wie:Filter> | ||
<wie:SuppressRepetitions>false</wie:SuppressRepetitions> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="StringProperty"> | ||
<Value>Client3</Value> | ||
</Combinator> | ||
</Expression> | ||
<Expression xsi:type="Combinator"> | ||
<Combinator xsi:type="zmq:Dealer"> | ||
<zmq:ConnectionString>tcp://localhost:5557</zmq:ConnectionString> | ||
</Combinator> | ||
</Expression> | ||
</Nodes> | ||
<Edges> | ||
<Edge From="0" To="1" Label="Source1" /> | ||
<Edge From="0" To="7" Label="Source1" /> | ||
<Edge From="1" To="2" Label="Source1" /> | ||
<Edge From="2" To="3" Label="Source1" /> | ||
<Edge From="2" To="4" Label="Source2" /> | ||
<Edge From="3" To="4" Label="Source1" /> | ||
<Edge From="4" To="5" Label="Source1" /> | ||
<Edge From="5" To="6" Label="Source1" /> | ||
<Edge From="7" To="8" Label="Source1" /> | ||
<Edge From="9" To="10" Label="Source1" /> | ||
<Edge From="10" To="11" Label="Source1" /> | ||
<Edge From="12" To="13" Label="Source1" /> | ||
<Edge From="13" To="14" Label="Source1" /> | ||
<Edge From="15" To="16" Label="Source1" /> | ||
<Edge From="16" To="17" Label="Source1" /> | ||
</Edges> | ||
</Workflow> | ||
</WorkflowBuilder> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a reason to specify the
.csproj
file name directly? There shouldn't be more than one file at this location, or could it be perhaps a backup? I usually have this convention to avoid having to type the name of the project twice, but maybe there is a good reason to be more explicit.