#include "PgClassContainer.h" #include "Pgsql_Connection.h" #include "Pgsql_Col.h" #include "PgDatabaseCatalog.h" #include "PgNamespaceContainer.h" #include std::string PgClassContainer::getLoadQuery() const { return "SELECT oid, relname, relnamespace, reltype, reloftype, " " relowner, relam, relfilenode, reltablespace, relpages, " " reltuples, reltoastrelid, relisshared, relpersistence, " " relkind, relhasoids, relispopulated, relfrozenxid, relminmxid, " " reloptions, relacl \n" "FROM pg_catalog.pg_class"; } PgClass PgClassContainer::loadElem(const Pgsql::Row &row) { Pgsql::Col col(row); Oid class_oid = col.nextValue(); QString name = col.nextValue(); Oid schema_oid = col.nextValue(); PgClass v(m_catalog, class_oid, name, schema_oid); Oid owner ; col >> v.type >> v.oftype >> owner >> v.am >> v.filenode >> v.tablespace >> v.pages_est >> v.tuples_est >> v.toastrelid >> v.isshared >> v.persistence >> v.kind >> v.hasoids >> v.ispopulated >> v.frozenxid >> v.minmxid >> v.options; v.setOwnerOid(owner); AclList acl_list; col >> acl_list; v.setAcls(std::move(acl_list)); return v; }