2016-09-27 6 views
0

У меня есть API, который возвращает следующий ответ. Как я могу использовать swagger для документации? Я знаю, что swagger responseContainer поддерживает Map, но тип значения карты, похоже, должен быть того же типа. Но в моем случае значения имеют разные типы: foos - это тип List, а второй ключ «count» соответствует целому.Как работает swagger с ответом immutableMap (с разными типами значений)?

Response.ok(ImmutableMap.of("result", foos, "count", foos.size())).build(); 

Отклик API-то вроде этого:

{ 
    "result": [ 
    { 
     "f1": "v1", 
     "f2": "v2" 
    }, 
    { 
     "f1": "v3", 
     "f2": "v4" 
    } 
    ], 
    "count": 2 
} 

ответ

0

Ваш ответ может быть описана следующим образом:

definitions: 
    MyResponse: 
    type: object 
    required: 
     - result 
     - count 
    properties: 
     result: 
     type: array 
     items: 
      $ref: '#/definitions/Foo' 
     count: 
     type: integer 

    Foo: 
    type: object 
    additionalProperties: 
     type: string