DecisionItem NaivePolicyDb::getDecisionItem(PolicyType policy_type,
PolicyTypeValue policy_type_value,
const T &item) const {
- auto policy = getPolicy<typename MatchPolicy<T>::policy_type>(policy_type, policy_type_value);
+ auto policy = getPolicySet<T>().getPolicy(policy_type, policy_type_value);
if (nullptr == policy)
return Decision::ANY;
return policy->getDecisionItem(item);
}
-template <typename P>
-const P *NaivePolicyDb::getPolicy(const PolicyType policy_type,
- const PolicyTypeValue policy_type_value) const {
- return nullptr;
-}
-
-namespace ldp_xml_parser {
-template <>
-const NaivePolicyDb::PolicyOwn *NaivePolicyDb::getPolicy<NaivePolicyDb::PolicyOwn>(const PolicyType policy_type,
- const PolicyTypeValue policy_type_value) const {
- return m_own_set.getPolicy(policy_type, policy_type_value);
-}
-
-template <>
-const NaivePolicyDb::PolicySend *NaivePolicyDb::getPolicy<NaivePolicyDb::PolicySend>(const PolicyType policy_type,
- const PolicyTypeValue policy_type_value) const {
- return m_send_set.getPolicy(policy_type, policy_type_value);
-}
-
-template <>
-const NaivePolicyDb::PolicyReceive *NaivePolicyDb::getPolicy<NaivePolicyDb::PolicyReceive>(const PolicyType policy_type,
- const PolicyTypeValue policy_type_value) const {
- return m_receive_set.getPolicy(policy_type, policy_type_value);
-}
-
-template <>
-const NaivePolicyDb::PolicyAccess *NaivePolicyDb::getPolicy<NaivePolicyDb::PolicyAccess>(const PolicyType policy_type,
- const PolicyTypeValue policy_type_value) const {
- return m_access_set.getPolicy(policy_type, policy_type_value);
-}
-}
-
void NaivePolicyDb::updateSupplementaryGroups(const VGid &groups, uid_t uid, gid_t gid) const
{
auto &vsend = m_send_set.getMapGroup(uid);