diff --git a/client/renderer/interface.yaml b/client/renderer/interface.yaml index 7c744e3..b063535 100644 --- a/client/renderer/interface.yaml +++ b/client/renderer/interface.yaml @@ -326,3 +326,54 @@ no_params: true params: - {} + +- name: obs_getavailablenumerators + return_type: SETOF cdb_dataservices_client.obs_meta_numerator + multi_row: true + multi_field: true + params: + - { name: bounds, type: "geometry(Geometry, 4326)", default: 'NULL' } + - { name: filter_tags, type: "text[]", default: 'NULL' } + - { name: denom_id, type: text, default: 'NULL' } + - { name: geom_id, type: text, default: 'NULL' } + - { name: timespan, type: text, default: 'NULL'} + +- name: obs_getavailabledenominators + return_type: SETOF cdb_dataservices_client.obs_meta_denominator + multi_row: true + multi_field: true + params: + - { name: bounds, type: "geometry(Geometry, 4326)", default: 'NULL' } + - { name: filter_tags, type: "text[]", default: 'NULL' } + - { name: numer_id, type: text, default: 'NULL' } + - { name: geom_id, type: text, default: 'NULL' } + - { name: timespan, type: text, default: 'NULL'} + +- name: obs_getavailablegeometries + return_type: SETOF cdb_dataservices_client.obs_meta_geometry + multi_row: true + multi_field: true + params: + - { name: bounds, type: "geometry(Geometry, 4326)", default: 'NULL' } + - { name: filter_tags, type: "text[]", default: 'NULL' } + - { name: numer_id, type: text, default: 'NULL' } + - { name: denom_id, type: text, default: 'NULL' } + - { name: timespan, type: text, default: 'NULL'} + +- name: obs_getavailabletimespans + return_type: SETOF cdb_dataservices_client.obs_meta_timespan + multi_row: true + multi_field: true + params: + - { name: bounds, type: "geometry(Geometry, 4326)", default: 'NULL' } + - { name: filter_tags, type: "text[]", default: 'NULL' } + - { name: numer_id, type: text, default: 'NULL' } + - { name: denom_id, type: text, default: 'NULL' } + - { name: geom_id, type: text, default: 'NULL'} + +- name: obs_legacybuildermetadata + return_type: TABLE(name text, subsection jsonb) + multi_row: true + multi_field: true + params: + - { name: aggregate_type, type: text, default: 'NULL' } diff --git a/client/sql/16_custom_types.sql b/client/sql/16_custom_types.sql index 97d728c..9f26b97 100644 --- a/client/sql/16_custom_types.sql +++ b/client/sql/16_custom_types.sql @@ -8,4 +8,13 @@ CREATE TYPE cdb_dataservices_client.simple_route AS ( shape geometry(LineString,4326), length real, duration integer -); \ No newline at end of file +); + +-- For the OBS_Meta functions +CREATE TYPE cdb_dataservices_client.obs_meta_numerator AS (numer_id text, numer_name text, numer_description text, numer_weight text, numer_license text, numer_source text, numer_type text, numer_aggregate text, numer_extra jsonb, numer_tags jsonb, valid_denom boolean, valid_geom boolean, valid_timespan boolean); + +CREATE TYPE cdb_dataservices_client.obs_meta_denominator AS (denom_id text, denom_name text, denom_description text, denom_weight text, denom_license text, denom_source text, denom_type text, denom_aggregate text, denom_extra jsonb, denom_tags jsonb, valid_numer boolean, valid_geom boolean, valid_timespan boolean); + +CREATE TYPE cdb_dataservices_client.obs_meta_geometry AS (geom_id text, geom_name text, geom_description text, geom_weight text, geom_aggregate text, geom_license text, geom_source text, valid_numer boolean, valid_denom boolean, valid_timespan boolean); + +CREATE TYPE cdb_dataservices_client.obs_meta_timespan AS (timespan_id text, timespan_name text, timespan_description text, timespan_weight text, timespan_aggregate text, timespan_license text, timespan_source text, valid_numer boolean, valid_denom boolean, valid_geom boolean);