2017-12-09 20:21:22 +01:00
|
|
|
|
#include "PgAuthIdContainer.h"
|
2018-11-18 19:30:45 +01:00
|
|
|
|
#include "Pgsql_Col.h"
|
2017-02-18 12:05:48 +01:00
|
|
|
|
|
|
|
|
|
|
std::string PgAuthIdContainer::getLoadQuery() const
|
|
|
|
|
|
{
|
|
|
|
|
|
std::string result =
|
|
|
|
|
|
"SELECT oid, rolname, rolsuper, rolinherit, rolcreaterole, rolcreatedb, "
|
|
|
|
|
|
" rolcanlogin, rolreplication, rolconnlimit, rolvaliduntil";
|
2018-11-18 19:30:45 +01:00
|
|
|
|
if (minimumVersion(90500))
|
2017-02-18 12:05:48 +01:00
|
|
|
|
result += ", rolbypassrls";
|
2017-12-09 20:21:22 +01:00
|
|
|
|
|
2017-02-18 12:05:48 +01:00
|
|
|
|
result += "\n"
|
|
|
|
|
|
"FROM pg_authid";
|
|
|
|
|
|
return result;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2018-11-18 19:30:45 +01:00
|
|
|
|
PgAuthId PgAuthIdContainer::loadElem(const Pgsql::Row &row)
|
2017-02-18 12:05:48 +01:00
|
|
|
|
{
|
2018-11-18 19:30:45 +01:00
|
|
|
|
Pgsql::Col col(row);
|
|
|
|
|
|
PgAuthId v;
|
|
|
|
|
|
col >> v.oid >> v.name >> v.super >> v.inherit >> v.createRole >> v.createDB
|
|
|
|
|
|
>> v.canlogin >> v.replication >> v.connLimit >> v.validUntil;
|
|
|
|
|
|
if (minimumVersion(90500))
|
|
|
|
|
|
col >> v.bypassRls;
|
2017-02-18 12:05:48 +01:00
|
|
|
|
|
2018-11-18 19:30:45 +01:00
|
|
|
|
return v;
|
|
|
|
|
|
}
|