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

📄 iteratorgeneratortag.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:   IteratorGeneratorTag.java

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

import com.opensymphony.xwork2.util.ValueStack;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts2.util.IteratorGenerator;
import org.apache.struts2.views.jsp.StrutsBodyTagSupport;

public class IteratorGeneratorTag extends StrutsBodyTagSupport
{

	private static final long serialVersionUID = 0x29309631e43dc430L;
	public static final String DEFAULT_SEPARATOR = ",";
	private static final Log _log = LogFactory.getLog(org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag);
	String countAttr;
	String separatorAttr;
	String valueAttr;
	String converterAttr;
	IteratorGenerator iteratorGenerator;

	public IteratorGeneratorTag()
	{
		iteratorGenerator = null;
	}

	public void setCount(String count)
	{
		countAttr = count;
	}

	public void setSeparator(String separator)
	{
		separatorAttr = separator;
	}

	public void setVal(String val)
	{
		valueAttr = val;
	}

	public void setConverter(String aConverter)
	{
		converterAttr = aConverter;
	}

	public void setId(String string)
	{
		super.setId(string);
	}

	public int doStartTag()
		throws JspException
	{
		Object value = findValue(valueAttr);
		String separator = ",";
		if (separatorAttr != null && separatorAttr.length() > 0)
			separator = findString(separatorAttr);
		int count = 0;
		if (countAttr != null && countAttr.length() > 0)
		{
			Object countObj = findValue(countAttr);
			if (countObj instanceof Integer)
				count = ((Integer)countObj).intValue();
			else
			if (countObj instanceof Float)
				count = ((Float)countObj).intValue();
			else
			if (countObj instanceof Long)
				count = ((Long)countObj).intValue();
			else
			if (countObj instanceof Double)
				count = ((Long)countObj).intValue();
			else
			if (countObj instanceof String)
				try
				{
					count = Integer.parseInt((String)countObj);
				}
				catch (NumberFormatException e)
				{
					_log.warn((new StringBuilder()).append("unable to convert count attribute [").append(countObj).append("] to number, ignore count attribute").toString(), e);
				}
		}
		org.apache.struts2.util.IteratorGenerator.Converter converter = null;
		if (converterAttr != null && converterAttr.length() > 0)
			converter = (org.apache.struts2.util.IteratorGenerator.Converter)findValue(converterAttr);
		iteratorGenerator = new IteratorGenerator();
		iteratorGenerator.setValues(value);
		iteratorGenerator.setCount(count);
		iteratorGenerator.setSeparator(separator);
		iteratorGenerator.setConverter(converter);
		iteratorGenerator.execute();
		getStack().push(iteratorGenerator);
		if (getId() != null && getId().length() > 0)
			pageContext.setAttribute(getId(), iteratorGenerator);
		return 1;
	}

	public int doEndTag()
		throws JspException
	{
		getStack().pop();
		iteratorGenerator = null;
		return 6;
	}

}

⌨️ 快捷键说明

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