I am working on my diploma project, where the part is dedicated to parsing
GWT messages which are sent between webadmin and ovirt engine or ovirt
engine and vdsm.
Thank you for the doc, I already saw it. But there are some questions left
about parsing.
ср, 24 окт. 2018 г. в 3:37, Greg Sheremeta <gshereme(a)redhat.com>:
Hi,
Interesting -- what are you trying to achieve?
This should help:
The GWT-RPC Wire Protocol - Google Docs
https://docs.google.com/document/d/1eG0YocsYYbNAtivkLtcaiEE5IOF5u4LUol8-L...
On Tue, Oct 23, 2018 at 2:47 AM Anastasiya Ruzhanskaya <
anastasiya.ruzhanskaya(a)frtk.ru> wrote:
> Hello everyone!
> I am trying to determine how the person who knows for example all
> necessary function calls and parameters can determine the content of the
> message sent.
> This is an example of the message I am trying to parse
> (I already separated it on some meaningful parts), numbers in braces just
> help to make correspondence between payload and strings:
> 7|
> 0|
> 14|
> (1)https://engine.localdomain/ovirt-engine/webadmin/| //URL
> (2)E8B2AD24442204349EF795039C3B87E5| // policy name
> (3)org.ovirt.engine.ui.frontend.gwtservices.GenericApiGWTService| service
> interface
> (4)runMultipleActions| name of the method
> (5)org.ovirt.engine.core.common.action.ActionType/12242454|,
> (6)java.util.ArrayList/4159755760|,
> (7)Z| ( two times)) // bool type
> (8)org.ovirt.engine.core.common.action.ShutdownVmParameters/1694554255|
> (9)org.ovirt.engine.core.compat.Guid/1992968158|
> (10)java.util.UUID/2940008275|
>
>
(11)org.ovirt.engine.core.common.action.ActionParametersBase$EndProcedure/1568822488|
> (12)java.util.Collections$EmptyMap/4174664486|
> (13)org.ovirt.engine.core.common.businessentities.VDSStatus/1938301532|
> (14)org.ovirt.engine.core.compat.TransactionScopeOption/1475850853|
> (the following is the payload separated and commented in places where I
> can understand it)
> 1|
> 2|
> 3|
> 4|
> 4|- 4 method parameters
> 5|- first type = ActionType
> 6|- second type = arraylist
> 7|- third type = boolean
> 7|- fourth type = boolean
> 5(actionType)|9 (shutdown)|
> 6(arrayList)|1(??)|
> 8 (shutdown vm parameters, list object)|1|0|0|0|(??)
> 9 (guid, ?)|10(UUID)|J$m4mk9wVi3|MjeP460Xkpb (vm
> uuid)|0|5|0|0|0|11|1|0|6|0|0|0|0|0|0|12|0|-6|13|0|1|0|1|14|2|0|0|0|0|0|
>
>
> Until vm uuid parameter it is kind of clear what is happening, but I
> still wonder what do the parameters 1 and 0 mean in places marked as (??).
> I understand, that there is a method called runMultipleActions and it has
> four parameters. I found in source examples of calling this method
>
(ovirt-engine/frontend/webadmin/modules/./frontend/src/test/java/org/ovirt/engine/ui/frontend/FrontendActionTest.java).Then
> I determine types of these parameters. Then the type of action performed (
> I shut down the machine). Then there should be an ArrayList, which
> contains several objects. I assume that 8(shutdown vm parameters) should
> follow right after 6 (arraylist), but there a "1" which I can't
explain.
> Also for shutdown parameters: I see in examples that there are not so many
> boolean parameters in constructor there. Here are four! (1|0|0|0) What do
> they mean? And how can I cope with the left payload?
>
> Thank you in advance for any help!
>
> P.S. Also vm ids have another format when for example I do the same
> actions from web - ui: c8de3f8e-b45e-4a5b-9fa6-e2693dc158b7. Why this is so?
>
without looking at it, I assume that in gwt-rpc here there is
serialization / encoding the value (which is later decompressed by the
client), whereas the rest api sends the normal human-readable string.
(Someone else might know better.)
> _______________________________________________
> Devel mailing list -- devel(a)ovirt.org
> To unsubscribe send an email to devel-leave(a)ovirt.org
> Privacy Statement:
https://www.ovirt.org/site/privacy-policy/
> oVirt Code of Conduct:
>
https://www.ovirt.org/community/about/community-guidelines/
> List Archives:
>
https://lists.ovirt.org/archives/list/devel@ovirt.org/message/HBPXJ2ALRWC...
>
--
GREG SHEREMETA
SENIOR SOFTWARE ENGINEER - TEAM LEAD - RHV UX
Red Hat NA
<
https://www.redhat.com/>
gshereme(a)redhat.com IRC: gshereme
<
https://red.ht/sig>