Back to index

nordugrid-arc-nox  1.1.0~rc6
XACMLCondition.h
Go to the documentation of this file.
00001 #ifndef __ARC_SEC_XACMLCONDITION_H__
00002 #define __ARC_SEC_XACMLCONDITION_H__
00003 
00004 #include <list>
00005 #include <arc/XMLNode.h>
00006 #include <arc/security/ArcPDP/attr/AttributeValue.h>
00007 #include <arc/security/ArcPDP/fn/Function.h>
00008 #include <arc/security/ArcPDP/attr/AttributeFactory.h>
00009 #include <arc/security/ArcPDP/fn/FnFactory.h>
00010 #include <arc/security/ArcPDP/Evaluator.h>
00011 
00012 #include "./AttributeSelector.h"
00013 #include "./AttributeDesignator.h"
00014 #include "./XACMLApply.h"
00015 
00016 namespace ArcSec {
00017 
00019 class XACMLCondition {
00020 public:
00022   XACMLCondition(Arc::XMLNode& node, EvaluatorContext* ctx);  
00023   virtual ~XACMLCondition();  
00024   std::list<AttributeValue*> evaluate(EvaluationCtx* ctx);
00025 
00026 private:
00027   Arc::XMLNode condition_node;
00028   std::list<XACMLApply*> apply_list;
00029 
00030 };
00031 
00032 } // namespace ArcSec
00033 
00034 #endif /* __ARC_SEC_XACMLCONDITION_H__ */
00035