/*******************************************************************************
 * Copyright (c) 2004 Actuate Corporation.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *  Actuate Corporation  - initial API and implementation
 *******************************************************************************/
package org.eclipse.birt.report.engine.api;

import java.util.ArrayList;

/**
 * base interface for a BIRT report parameter
 */
public interface IParameterDefn extends IParameterDefnBase
{

	public static final int TYPE_ANY = 0;
	public static final int TYPE_STRING = 1;
	public static final int TYPE_FLOAT = 2;
	public static final int TYPE_DECIMAL = 3;
	public static final int TYPE_DATE_TIME = 4;
	public static final int TYPE_BOOLEAN = 5;
	public static final int TYPE_INTEGER = 6;
	public static final int TYPE_DATE = 7;
	public static final int TYPE_TIME = 8;
	
	public static final int SELECTION_LIST_NONE = 0;
	public static final int SELECTION_LIST_DYNAMIC = 1;
	public static final int SELECTION_LIST_STATIC = 2;
	
	/**
	 * returns whether the parameter is a hidden parameter
	 * 
	 * @return whether the parameter is a hidden parameter
	 */
	public boolean isHidden( );
	
	/**
	 * @return whether the parameter is required.<br>
	 *         the rule for String type is:
	 *         <li>isRequired=true, allowNull and allowBlank are false</li>
	 *         <li>isRequired=false, allowNull and allowBlank are true</li>
	 *         <br>
	 *         for other type like integer:
	 *         <li>isRequired=true, allowNull and allowBlank are false</li>
	 *         <li>isRequired=false, allowNull and allowBlank are true</li>
	 */
	boolean isRequired( );
	
	/**
	 * returns the parameter data type. See the ColumnDefn class
	 * for the valid data type constants.
	 * 
	 * @return the parameter data type
	 */
	
	int getDataType( );
	
	/**
	 * @return get a parameter value selection object, from which a list of
	 *         parameter values and label values can be retrieved.
	 * @deprecated
	 */
	public ArrayList getSelectionList( );

	/**
	 * @return the type of the parameter selection list
	 */
	public int getSelectionListType();
}
@@ -523,16 +523,17 @@
 ******/%0A
+%0A
 package 
@@ -1090,18 +1090,17 @@
 ME = 8;%0A
-%09
 %0A
+
 %09public 
@@ -1246,18 +1246,17 @@
 IC = 2;%0A
-%09
 %0A
+
 %09/**%0A%09 *
@@ -1399,26 +1399,25 @@
 sHidden( );%0A
-%09
 %0A
+
 %09/**%0A%09 * @re
@@ -1500,28 +1500,16 @@
 type is:
-%0A%09 *        
  %3Cli%3EisR
@@ -1527,32 +1527,44 @@
 e, allowNull and
+%0A%09 *        
  allowBlank are 
@@ -1569,36 +1569,24 @@
 e false%3C/li%3E
-%0A%09 *        
  %3Cli%3EisRequi
@@ -1601,32 +1601,44 @@
 e, allowNull and
+%0A%09 *        
  allowBlank are 
@@ -1646,28 +1646,16 @@
 rue%3C/li%3E
-%0A%09 *        
  %3Cbr%3E%0A%09 
@@ -1692,28 +1692,16 @@
 integer:
-%0A%09 *        
  %3Cli%3EisR
@@ -1719,32 +1719,44 @@
 e, allowNull and
+%0A%09 *        
  allowBlank are 
@@ -1765,28 +1765,16 @@
 lse%3C/li%3E
-%0A%09 *        
  %3Cli%3EisR
@@ -1801,16 +1801,28 @@
 Null and
+%0A%09 *        
  allowBl
@@ -1864,26 +1864,25 @@
 equired( );%0A
-%09
 %0A
+
 %09/**%0A%09 * ret
@@ -1915,70 +1915,438 @@
 pe. 
-See the ColumnDefn class%0A%09 * for the valid data type constants
+The valid data type could be%0A%09 * %3Ccode%3EIParameterDefn.TYPE_ANY%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_STRING%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_FLOAT%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_DECIMAL%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_DATE_TIME%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_BOOLEAN%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_INTEGER%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_DATE%3C/code%3E,%0A%09 * %3Ccode%3EIParameterDefn.TYPE_TIME%3C/code%3E
 .%0A%09 
@@ -2389,18 +2389,17 @@
 pe%0A%09 */%0A
-%09
 %0A
+
 %09int get
@@ -2415,10 +2415,9 @@
  );%0A
-%09
 %0A
+
 %09/**
@@ -2674,24 +2674,24 @@
 n list%0A%09 */%0A
-
 %09public int 
@@ -2711,12 +2711,13 @@
 istType(
+ 
 );%0A%7D

Update Javadoc 48926