Back to index

nordugrid-arc-nox  1.1.0~rc6
Public Member Functions | Private Attributes
ArcSec::XACMLTargetSection Class Reference

#include <XACMLTarget.h>

Collaboration diagram for ArcSec::XACMLTargetSection:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 XACMLTargetSection (Arc::XMLNode &node, EvaluatorContext *ctx)
virtual ~XACMLTargetSection ()
virtual MatchResult match (EvaluationCtx *ctx)

Private Attributes

Arc::XMLNode sectionnode
std::list
< XACMLTargetMatchGroup * > 
groups

Detailed Description

Definition at line 49 of file XACMLTarget.h.


Constructor & Destructor Documentation

Definition at line 147 of file XACMLTarget.cpp.

                                                                              : sectionnode(node) {
  XMLNode cnd;
  std::string name;
  for(int i = 0;;i++ ) {
    cnd = node.Child(i);
    if(!cnd) break;
    name = cnd.Name();
    if(name == "Subject" || name == "Resource" || 
      name == "Action" || name == "Environment" || 
      name == "AnySubject" || name == "AnyResource" || 
      name == "AnyAction" || name == "AnyEnvironment") {
      groups.push_back(new XACMLTargetMatchGroup(cnd, ctx));
    }
    if(name == "AnySubject" || name == "AnyResource" ||
      name == "AnyAction" || name == "AnyEnvironment") break;
  }

}

Here is the call graph for this function:

Definition at line 166 of file XACMLTarget.cpp.

                                        {
  while(!(groups.empty())) {
    XACMLTargetMatchGroup* grp = groups.back();
    groups.pop_back();
    delete grp;
  }
}

Member Function Documentation

Definition at line 174 of file XACMLTarget.cpp.

                                                        {
  MatchResult res;
  std::list<XACMLTargetMatchGroup*>::iterator i;
  for(i = groups.begin(); i!= groups.end(); i++) {
    res = (*i)->match(ctx);
    if(res == MATCH) break;
  }
  return res;
}

Member Data Documentation

Definition at line 57 of file XACMLTarget.h.

Definition at line 56 of file XACMLTarget.h.


The documentation for this class was generated from the following files: