You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@manifoldcf.apache.org by "Karl Wright (JIRA)" <ji...@apache.org> on 2011/09/01 13:54:09 UTC

[jira] [Updated] (CONNECTORS-99) REST API serialization inconsistency

     [ https://issues.apache.org/jira/browse/CONNECTORS-99?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Karl Wright updated CONNECTORS-99:
----------------------------------

    Affects Version/s: ManifoldCF 0.3
                       ManifoldCF 0.1
                       ManifoldCF 0.2
        Fix Version/s: ManifoldCF next

> REST API serialization inconsistency
> ------------------------------------
>
>                 Key: CONNECTORS-99
>                 URL: https://issues.apache.org/jira/browse/CONNECTORS-99
>             Project: ManifoldCF
>          Issue Type: Wish
>          Components: API
>    Affects Versions: ManifoldCF 0.1, ManifoldCF 0.2, ManifoldCF 0.3
>         Environment: ACF trunk.
>            Reporter: Andrzej Bialecki 
>            Priority: Minor
>             Fix For: ManifoldCF next
>
>
> There is some inconsistency in REST APIs that makes the returned values more difficult to process than necessary. It boils down to the fact that lists of values are serialized into JSON arrays only when there is more than 1 element on the list, but they are serialized into plain JSON objects when there is 0 or 1 element on the list. Example:
> * listings of jobs, connectors, connections, repositories etc. all suffer from this symptom:
> {code}
> * 1 element:
>   {"job":{"id":"1283811504796","description":"job 1" ...
> * 2 elements:
>   {"job":[{"id":"1283811504796","description":"job 1" ...
> {code}
> * nested elements, such as e.g. job metadata:
> {code}
> 1 element:
>   "metadata":{"_value_":"","_attribute_name":"jobKey1","_attribute_value":"jobVal1"}
> 2 elements:
>   "metadata":[{"_value_":"","_attribute_name":"jobKey1","_attribute_value":"jobVal1"},{"_value_":"","_attribute_name":"jobKey2","_attribute_value":"jobVal2"}]
> {code}
> In my opinion, in all the above cases the API should always return a JSON array for those elements that can occur with cardinality > 1.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira