All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jn.sqlhelper.dialect.parameter.BaseQueryParameters Maven / Gradle / Ivy


package com.jn.sqlhelper.dialect.parameter;

import com.jn.langx.util.collection.Collects;
import com.jn.sqlhelper.dialect.pagination.QueryParameters;
import com.jn.sqlhelper.dialect.pagination.RowSelection;

import java.util.Map;

public class BaseQueryParameters

implements QueryParameters

{ private RowSelection rowSelection; private boolean isCallable; protected P parameters; private int beforeSubqueryCount = 0; private int afterSubqueryCount = 0; protected P beforeSubqueryParameters; protected P subqueryParameters; protected P afterSubqueryParameters; @Override public P getParameterValues() { return parameters; } @Override public int getParameterValuesSize() { if (parameters == null) { return 0; } if (parameters instanceof Map) { return ((Map) parameters).size(); } return Collects.count(parameters); } @Override public RowSelection getRowSelection() { return rowSelection; } public void setRowSelection(RowSelection rowSelection) { this.rowSelection = rowSelection; } @Override public boolean isCallable() { return isCallable; } public void setCallable(boolean callable) { isCallable = callable; } /** * invoke it when a paging request */ public void setParameters(P parameters) { this.parameters = parameters; } /** * invoke it when a subquery paging request */ public void setParameters(P parameters, int beforeSubqueryCount, int afterSubqueryCount) { this.parameters = parameters; this.beforeSubqueryCount = beforeSubqueryCount; this.afterSubqueryCount = afterSubqueryCount; } @Override public int getBeforeSubqueryParameterCount() { return beforeSubqueryCount; } @Override public int getAfterSubqueryParameterCount() { return afterSubqueryCount; } @Override public P getBeforeSubqueryParameterValues() { return beforeSubqueryParameters; } @Override public P getAfterSubqueryParameterValues() { return afterSubqueryParameters; } @Override public P getSubqueryParameterValues() { return subqueryParameters; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy