У нас есть REST-API Джерси с аннотациями Swagger.
Пользовательский интерфейс Swagger работает, за исключением одного класса. Этот класс расширяет ArrayList<T>
. И я ожидаю, что этот класс обрабатывается swagger как массив. Но это не так. Он обрабатывается как любой другой сложный объект, а его общедоступные члены отображаются в swagger-ui.
Вот сводка кода моего класса:
@JsonAutoDetect(getterVisibility = Visibility.NONE, fieldVisibility = Visibility.NONE, isGetterVisibility = Visibility.NONE, setterVisibility = Visibility.NONE)
public class ArraySubClass extends ArrayList<ElementClass> implements IAnInterface {
// constructors...
public A getA() {
// ...
}
}
Swagger показывает этот класс как объект модели:
"ArraySubClass": {
"id": "ArraySubClass",
"description": "",
"properties": {
"a": {
"$ref": "A"
},
"empty": {
"type": "boolean"
},
"size": {
"type": "integer",
"format": "int32"
}
}
}
Что я могу сделать, чтобы swagger обрабатывал класс (расширяющийся от ArrayList<T>
) как массив и чтобы swagger просто отображал его элементы, а не другие свойства?