Commit graph

380 commits

Author SHA1 Message Date
Vaci Koblizek
a2a17ea3cb remove CapabilityServerSetBase, add test case 2020-11-26 16:03:13 +00:00
Vaci Koblizek
772108ff12 add testEmbargoNull test
throw RpcExceptions rather than RuntimeExceptions
2020-11-26 15:06:20 +00:00
Vaci Koblizek
e3d52a0bbd use gather writes for AsynchronousSocketChannels 2020-11-26 14:22:13 +00:00
Vaci Koblizek
de85613570 consistent naming of factories 2020-11-26 13:07:28 +00:00
Vaci Koblizek
07f8f22acd implement call blocking stack 2020-11-25 19:43:18 +00:00
Vaci Koblizek
941a254e41 by default, streaming calls fal back to regular calls 2020-11-25 15:53:25 +00:00
Vaci Koblizek
2d072a6b12 implement streaming requests 2020-11-25 15:47:02 +00:00
Vaci Koblizek
594e5e3a28 reduce visibility of cap contexts 2020-11-24 17:48:08 +00:00
Vaci Koblizek
5a27b4b860 tidy up Builder refs in AnyPointer.Pipeline 2020-11-24 15:38:07 +00:00
Vaci Koblizek
9465ffde5b add default getBrand to RequestHook 2020-11-24 15:37:28 +00:00
Vaci Koblizek
119a682d4d memoise queuespipeline caps. use queues to order queuedclient resolution 2020-11-23 19:56:54 +00:00
Vaci Koblizek
1cadca604e add releaseCall to delay call execution 2020-11-20 17:07:45 +00:00
Vaci Koblizek
e314d26ab3 use sendInternal rather than calling hook directly 2020-11-20 16:35:38 +00:00
Vaci Koblizek
d3e639eaee add capability tail call test 2020-11-20 16:32:42 +00:00
Vaci Koblizek
1366e28fd5 simplify conversion to CompletableFuture<Void> 2020-11-19 17:36:48 +00:00
Vaci Koblizek
68edac583b remove unused getVatIdFactory() 2020-11-19 15:26:21 +00:00
Vaci Koblizek
ad17a4c148 refactor connection and disconnection 2020-11-13 17:57:49 +00:00
Vaci Koblizek
c0a57d304f merge resolveTask into constructor 2020-11-13 08:10:59 +00:00
Vaci Koblizek
69a045deec make requests autoclosable and cleanup disconnection 2020-11-12 22:15:07 +00:00
Vaci Koblizek
4e9e7f4068 cancellation 2020-11-12 21:27:44 +00:00
Vaci Koblizek
f3bb329e96 generalise AnyPointer setAs AnyPointer 2020-11-10 11:42:23 +00:00
Vaci Koblizek
91a93734e1 generalise AnyPointer setAs AnyPointer 2020-11-10 11:34:26 +00:00
Vaci Koblizek
dcd9eb37c7 add override to set clients from completablefutures 2020-11-09 21:43:32 +00:00
Vaci Koblizek
cefd8eaaa2 add AnyStruct 2020-11-09 18:08:56 +00:00
Vaci Koblizek
f2df5c2191 implement rpc tail calls 2020-11-09 18:08:07 +00:00
Vaci Koblizek
cee3aa79ae set AnyPointer from AnyPointer 2020-11-09 18:08:00 +00:00
Vaci Koblizek
f8cdfdea09 set AnyPointer from AnyPointer 2020-11-09 18:02:05 +00:00
Vaci Koblizek
f640a8ffd4 allow copyPointer to copy capabilities 2020-11-09 17:42:05 +00:00
Vaci Koblizek
9e6d495d56 add runtime-rpc module and refactor project 2020-11-08 17:24:42 +00:00
Vaci Koblizek
45d1470907 make anypipeline.noop public 2020-11-07 15:59:25 +00:00
Vaci Koblizek
66fc361386 stub out two-party test suite for now 2020-11-07 15:58:39 +00:00
Vaci Koblizek
0ce52fe135 add resolve test and fix handleResolve bugs 2020-11-06 15:32:20 +00:00
Vaci Koblizek
850a603877 oops, correct assertion of missing question 2020-11-06 13:58:36 +00:00
Vaci Koblizek
e8a118f364 add overload for messageSizeHint 2020-11-06 13:58:36 +00:00
Vaci Koblizek
7d2e541603 fix getNetwork bug, remove unnecessary TwoPartVatNetwork specialisation 2020-11-06 13:58:36 +00:00
Vaci Koblizek
1f004779d4 rpc tests 2020-11-05 21:38:43 +00:00
Vaci Koblizek
054213a0ac add rpc bootstrap factory 2020-11-05 21:38:43 +00:00
Vaci Koblizek
9d023f0449 fix generic pipeline params. add (non-generic, for now) capability list 2020-11-05 21:38:43 +00:00
Vaci Koblizek
518769247b remove generated schema.schema 2020-11-05 17:59:05 +00:00
Vaci Koblizek
02789acf29 add TestInterface.baz. Stub out broken TestGenerics 2020-11-05 17:59:05 +00:00
Vaci Koblizek
630d71d4e5 implement more capability tests 2020-11-05 17:59:05 +00:00
Vaci Koblizek
33d16c4fb6 add READY_NOW 2020-11-05 17:59:05 +00:00
Vaci Koblizek
8565c40c14 capability test suite 2020-11-05 17:59:05 +00:00
Vaci Koblizek
a10e48d140 test schemas 2020-11-05 17:59:05 +00:00
Vaci Koblizek
d515500996 get rid of PipelineBase and PipelineImpl again 2020-11-05 17:59:05 +00:00
Vaci Koblizek
8eacc8cada major refactor of RemotePromise and Pipeline 2020-11-05 17:59:05 +00:00
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
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