Retrieves a file descriptor to a configuration file to process.

        Inputs: config - The _Config object which is being populated.

        Outputs: An open file descriptor to the configuration file to parse in read mode if successful, else None.

def _getConfigFile(self, config):
        """
        Retrieves a file descriptor to a configuration file to process.

        Inputs: config - The _Config object which is being populated.

        Outputs: An open file descriptor to the configuration file to parse in read mode if successful, else None.
        """

        joinPath = lambda p: (os.path.join(p) if isinstance(p, (tuple, list)) else p)

        if self.filepathConfig is not None and self.filenameConfig is not None:
            if hasattr(config, self.filepathConfig) and hasattr(config, self.filenameConfig):
                path = joinPath(getattr(config, self.filepathConfig))
                name = getattr(config, self.filenameConfig)

                if os.path.isfile(os.path.join(path, name)):
                    return open(os.path.join(path, name), 'r')

        if self.filepath is not None and self.filename is not None:
            path = joinPath(self.filepath)
            name = self.filename

            if os.path.isfile(os.path.join(path, name)):
                return open(os.path.join(path, name), 'r')