00001 /*------------------------------------------------------------------------- 00002 * 00003 * pg_foreign_data_wrapper.h 00004 * definition of the system "foreign-data wrapper" relation (pg_foreign_data_wrapper) 00005 * along with the relation's initial contents. 00006 * 00007 * 00008 * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group 00009 * Portions Copyright (c) 1994, Regents of the University of California 00010 * 00011 * src/include/catalog/pg_foreign_data_wrapper.h 00012 * 00013 * NOTES 00014 * the genbki.pl script reads this file and generates .bki 00015 * information from the DATA() statements. 00016 * 00017 *------------------------------------------------------------------------- 00018 */ 00019 #ifndef PG_FOREIGN_DATA_WRAPPER_H 00020 #define PG_FOREIGN_DATA_WRAPPER_H 00021 00022 #include "catalog/genbki.h" 00023 00024 /* ---------------- 00025 * pg_foreign_data_wrapper definition. cpp turns this into 00026 * typedef struct FormData_pg_foreign_data_wrapper 00027 * ---------------- 00028 */ 00029 #define ForeignDataWrapperRelationId 2328 00030 00031 CATALOG(pg_foreign_data_wrapper,2328) 00032 { 00033 NameData fdwname; /* foreign-data wrapper name */ 00034 Oid fdwowner; /* FDW owner */ 00035 Oid fdwhandler; /* handler function, or 0 if none */ 00036 Oid fdwvalidator; /* option validation function, or 0 if none */ 00037 00038 #ifdef CATALOG_VARLEN /* variable-length fields start here */ 00039 aclitem fdwacl[1]; /* access permissions */ 00040 text fdwoptions[1]; /* FDW options */ 00041 #endif 00042 } FormData_pg_foreign_data_wrapper; 00043 00044 /* ---------------- 00045 * Form_pg_fdw corresponds to a pointer to a tuple with 00046 * the format of pg_fdw relation. 00047 * ---------------- 00048 */ 00049 typedef FormData_pg_foreign_data_wrapper *Form_pg_foreign_data_wrapper; 00050 00051 /* ---------------- 00052 * compiler constants for pg_fdw 00053 * ---------------- 00054 */ 00055 00056 #define Natts_pg_foreign_data_wrapper 6 00057 #define Anum_pg_foreign_data_wrapper_fdwname 1 00058 #define Anum_pg_foreign_data_wrapper_fdwowner 2 00059 #define Anum_pg_foreign_data_wrapper_fdwhandler 3 00060 #define Anum_pg_foreign_data_wrapper_fdwvalidator 4 00061 #define Anum_pg_foreign_data_wrapper_fdwacl 5 00062 #define Anum_pg_foreign_data_wrapper_fdwoptions 6 00063 00064 #endif /* PG_FOREIGN_DATA_WRAPPER_H */