com.ewcms.publication.freemarker.directive.page.SkipPageLast.java Source code

Java tutorial

Introduction

Here is the source code for com.ewcms.publication.freemarker.directive.page.SkipPageLast.java

Source

/**
 * Copyright (c)2010-2011 Enterprise Website Content Management System(EWCMS), All rights reserved.
 * EWCMS PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 * http://www.ewcms.com
 */

package com.ewcms.publication.freemarker.directive.page;

import org.apache.commons.lang.StringUtils;

import com.ewcms.publication.freemarker.directive.page.SkipBaseDirective.GeneratorUrl;
import com.ewcms.publication.uri.UriRuleable;

import freemarker.template.TemplateException;

/**
 * 
 *
 * @author wangwei
 */
class SkipPageLast implements SkipPageable {

    private static final String DEFAULT_LABEL = "";

    @Override
    public PageOut skip(Integer count, Integer number, String label, UriRuleable rule) throws TemplateException {

        label = StringUtils.isBlank(label) ? DEFAULT_LABEL : label;
        int last = count - 1;
        boolean active = (number != last);
        GeneratorUrl generatorUrl = new GeneratorUrl(rule, number);
        String url = generatorUrl.getUriValue(last);

        return new PageOut(count, last, label, url, active);
    }
}