public DataFeederLoader()

in gepard-core/src/main/java/com/epam/gepard/datadriven/DataFeederLoader.java [61:92]


    public DataFeederLoader(final String className, final String feederDescriptor, final Environment environment) {
        this.environment = environment;
        if (feederDescriptor.length() == 0) {
            return; //nothing to do
        }
        //there is something in the feeder descriptor
        try {
            tryToInterpretFeederDescriptorAsNumber(feederDescriptor);
        } catch (NumberFormatException e) {
            //must be a feeder class or just a parameter for the default filter
            //this should be then one of:
            //* - feederclass
            //* - feederclass:param
            //* - feederclass:param@feederdescriptor
            //* - feederclass@feederdescriptor
            //* - :param   (this uses the default feeder)
            //* - :param@feederdescriptor (this uses the default feeder)
            interpretAsFeederClassOrDefaultFilterParameter(feederDescriptor);
        }
        //now feederClassName, feederClassParameter and nextFeederDescriptor is ready for use
        checkFeederClassValidity(className);
        //try to load the loader class with the given parameter
        feeder = loadDataLoaderClass(className, feederClassName); //if load fails, Gepard exits
        // CALL THE FEEDER INIT METHOD
        int initValue = feeder.init(className, feederClassParameter, environment);
        checkFeederClassInitialization(className, initValue);
        //we are ready, now load the next feeder in the feeder chain, if we have the next feeder descriptor available
        if (nextFeederDescriptor != null) {
            //load the next part of the chain
            nextDataFeederLoader = new DataFeederLoader(className, nextFeederDescriptor, environment);
        }
    }