private ISourceHandler getSourceHandler(String sourceName, String sourceHandlerClass)
            throws ConfigurationException {
        checkObjectAvailability(sourceHandlerClass,
                "exception.configuration.missing.sourcehandlerlazz", sourceName);

        try {
            return (ISourceHandler) (Class.forName(sourceHandlerClass)).newInstance();
        } catch (InstantiationException e) {
            throw new ConfigurationException(MessageUtil.formatMessage(
                    "exception.configuration.handlercreationfailure", sourceHandlerClass), e);
        } catch (IllegalAccessException e) {
            throw new ConfigurationException(MessageUtil.formatMessage(
                    "exception.configuration.handlercreationfailure", sourceHandlerClass), e);
        } catch (ClassNotFoundException e) {
            throw new ConfigurationException(MessageUtil.formatMessage(
                    "exception.configuration.classnotfound", sourceHandlerClass), e);
        }
    }