[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Enhancing back-sock to use JSON



Hi Howard,

> Am 19.02.2015 um 18:05 schrieb Howard Chu <hyc@symas.com>:
>> Dagobert Michelsen wrote:
>> 
>> I have made some enhancements to back-sock to use JSON for the passed data and JSON-RPC
>> to map LDAP calls to method invocations. The function signatures of the JSON-RPC calls
>> are modeled to be similar to the ones used in json2ldap (which does just the opposite
>> direction to talk LDAP via JSON-RPC) [1]. The previous hand-crafted format passed on the
>> socket was harder to parse and needed a manually built parser whereas now a standard
>> library can be used. However, handling the JSON data structures now imposes an additional
>> dependency to Jansson (a JSON access library in C) [2]. Jansson itself is leightweight and
>> has no dependencies itself. Due to the limited use of back-sock and the enhanced ease of
>> use I think it would be acceptable to add this dependency.
> 
> my initial reaction: the current format is just a tweaked LDIF. LDIF itself is still a more
> compact format than JSON. I personally am opposed to adding any JSON dependencies to our
> code base. Anyone else have an opinion?

Well, of course you are right that the LDAP presentation is more efficient.
However I think from a client perspective it would be easier not to deal
with LDIF, especially as you can choose a JSON-RPC server suitable for your
needs and have the data already available for the function and concentrate
on implementing the functionality:
  https://en.wikipedia.org/wiki/JSON-RPC#Implementations

I see back-sock not as a solution for super high performance, but as a
tool to build somewhat exotic adapters and proof of concepts. Allowing
a quick implementation is at least for me the primary goal here.


Best regards

  — Dago


-- 
"You don't become great by trying to be great, you become great by wanting to do something,
and then doing it so hard that you become great in the process." - xkcd #896

Attachment: smime.p7s
Description: S/MIME cryptographic signature