Eneboo - Documentación para desarrolladores
|
00001 /*************************************************************************** 00002 FLAccessControlLists.h 00003 ------------------- 00004 begin : Fri Oct 10 2005 00005 copyright : (C) 2004-2005 by InfoSiAL S.L. 00006 email : mail@infosial.com 00007 ***************************************************************************/ 00008 /*************************************************************************** 00009 * This program is free software; you can redistribute it and/or modify * 00010 * it under the terms of the GNU General Public License as published by * 00011 * the Free Software Foundation; version 2 of the License. * 00012 ***************************************************************************/ 00013 /*************************************************************************** 00014 Este programa es software libre. Puede redistribuirlo y/o modificarlo 00015 bajo los términos de la Licencia Pública General de GNU en su 00016 versión 2, publicada por la Free Software Foundation. 00017 ***************************************************************************/ 00018 00019 #ifndef FLACCESSCONTROLLISTS_H 00020 #define FLACCESSCONTROLLISTS_H 00021 00022 class FLAccessControl; 00023 class FLTableMetaData; 00024 class FLSqlQuery; 00025 00089 class FLAccessControlLists 00090 { 00091 public: 00092 00096 FLAccessControlLists(); 00097 00101 ~FLAccessControlLists(); 00102 00108 QString name() { 00109 return name_; 00110 } 00111 00118 void init(); 00119 00126 void init(const QString &aclXml); 00127 00133 void process(QObject *obj); 00134 00140 void installACL(const QString &idacl); 00141 00142 private: 00143 00155 void makeRule(FLSqlQuery *q, QDomDocument *d); 00156 00164 void makeRuleUser(FLSqlQuery *q, QDomDocument *d, const QString &iduser); 00165 00176 void makeRuleGroup(FLSqlQuery *q, QDomDocument *d, const QString &idgroup); 00177 00183 QString name_; 00184 00195 QDict<FLAccessControl> *accessControlList_; 00196 }; 00197 00198 #endif