Commit graph

340 commits

Author SHA1 Message Date
Vaci Koblizek
2d8fe31a59 generic interface generation (WIP 2020-11-05 17:59:05 +00:00
Vaci Koblizek
86ccdd5a55 move cleanup to end of message loop 2020-11-05 17:59:05 +00:00
Vaci Koblizek
94ca2a04e6 remove sync modifier from getConnectionState and tidy 2020-11-05 17:59:05 +00:00
Vaci Koblizek
f2b2fc769f go back to using CompletableFuture (sigh) 2020-11-05 17:59:05 +00:00
Vaci Koblizek
c903cbf193 return this network via asConnection() 2020-11-05 17:59:05 +00:00
Vaci Koblizek
4f8c5faef4 tidy up access to hooks 2020-11-05 17:59:05 +00:00
Vaci Koblizek
dc4f8d07b4 dump more message types 2020-11-05 17:59:05 +00:00
Vaci Koblizek
1bf4bfc8a6 add ServerSets 2020-11-05 17:59:05 +00:00
Vaci Koblizek
4bb8f6a51f remove synchronised modifier from handleMessage 2020-11-05 17:59:05 +00:00
Vaci Koblizek
d6a163990e fix RpcState tests 2020-11-05 17:59:05 +00:00
Vaci Koblizek
88a8140d70 use Java 14 to compile all modules 2020-11-05 17:59:05 +00:00
Vaci Koblizek
13156f9255 remove extraneous writeTarget method 2020-11-05 17:59:05 +00:00
Vaci Koblizek
cd1fc4c460 make embargo.diembargo final 2020-11-05 17:59:05 +00:00
Vaci Koblizek
e19faf0b81 tidy up cap table in BuilderArena 2020-10-22 15:55:11 +01:00
Vaci Koblizek
caa4441a65 fix local resolver, null caps, and add some doc comments 2020-10-22 15:55:11 +01:00
Vaci Koblizek
8ccfdc1bf6 remove redundent final modifier 2020-10-22 15:55:11 +01:00
Vaci Koblizek
9315c8aaba null cap test 2020-10-22 15:55:11 +01:00
Vaci Koblizek
011137b23f remove unused TwoPartyClient.runOnce 2020-10-22 15:55:11 +01:00
Vaci Koblizek
3161e246ae tidy up TwoPartyVatNetwork 2020-10-22 15:55:11 +01:00
Vaci Koblizek
e21ba577b5 accept default outgoing message size 2020-10-22 15:55:11 +01:00
Vaci Koblizek
633d3ff8cc remove redundent AnyPointer.getAsCap 2020-10-22 15:55:11 +01:00
Vaci Koblizek
f28b7de494 more message building size hints 2020-10-22 15:55:11 +01:00
Vaci Koblizek
83a4d4dc9e only tap incoming 2020-10-22 15:55:11 +01:00
Vaci Koblizek
05dc84b675 move more CompFutures to void 2020-10-22 15:55:11 +01:00
Vaci Koblizek
6d082a71b5 use getHook() accessor 2020-10-22 15:55:11 +01:00
Vaci Koblizek
c01228c31c add tap for dumping rpc messages 2020-10-22 15:55:11 +01:00
Vaci Koblizek
7b939d7c0b add moar size hints 2020-10-22 15:55:11 +01:00
Vaci Koblizek
215f485883 add network accessor 2020-10-22 15:55:11 +01:00
Vaci Koblizek
85a3565dc3 add fds accessor 2020-10-22 15:55:11 +01:00
Vaci Koblizek
730ca1abf5 question cleanup 2020-10-22 15:55:11 +01:00
Vaci Koblizek
7134461e7d use weak refs to cleanup import table 2020-10-22 15:55:11 +01:00
Vaci Koblizek
caec63d68c fix rpcsystem generic params, and hide various fields 2020-10-22 15:55:11 +01:00
Vaci Koblizek
c49221c2e9 add cleanup to questions and imports 2020-10-22 15:55:11 +01:00
Vaci Koblizek
89451874c3 simplify server runOnce 2020-10-22 15:55:11 +01:00
Vaci Koblizek
61c98ac266 avoid duplicating conditions in asserts 2020-10-22 15:55:11 +01:00
Vaci Koblizek
dea4d2d3c0 implement bulk of pipelining logic 2020-10-22 15:55:11 +01:00
Vaci Koblizek
c2f64ba317 Add local cap table to message builder. 2020-10-22 15:55:11 +01:00
Vaci Koblizek
606dd26d48 generate pipelines, add AnyPointer.Pipeline 2020-10-22 15:55:11 +01:00
Vaci Koblizek
1abc975b8b defer disembargo 2020-10-22 15:55:11 +01:00
Vaci Koblizek
2ffdecbe41 Make Response typed 2020-10-22 15:55:11 +01:00
Vaci Koblizek
59977b53fe generate client methods and add streaming 2020-10-22 15:55:11 +01:00
Vaci Koblizek
218529deae add client factory for AnyPointer accessor 2020-10-22 15:55:11 +01:00
Vaci Koblizek
b94f2d6c8c prep for generated code 2020-10-22 15:55:11 +01:00
Vaci Koblizek
be64ced181 demo schema with interfaces 2020-10-22 15:55:11 +01:00
Vaci Koblizek
81b151deb5 oops, correct FromPointerBuilder default call 2020-10-22 15:55:11 +01:00
Vaci Koblizek
07dbf228f0 avoid repetition of getResultsBuilder call 2020-10-22 15:55:11 +01:00
Vaci Koblizek
734af71659 handleFinish 2020-10-22 15:55:11 +01:00
Vaci Koblizek
6bd1411c26 handleDisembargo. NB future evaluation order needs work 2020-10-22 15:55:11 +01:00
Vaci Koblizek
c938938808 CapTables everywhere!
Imbue readers and writers with capTables.
Ensure caps are removed when pointers are zeroed out.
2020-10-22 15:55:11 +01:00
Vaci Koblizek
1913b6d5ea minor scope changes to cap client and server 2020-10-22 15:55:11 +01:00
Vaci Koblizek
7ae49a8f6a RpcState bug fixes
correctly brand RpcClient
don't run message loop inside promise
imbue payload
2020-10-22 15:55:11 +01:00
Vaci Koblizek
194c0ada2a correct setter of capability pointer 2020-10-22 15:55:11 +01:00
Vaci Koblizek
7d3e79091b add runOnce to Client 2020-10-22 15:55:11 +01:00
Vaci Koblizek
9c5e080f90 regenerated rpc schemas 2020-10-22 15:55:11 +01:00
Vaci Koblizek
4dada05373 make CallContext constructor public 2020-10-22 15:55:11 +01:00
Vaci Koblizek
a505c03574 extend fromPointerReader to accept capTable 2020-10-22 15:55:11 +01:00
Vaci Koblizek
3959732765 handle resolve 2020-10-22 15:55:11 +01:00
Vaci Koblizek
4a77f67819 twoparty rpc 2020-10-22 15:55:10 +01:00
Vaci Koblizek
f5e4630aef implement capability client and server 2020-10-22 15:55:10 +01:00
Vaci Koblizek
37c93cc5d2 implement request send 2020-10-22 15:55:10 +01:00
Vaci Koblizek
15b83a9c05 implement local, queued and promised hooks 2020-10-22 15:55:10 +01:00
Vaci Koblizek
37fe39bcde implement unimplemented 2020-10-22 15:55:10 +01:00
Vaci Koblizek
b3c5b030c5 handle bootstrapping request 2020-10-22 15:55:10 +01:00
Vaci Koblizek
66ae27e805 mock rpc connection 2020-10-22 15:55:10 +01:00
Vaci Koblizek
7ee0a60b5e stub handlers and test cases for incoming rpc messages 2020-10-22 15:55:10 +01:00
Vaci Koblizek
10f8f5e7d5 implement import and export tables 2020-10-22 15:55:10 +01:00
Vaci Koblizek
76c81a76a2 start to flesh out RPC connection state 2020-10-22 15:55:10 +01:00
Vaci Koblizek
e1548e88e8 RPC exception serialization 2020-10-22 15:55:10 +01:00
Vaci Koblizek
385746dc4f add two-party RPC protocol 2020-10-22 15:55:10 +01:00
Vaci Koblizek
7713316683 incoming and outgoing rpc messages 2020-10-22 15:55:10 +01:00
Vaci Koblizek
59c2859881 implement cap table builder and reader 2020-10-22 15:55:10 +01:00
Vaci Koblizek
0d03705cfc conversions between PipelineOps and RPC schema 2020-10-22 15:55:10 +01:00
Vaci Koblizek
f999265165 Generate Capnproto RPC protocol from schema 2020-10-22 15:55:10 +01:00
Vaci Koblizek
cf5c4f1119 hook interfaces and broken implementations 2020-10-22 15:55:10 +01:00
Vaci Koblizek
57bacc9dd8 extract capabilities from wire pointers 2020-10-22 15:55:10 +01:00
Vaci Koblizek
6c35c0f1d5 Allow builders and readers to be imbued with a capability table 2020-10-22 15:55:10 +01:00
Vaci Koblizek
86dfbd123d Serialization to and from AsynchronousByteChannel 2020-10-22 15:55:10 +01:00
Vaci Koblizek
73bc7a6569 use Java version 10 2020-10-22 15:55:10 +01:00
dependabot[bot]
9d06495851 Bump junit from 4.12 to 4.13.1 in /runtime
Bumps [junit](https://github.com/junit-team/junit4) from 4.12 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.12.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.12...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-13 18:20:37 -04:00
David Renshaw
880adcfe5e set sourceEncoding to UTF-8 2020-05-13 17:56:01 -04:00
David Renshaw
4cc34896b4 add StructList.newFactory method, allowing type parameters to be inferred 2020-05-12 23:29:16 -04:00
David Renshaw
f98f187538 bump version numbers 2020-05-12 23:03:41 -04:00
David Renshaw
74b645217f configure publishing to the Central Repository, and publish version 0.1.5 2020-05-12 22:41:15 -04:00
David Renshaw
94d15d7720 fix problems found by -Xlink:unchecked 2020-05-12 20:41:36 -04:00
David Renshaw
79ffb37b4c sbt -> maven, scalatest -> junit 2020-05-12 20:17:47 -04:00
David Renshaw
0e99996372 Throw exception on 0-byte read. 2020-05-08 09:09:18 -04:00
Yann Massard
a16a8b517c #78 improve exception handling 2020-04-29 07:42:51 -04:00
David Renshaw
09eec64941 make Allocator public 2019-05-20 18:12:19 -04:00
David Renshaw
1d51317074 update benchmark to use scratch space if requested 2019-05-04 11:09:07 -04:00
David Renshaw
f00f02de77 make DefaultAllocator public and add a default constructor 2019-05-04 10:43:51 -04:00
David Renshaw
755114c1a3 implement scratch space reuse 2019-05-04 10:33:55 -04:00
David Renshaw
3c60400dae make SUGGESTED_FIRST_SEGMENT_WORDS the default 2019-05-04 09:33:09 -04:00
David Renshaw
0ff0cfa338 support custom allocators for builder segments 2019-05-04 09:33:09 -04:00
David Renshaw
c6762ff0f7 implement StructList.Builder.setWithCaveats() 2019-03-23 10:32:01 -04:00
David Renshaw
45fd638c7c add some @Override annotations 2019-03-16 08:49:10 -04:00
David Renshaw
6dcfa30e10 ArrayInputStream: return -1 on end-of-stream 2018-06-10 13:25:40 -04:00
David Renshaw
edcbf1f61c fix bug in ArrayInputStream.read() 2018-06-10 09:32:38 -04:00
David Renshaw
f4411ba2c7 implement asReader() for list types 2018-02-03 14:17:42 -05:00
Amer Banet
906bab78f9 Added pointer index check to StructReader._pointerFieldIsNull and StructBuilder._pointerFieldIsNull
This fixes an IndexOutOfBoundsException when checking for existence of later added fields which are only known on the receiver side (working with different schema versions)
2017-12-13 21:43:46 +01:00
David Renshaw
349d2bfde7 update method name is error string 2017-04-24 19:35:12 -04:00