ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pavel Tupitsyn <ptupit...@apache.org>
Subject Re: Documentation for Binary Client Protocol
Date Fri, 19 Jan 2018 07:37:21 GMT
Hi everyone,

Just a reminder that initial spec is on wiki:
https://cwiki.apache.org/confluence/display/IGNITE/IEP-9+Thin+Client+Protocol

It is quite terse and may be harder to understand.
Prachi tried to document all of this in a more user-friendly manner with
examples and so on.

On Fri, Jan 19, 2018 at 6:30 AM, Denis Magda <dmagda@apache.org> wrote:

> Lucas, thanks for chiming in,
>
> The protocol itself consists of all these magic constants (type and
> operations codes). See type codes table from this section:
> https://apacheignite.readme.io/docs/binary-client-
> protocol#section-data-objects <https://apacheignite.readme.
> io/docs/binary-client-protocol>
>
> Hope that my explanation given to Alexey makes sense to both of you.
>
> Initially, we didn’t plan to have the code snippets at all and wanted to
> document the protocol in a way similar to Mongo’s protocol:
> https://docs.mongodb.com/manual/reference/mongodb-wire-protocol/ <
> https://docs.mongodb.com/manual/reference/mongodb-wire-protocol/>
>
> But after several iterations we agreed to simplify a life of those who
> will be developing thin clients on top of the protocol and filled out the
> doc with as many code snippets as possible. Again, the snippets are not a
> complete application and this is why we ignored some of the best practices
> used by Java developers.
>
> —
> Denis
>
> > On Jan 18, 2018, at 7:11 PM, Lucas Beeler <lucas.beeler@gridgain.com>
> wrote:
> >
> > Hi Igniters,
> >
> > I’m with Alexey here: hard-coded “magic” literals make code hard to read
> and neither communicate coding professionalism nor comport with published
> Sun/Oracle style guides. So I suggest that:
> > For already defined symbolic constants, let’s use them instead of
> literal values
> > If there are literal values for which symbolic constants haven’t yet
> been defined, let’s define symbolic constants for them, commit this change
> to master, and start using the newly defined symbolic constants
> > Anyhoo, that’s just my two cents.
> >
> > As always, it’s a pleasure to be a part of Ignite development...
> >
> > Cheers guys & gals,
> > Lucas
> >
> > --
> > Lucas BEELER
> > Technical Consultant, Professional Services
> > GridGain Systems
> > www.gridgain.com <http://www.gridgain.com/>
> >
> >> On Jan 18, 2018, at 6:47 PM, Alexey Kuznetsov <akuznetsov@apache.org
> <mailto:akuznetsov@apache.org>> wrote:
> >>
> >> Prachi, Denis,
> >>
> >>
> >> It is OK that we are using numbers in code samples instead of named
> >> constants?
> >>
> >> For example:
> >>   writeByteLittleEndian(3, out);  // Integer type code
> >>
> >> It could be smth. like this:
> >>   writeByteLittleEndian(TYPE_INT, out);  // Integer type code
> >>
> >> Where TYPE_INT is declared at some place:
> >> ....
> >> public static final int TYPE_INT = 3;
> >> ....
> >>
> >> Make sense?
> >>
> >>
> >> On Fri, Jan 19, 2018 at 4:47 AM, Prachi Garg <pgarg@gridgain.com
> <mailto:pgarg@gridgain.com>> wrote:
> >>
> >>> Igniters,
> >>>
> >>> The document for Binary Client Protocol (awaiting 2.4 release) is
> ready on
> >>> Apache Ignite readme.io <http://readme.io/>. This document explains:
> >>>
> >>>   - How to connect to Ignite cluster
> >>>   - Common message format (Request/Response header)
> >>>   - Supported Data types and their format
> >>>   - Request/Response format for each message type
> >>>
> >>> Here are the links -
> >>>
> >>> https://apacheignite.readme.io/docs/binary-client-protocol <
> https://apacheignite.readme.io/docs/binary-client-protocol>
> >>>
> >>> https://apacheignite.readme.io/docs/binary-client-protocol-
> >>> key-value-operations
> >>>
> >>> https://apacheignite.readme.io/docs/binary-client-
> protocol-sql-operations
> >>>
> >>> https://apacheignite.readme.io/docs/binary-client-protocol-
> >>> binary-type-operations
> >>>
> >>> https://apacheignite.readme.io/docs/binary-client-protocol-
> >>> cache-configuration-operations
> >>>
> >>>
> >>> Currently these pages are hidden and are accessible only with the link.
> >>> They will be active after the release.
> >>>
> >>> -Prachi
> >>>
> >>
> >>
> >>
> >> --
> >> Alexey Kuznetsov
> >
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message