2 * ============LICENSE_START=======================================================
3 * ONAP : ccsdk features
4 * ================================================================================
5 * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 package org.onap.ccsdk.features.sdnr.wt.dataprovider.database.elasticsearch.data.rpctypehelper;
24 import java.math.BigInteger;
25 import org.onap.ccsdk.features.sdnr.wt.common.database.SearchResult;
26 import org.onap.ccsdk.features.sdnr.wt.dataprovider.model.types.YangHelper2;
27 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.PaginationOutputG;
28 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.read.connectionlog.list.output.PaginationBuilder;
31 public class QueryResult<T> {
33 private SearchResult<T> result;
34 private PaginationOutputG pagination;
36 public QueryResult(long page, long pageSize, SearchResult<T> result) {
39 PaginationBuilder x = new PaginationBuilder();
40 x.setPage(YangHelper2.getBigIntegerOrUint64(BigInteger.valueOf(page)));
41 x.setSize(YangHelper2.getLongOrUint32(pageSize));
42 x.setTotal(YangHelper2.getBigIntegerOrUint64(BigInteger.valueOf(result.getTotal())));
43 pagination = x.build();
46 public QueryResult(QueryByFilter queryByFilter, SearchResult<T> result) {
49 PaginationBuilder x = new PaginationBuilder();
50 x.setPage(YangHelper2.getBigIntegerOrUint64(BigInteger.valueOf(queryByFilter.getPage())));
51 x.setSize(YangHelper2.getLongOrUint32(queryByFilter.getPageSize()));
52 x.setTotal(YangHelper2.getBigIntegerOrUint64(BigInteger.valueOf(result.getTotal())));
53 pagination = x.build();
57 public SearchResult<T> getResult() {
61 public PaginationOutputG getPagination() {
66 public String toString() {
67 return "QueryResult [result=" + result + ", pagination=" + pagination + "]";