Iterator list = this.paramDefnAndValBindings.iterator( ); while ( list.hasNext( ) )
Iterator it = this.parameterHints.iterator( ); while ( it.hasNext( ) )
	private void addParameterDefns() throws DataException	{		if ( this.paramDefnAndValBindings == null )		    return;	// nothing to add		// iterate thru the collection to add parameter hints		Iterator list = this.paramDefnAndValBindings.iterator( );		while ( list.hasNext( ) )		{			ParamDefnAndValBinding paramDefnAndValBinding = (ParamDefnAndValBinding) list.next( );		    IParameterDefinition parameterDefn = paramDefnAndValBinding.getParamDefn();			ParameterHint parameterHint = new ParameterHint( parameterDefn.getName(), 															 parameterDefn.isInputMode(),															 parameterDefn.isOutputMode() );			if( isParameterPositionValid(parameterDefn.getPosition()))				parameterHint.setPosition( parameterDefn.getPosition( ) );			// following data types is not supported by odaconsumer currently			Class dataTypeClass = DataType.getClass( parameterDefn.getType( ) );			if ( dataTypeClass == DataType.AnyType.class					|| dataTypeClass == Boolean.class || dataTypeClass == Blob.class )			{				dataTypeClass = null;			}			parameterHint.setDataType( dataTypeClass );			parameterHint.setIsInputOptional( parameterDefn.isInputOptional( ) );			parameterHint.setDefaultInputValue( paramDefnAndValBinding.getValue() );			parameterHint.setIsNullable( parameterDefn.isNullable() );			odaStatement.addParameterHint( parameterHint );						//If the parameter is input parameter then add it to input value list.			if ( parameterHint.isInputMode( )					&& parameterHint.getDefaultInputValue( ) != null )			{				Object inputValue = convertToValue( parameterHint.getDefaultInputValue( ),						parameterDefn.getType( ) );				if ( isParameterPositionValid(parameterHint.getPosition( )) )					this.setInputParamValue( parameterHint.getPosition( ),							inputValue );				else					this.setInputParamValue( parameterHint.getName( ),							inputValue );			}					}		this.setInputParameterBinding();	}