/** * Loads Provisioning policies from the policies file. * * @param string $policyName The name of the policy * * @access private * @return array */ private function getProvisioningPolicies($policyName) { $policies = ZPush::GetPolicies(); if (!isset($policies[$policyName]) && $policyName != ASDevice::DEFAULTPOLICYNAME) { ZLog::Write(LOGLEVEL_WARN, sprintf("The '%s' policy is configured, but it is not available in the policies' file. Please check %s file. Loading default policy.", $policyName, PROVISIONING_POLICYFILE)); return $policies[ASDevice::DEFAULTPOLICYNAME]; } ZLog::Write(LOGLEVEL_DEBUG, sprintf("DeviceManager->getProvisioningPolicies(): loaded '%s' policy.", $policyName)); // Always load default policies, so that if a policy extends a default policy it doesn't have to copy all the values if ($policyName != ASDevice::DEFAULTPOLICYNAME) { $policies[$policyName] = array_replace_recursive($policies[ASDevice::DEFAULTPOLICYNAME], $policies[$policyName]); } return $policies[$policyName]; }