public function getMapping()
    {
        if (null === $this->mapping) {
            $mappingFilePath = $this->locateFile($this->mappingFileName);

            if (is_array($mappingFilePath)) {
                throw new \Exception("The mapping file wasn't found. Locations we tried: ".join(', ', $mappingFilePath));
            } elseif (!is_readable($mappingFilePath)) {
                throw new \RuntimeException(sprintf('The mapping.yaml was not found at %s or is not readable.', $mappingFilePath));
            } else {
                $this->mappingFilePath = $mappingFilePath;
                $this->mapping = Yaml::parse(file_get_contents($mappingFilePath));
            }
        }

        return $this->mapping;
    }