⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sortiteratortag.java

📁 struts 2 核心包 的源码 有错误是难免的
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   SortIteratorTag.java

package org.apache.struts2.views.jsp.iterator;

import com.opensymphony.xwork2.util.ValueStack;
import java.util.Comparator;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import org.apache.struts2.util.MakeIterator;
import org.apache.struts2.util.SortIteratorFilter;
import org.apache.struts2.views.jsp.StrutsBodyTagSupport;

public class SortIteratorTag extends StrutsBodyTagSupport
{

	private static final long serialVersionUID = 0x9341ee87c472e6b5L;
	String comparatorAttr;
	String sourceAttr;
	SortIteratorFilter sortIteratorFilter;

	public SortIteratorTag()
	{
		sortIteratorFilter = null;
	}

	public void setComparator(String comparator)
	{
		comparatorAttr = comparator;
	}

	public void setSource(String source)
	{
		sourceAttr = source;
	}

	public int doStartTag()
		throws JspException
	{
		Object srcToSort;
		if (sourceAttr == null)
			srcToSort = findValue("top");
		else
			srcToSort = findValue(sourceAttr);
		if (!MakeIterator.isIterable(srcToSort))
			throw new JspException((new StringBuilder()).append("source [").append(srcToSort).append("] is not iteratable").toString());
		Object comparatorObj = findValue(comparatorAttr);
		if (!(comparatorObj instanceof Comparator))
			throw new JspException((new StringBuilder()).append("comparator [").append(comparatorObj).append("] does not implements Comparator interface").toString());
		Comparator c = (Comparator)findValue(comparatorAttr);
		sortIteratorFilter = new SortIteratorFilter();
		sortIteratorFilter.setComparator(c);
		sortIteratorFilter.setSource(srcToSort);
		sortIteratorFilter.execute();
		getStack().push(sortIteratorFilter);
		if (getId() != null && getId().length() > 0)
			pageContext.setAttribute(getId(), sortIteratorFilter);
		return 1;
	}

	public int doEndTag()
		throws JspException
	{
		int returnVal = super.doEndTag();
		getStack().pop();
		sortIteratorFilter = null;
		return returnVal;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -