REST API serialization inconsistency
------------------------------------

                 Key: CONNECTORS-99
                 URL: https://issues.apache.org/jira/browse/CONNECTORS-99
             Project: Apache Connectors Framework
          Issue Type: Bug
          Components: API
         Environment: ACF trunk.
            Reporter: Andrzej Bialecki 


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.
-
You can reply to this email to add a comment to the issue online.

Reply via email to