/**
  * @param string $dependencyClassname
  * @param string $dependencyConstructorParamName
  * @param mixed  $dependencyConstructorParamValue
  */
 public function configureDependencyParamValue($dependencyClassname, $dependencyConstructorParamName, $dependencyConstructorParamValue)
 {
     if (!class_exists($dependencyClassname) && !$this->container->has($dependencyClassname)) {
         throw new ClassDoesNotExistException($dependencyClassname);
     }
     $this->configuration->setSubdependencyValue($dependencyClassname, $dependencyConstructorParamName, $dependencyConstructorParamValue);
 }
 /**
  * @param string                           $path
  * @param DependencyConfigurationInterface $config
  */
 public function addConfigFileToConfiguration($path, $config)
 {
     $configFileAsArray = Yaml::parse($path);
     foreach ($configFileAsArray['awin-dependency-injection'] as $configSetting) {
         $dependencyName = $configSetting['dependency-name'];
         if (isset($configSetting['param-types'])) {
             foreach ($configSetting['param-types'] as $subdependencyName => $subdependencyType) {
                 $config->setSubdependencyType($dependencyName, $subdependencyName, $subdependencyType);
             }
         }
         if (isset($configSetting['param-values'])) {
             foreach ($configSetting['param-values'] as $subdependencyName => $subdependencyValue) {
                 $config->setSubdependencyValue($dependencyName, $subdependencyName, $subdependencyValue);
             }
         }
     }
 }