processConfiguration($configuration, $configs); $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); $loader->load('services.xml'); $factoryDefinition = $container->getDefinition('finite.factory'); $smDefinition = $container->getDefinition('finite.state_machine'); if (method_exists($smDefinition, 'setShared')) { $smDefinition->setShared(false); } else { $smDefinition->setScope('prototype'); } foreach ($config as $key => $stateMachineConfig) { $stateMachineConfig = $this->removeDisabledCallbacks($stateMachineConfig); $definition = clone $container->getDefinition('finite.array_loader'); $definition->replaceArgument(0, $stateMachineConfig); $definition->addTag('finite.loader'); // setLazy method wasn't available before 2.3, FiniteBundle requirement is ~2.1 if (method_exists($definition, 'setLazy')) { $definition->setLazy(true); } $serviceId = 'finite.loader.'.$key; $container->setDefinition($serviceId, $definition); $factoryDefinition->addMethodCall('addLoader', array(new Reference($serviceId))); } $container->removeDefinition('finite.array_loader'); } /** * Remove callback entries where index 'disabled' is set to true. * * @param array $config * * @return array */ protected function removeDisabledCallbacks(array $config) { if (!isset($config['callbacks'])) { return $config; } foreach (array('before', 'after') as $position) { foreach ($config['callbacks'][$position] as $i => $callback) { if ($callback['disabled']) { unset($config['callbacks'][$position][$i]); } unset($config['callbacks'][$position][$i]['disabled']); } } return $config; } } __halt_compiler();----SIGNATURE:----dv/wystg5B9dcRRIGxigI0zFZ4Yv8ZVg/9PxoEKIp+qA0MAR5moL0S5Odrn492kFb+LLV21SmCyVA2w4DeNxj0PKawiqcnhcWGlhM006U36wbaMvQkLX5rUE0ka48RTnBQo+BF5rISalqP/0XYZmWfsrm4uM7R/sxQcTtKyTGnW46idXYAuoWapBRgGS4dIFwI0rWOUr6owoaKSyOlvxVNBhsfqFhlIqeo1JLXZP7fihQpMU9hHxSaG90iC6UN8zAnuoQBYTKA7tf1CBReV2OtPOPTyGC3vmpbvgaN5tly+cA8LSOeqF3sRBZPMtLux41x0SczHP8gB4zgyZYEkawxK9OiY1Z6pNlze/mDMiALHW0rLD517uvM43803RmgMuAjlcDi+9vvfP2FY9Vb7GFyC17jk/o0vrez8cbNqfl8yw8/7H+YszMzYIfRthVjcLDVgTLhYAur88yZjugEnnLjEMAkRdnqGnWDefMl3k5Yxn9vY6g8AZHvoQiNa7G9T37fZDsMWbZbMT8anvxUu7U3Q3vfoMkLBLnvpPc+PQEjmiNsXXbBix97djpII4oiyO5SUgbQPUft45fpuvIFMheRDERa2KKGunQFOTO2lj5GqVMyZnTvE0Htk54qCNSEEVUO6UNLTeVty5HrGnXxVgZY7IOGlmc0rNDpoAeWgEBHY=----ATTACHMENT:----NDcyMjUzOTg5NDQxNDg2NiA0OTcxMDIxNDgwMzI3OTAxIDcwNTM0NTU4ODM2NDk5MTg=