2 * Copyright (C) The Arvados Authors. All rights reserved.
4 * SPDX-License-Identifier: AGPL-3.0 OR Apache-2.0
8 package org.arvados.client.api.model.argument;
10 import com.fasterxml.jackson.annotation.JsonInclude;
11 import com.fasterxml.jackson.annotation.JsonProperty;
12 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
14 import java.util.List;
16 @JsonInclude(JsonInclude.Include.NON_NULL)
17 @JsonPropertyOrder({ "limit", "offset", "filters", "order", "select", "distinct", "count" })
18 public class ListArgument extends Argument {
20 @JsonProperty("limit")
21 private Integer limit;
23 @JsonProperty("offset")
24 private Integer offset;
26 @JsonProperty("filters")
27 private List<Filter> filters;
29 @JsonProperty("order")
30 private List<String> order;
32 @JsonProperty("select")
33 private List<String> select;
35 @JsonProperty("distinct")
36 private Boolean distinct;
38 @JsonProperty("count")
42 ListArgument(Integer limit, Integer offset, List<Filter> filters, List<String> order, List<String> select, Boolean distinct, Count count) {
45 this.filters = filters;
48 this.distinct = distinct;
52 public static ListArgumentBuilder builder() {
53 return new ListArgumentBuilder();
58 @JsonProperty("exact")
65 public static class ListArgumentBuilder {
66 private Integer limit;
67 private Integer offset;
68 private List<Filter> filters;
69 private List<String> order;
70 private List<String> select;
71 private Boolean distinct;
74 ListArgumentBuilder() {
77 public ListArgumentBuilder limit(Integer limit) {
82 public ListArgumentBuilder offset(Integer offset) {
87 public ListArgumentBuilder filters(List<Filter> filters) {
88 this.filters = filters;
92 public ListArgumentBuilder order(List<String> order) {
97 public ListArgumentBuilder select(List<String> select) {
102 public ListArgumentBuilder distinct(Boolean distinct) {
103 this.distinct = distinct;
107 public ListArgumentBuilder count(Count count) {
112 public ListArgument build() {
113 return new ListArgument(limit, offset, filters, order, select, distinct, count);
116 public String toString() {
117 return "ListArgument.ListArgumentBuilder(limit=" + this.limit +
118 ", offset=" + this.offset + ", filters=" + this.filters +
119 ", order=" + this.order + ", select=" + this.select +
120 ", distinct=" + this.distinct + ", count=" + this.count + ")";