1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.mybatis.dynamic.sql.select;
17
18 import java.util.ArrayList;
19 import java.util.Collection;
20 import java.util.List;
21 import java.util.Objects;
22 import java.util.stream.Stream;
23
24 import org.mybatis.dynamic.sql.BasicColumn;
25 import org.mybatis.dynamic.sql.util.Validator;
26
27 public class GroupByModel {
28 private final List<BasicColumn> columns = new ArrayList<>();
29
30 private GroupByModel(Collection<? extends BasicColumn> columns) {
31 Objects.requireNonNull(columns);
32 Validator.assertNotEmpty(columns, "ERROR.11");
33 this.columns.addAll(columns);
34 }
35
36 public Stream<BasicColumn> columns() {
37 return columns.stream();
38 }
39
40 public static GroupByModel of(Collection<? extends BasicColumn> columns) {
41 return new GroupByModel(columns);
42 }
43 }