} $serviceid = 'logger' . (!empty($params[0]) ? '.' . $params[0] : ''); if (!$cont->initialized($serviceid)) { $cont->setShared($serviceid, function ($cont) use($params) { return new \Scalr\Logger(!empty($params[0]) ? $params[0] : null); }); } return $cont->get($serviceid); }); $container->set('warmup', function ($cont, array $arguments = null) { //Releases cloud credentials foreach (['aws', 'openstack', 'cloudstack', 'eucalyptus', 'cloudyn'] as $srv) { $cont->release($srv); } //Releases platform module static cache \Scalr\Modules\PlatformFactory::warmup(); return $cont; }); $container->set('crypto', function ($cont, array $arguments = []) { $algo = array_shift($arguments) ?: MCRYPT_RIJNDAEL_128; $mode = array_shift($arguments) ?: MCRYPT_MODE_CFB; $cryptoKey = $cryptoKeyId = array_shift($arguments) ?: APPPATH . "/etc/.cryptokey"; $keySize = array_shift($arguments) ?: 32; $blockSize = array_shift($arguments) ?: 16; if ($cryptoKey instanceof SplFileObject) { $cryptoKeyId = $cryptoKey->getRealPath(); } else { if (is_resource($cryptoKey) && get_resource_type($cryptoKey) == 'stream') { $cryptoKeyId = realpath(stream_get_meta_data($cryptoKey)['uri']); } else { if ((is_string($cryptoKey) || is_numeric($cryptoKey)) && @file_exists($cryptoKey)) {