class Db2PagingQueryProvider extends SqlWindowingPagingQueryProvider {

	@Override
	public String generateFirstPageQuery(int pageSize) {
		return SqlPagingQueryUtils.generateLimitSqlQuery(this, false, buildLimitClause(pageSize));
	}

	@Override
	public String generateRemainingPagesQuery(int pageSize) {<FILL_FUNCTION_BODY>}

	@Override
	protected Object getSubQueryAlias() {
		return "AS TMP_SUB ";
	}

	private String buildLimitClause(int pageSize) {
		return new StringBuilder().append("FETCH FIRST ").append(pageSize).append(" ROWS ONLY").toString();
	}

}

		if (StringUtils.hasText(getGroupClause())) {
			return SqlPagingQueryUtils.generateLimitGroupedSqlQuery(this, buildLimitClause(pageSize));
		}
		else {
			return SqlPagingQueryUtils.generateLimitSqlQuery(this, true, buildLimitClause(pageSize));
		}
	
<methods>public non-sealed void <init>() ,public java.lang.String generateFirstPageQuery(int) ,public java.lang.String generateRemainingPagesQuery(int) <variables>