diff options
| author | Carl C. Trieloff <cctrieloff@apache.org> | 2008-08-01 13:40:56 +0000 |
|---|---|---|
| committer | Carl C. Trieloff <cctrieloff@apache.org> | 2008-08-01 13:40:56 +0000 |
| commit | 34ba8277044906749d400205f4f56fc24375ae22 (patch) | |
| tree | 6ec3bb69f16820ba734d35fb1457ffe524002f8a /cpp/src/qpid/acl/Acl.h | |
| parent | 76a64b149db18ce1a81b9f34b7a34dde1524a5e9 (diff) | |
| download | qpid-python-34ba8277044906749d400205f4f56fc24375ae22.tar.gz | |
- Add support for ACL on message transfer
- Performance optimizations for ACL on message transfer
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@681690 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/acl/Acl.h')
| -rw-r--r-- | cpp/src/qpid/acl/Acl.h | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/cpp/src/qpid/acl/Acl.h b/cpp/src/qpid/acl/Acl.h index 98400eb33d..f460fb0c5e 100644 --- a/cpp/src/qpid/acl/Acl.h +++ b/cpp/src/qpid/acl/Acl.h @@ -48,22 +48,28 @@ struct AclValues { class Acl : public broker::AclModule, public RefCounted { +private: + acl::AclValues aclValues; + broker::Broker* broker; + bool transferAcl; + + public: Acl (AclValues& av, broker::Broker& b); void initialize(); - virtual bool authorise(std::string id, acl::Action action, acl::ObjectType objType, std::string name, std::map<std::string, std::string>* params); + inline virtual bool doTransferAcl() {return transferAcl;}; + // create specilied authorise methods for cases that need faster matching as needed. + virtual bool authorise(std::string id, acl::Action action, acl::ObjectType objType, std::string name, std::map<std::string, std::string>* params); + virtual bool authorise(std::string id, acl::Action action, acl::ObjectType objType, std::string ExchangeName, std::string RoutingKey); virtual ~Acl(); private: std::string printAction(acl::Action action); std::string printObjType(acl::ObjectType objType); - - acl::AclValues aclValues; - broker::Broker* broker; - + bool result(AclResult aclreslt, std::string id, acl::Action action, acl::ObjectType objType, std::string name); bool readAclFile(); }; |
