00001 #ifndef __ARC_SEC_X500NAMEATTRIBUTE_H__
00002 #define __ARC_SEC_X500NAMEATTRIBUTE_H__
00003
00004 #include <arc/security/ArcPDP/attr/AttributeValue.h>
00005
00006 namespace ArcSec {
00007 class X500NameAttribute : public AttributeValue {
00008 private:
00009 static std::string identifier;
00010 std::string value;
00011 std::string id;
00012
00013 public:
00014 X500NameAttribute() { };
00015 X500NameAttribute(std::string v, std::string i) : value(v), id(i) { };
00016 virtual ~X500NameAttribute(){ };
00017
00018 virtual bool equal(AttributeValue* other, bool check_id = true);
00019 virtual std::string encode() {return value;};
00020 std::string getValue(){ return value; };
00021 virtual std::string getType() {return identifier; };
00022 virtual std::string getId(){ return id; };
00023 static const std::string& getIdentifier(void) { return identifier; };
00024
00025 };
00026
00027 }
00028
00029 #endif
00030
00031