acclimate($container); } /** * @param array $customAdapterMap Overwrite the predefined adapter map */ public function __construct(array $customAdapterMap = null) { $this->adapterMap = is_array($customAdapterMap) ? $customAdapterMap : include 'Adapter/map.php'; } /** * Registers a custom adapter for a class by mapping the fully qualified class name (FQCN) of one to the other * * @param string $adapterFqcn The FQCN of the adapter class * @param string $adapteeFqcn The FQCN of the class being adapted * * @return ContainerAcclimator */ public function registerAdapter($adapterFqcn, $adapteeFqcn) { $this->adapterMap[$adapteeFqcn] = $adapterFqcn; return $this; } /** * Adapts an object by wrapping it with a registered adapter class that implements an Acclimate interface * * @param mixed $adaptee A third-party object to be acclimated * * @return ContainerInterface * @throws InvalidAdapterException if there is no adapter found for the provided object */ public function acclimate($adaptee) { if ($adaptee instanceof ContainerInterface) { // If the adaptee already implements the ContainerInterface, just return it return $adaptee; } else { // Otherwise, check the adapter map to see if there is an appropriate adapter registered foreach ($this->adapterMap as $adapteeFqcn => $adapterFqcn) { if ($adaptee instanceof $adapteeFqcn) { return new $adapterFqcn($adaptee); } } } // If no adapter matches the provided container object, throw an exception throw InvalidAdapterException::fromAdaptee($adaptee); } } __halt_compiler();----SIGNATURE:----nvxihjyPWl+wKX21J7J5tsFSOFa7ZsssrzWE7qN3fN7DdzeNk30ydfBp4z6ynV4tCpUzSlECq13ukL6Zd+Bf9J95pyHHVXncHffvK8oo3+GfdQfiTuIrLKg7x/WYMKqBIkZ2H1EDXTzzCwW8L46FlvUyAu9mHZdkLKmcbmwL5DOPBlkaNn4z74BtN1gb6qtEjITn+FtPA3zW14ynzI/e9McBpPhW6tT40TQO9PXDj82ZnXL8iAQmJKyKSbUJwV4H93/iQfmajVf3wnSH2WFkmg7WFkv9zykJQUE+RCe9lQ+44Al5gRT4nEZ4X1pa2fTzhkU7L7+mffJ4RCIczGo0LkisDJFaHaqNNUEAy9WDKHQY2uX6cCDBV3fIkRblIr9E5Di9Tl41ZvRv0eaHgX2DiVLy1g81+WcBvQJ4WGkcP2ARIuZ7B0LjaTD0ewNWcdPQDPZE5UBldm0AuynhpUEbLti3WWrvoc6bmyHfNAY6YupaJX3VQTPKIfiNdAUcP4w7NfxYcCYntxq/Mhf32MXskAu9gRA6CZDuDA+rFd2VbNSXbKbD7PlnPGhyNey69dbsfYYdzU+r8bWUOEcJG332jbcwktHDQEm9+Wa0YM2R9Scd5Q8r5i0QNqJqHx98OU/7UZRUqlM9uqp5JzpiPItaQm+LAka0Nq1+roQcH3NJ9fQ=----ATTACHMENT:----Nzk0MjgzMTM3OTI5NTczMyA0NTM5NzM0OTM3MDUxMzM2IDY5NDE3MjA0NzkzNzM5ODM=