> We could introduce the streaming call with 'C' x02 x00 instead of 'c'
> x02 x00.
>
> It would probably look like:
>
>    C x02 x02
>    H "header" S ...
>    m "method name"
>    data_1
>    data_2
>    ...
>    data_n
>    z

I've had some further thoughts on usage patterns:

1. Invoking the same method with multiple parameters:

C x02 x02
  H "header" S ...
  m "method name" % From this you know the length of the args array
for this method
  data_1[0] ...... data_1[n]
  data_2[0] ...... data_2[n]
  ...
  data_n[0] ...... data_n[n]
  z

2. Invoking multiple methods with any number of params:

C x02 x02
  H "header" S ...
  m "method name_1" % From this you know the length of the args array
for this method
  data_1[0] ...... data_1[n]
  data_i[0] ...... data_i[n]
  m "method name_2" % From this you know the length of the args array
for this method
  data_j[0] ...... data_j[n]
  ...
  data_n[0] ...... data_n[n]
  z

I think you may have to demarcate the argument arrays between case 1
and the orginal case.

Case 2 may be getting a bit tricky for it's own benefit - maybe only
if there was a 1:1 interweaving of method name and args array. The
advantage of this may be if you do need to invoke different methods
but want to reuse the same transport connection. Having said that, it
kind of diverges from the simplicity of Hessian.


_______________________________________________
hessian-interest mailing list
[email protected]
http://maillist.caucho.com/mailman/listinfo/hessian-interest

Reply via email to