public ParameterExtendedImpl findOrCreateParameterWithIndex()

in rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ParametersExtendedImpl.java [130:159]


    public ParameterExtendedImpl findOrCreateParameterWithIndex(int index, String direction, Type sdoType) {
    	if(this.parameter == null){
    		this.parameter = new ArrayList();
    	}
    	Iterator i = this.parameter.iterator();
        while (i.hasNext()) {
            ParameterExtendedImpl param = (ParameterExtendedImpl) i.next();

            if (param.getIndex() == index) {
                return param;
            }
        }
        if (this.logger.isDebugEnabled()) {
            this.logger.debug("Creating new parameter with index " + index);
        }

        ParameterExtendedImpl newParam = new ParameterExtendedImpl();
        newParam.setIndex(index);
        newParam.setDirection(direction);
        newParam.setType(sdoType);
        newParam.setColumnType(SDODataTypeHelper.columnTypeForSDOType(sdoType));
        this.getParameter().add(newParam);
        if(!direction.equals(ParameterExtendedImpl.IN)){
        	this.getOutParameters().add(newParam);
        }
        else{
        	this.getInParameters().add(newParam);
        }
        return newParam;
    }