-- -- Copyright (C) 2001, 2002 MIT -- -- This file is part of dotLRN. -- -- dotLRN is free software; you can redistribute it and/or modify it under the -- terms of the GNU General Public License as published by the Free Software -- Foundation; either version 2 of the License, or (at your option) any later -- version. -- -- dotLRN is distributed in the hope that it will be useful, but WITHOUT ANY -- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -- FOR A PARTICULAR PURPOSE. See the GNU General Public License for more -- details. -- -- -- create portal datasource package -- -- @author arjun@openforce.net -- @author yon@openforce.net -- @creation-date 2001-10-01 -- @version $Id: datasource-package-create.sql,v 1.1.1.1 2002/10/25 21:29:17 yon Exp $ -- select define_function_args('portal_datasource__new', 'name,shadeable_p;t,hideable_p;t,description'); create or replace function portal_datasource__new (varchar, varchar, varchar, varchar) returns integer as ' declare p_name alias for $1; p_shadeable_p alias for $2; p_hideable_p alias for $3; p_description alias for $4; v_datasource_id portal_datasources.datasource_id%TYPE; begin v_datasource_id := nextval(''portal_seq''); insert into portal_datasources (datasource_id, name, shadeable_p, hideable_p, description) values (v_datasource_id, p_name, p_shadeable_p, p_hideable_p, p_description); return v_datasource_id; end;' language 'plpgsql'; create or replace function portal_datasource__new (varchar, varchar) returns integer as ' declare p_name alias for $1; p_description alias for $2; v_datasource_id portal_datasources.datasource_id%TYPE; begin v_datasource_id := portal_datasource__new( p_name, ''t'', ''t'', p_description ); return v_datasource_id; end;' language 'plpgsql'; select define_function_args('portal_datasource__delete', 'datasource_id'); create or replace function portal_datasource__delete (integer) returns integer as ' declare p_datasource_id alias for $1; begin delete from portal_datasources where datasource_id = :p_datasource_id; return 0; end;' language 'plpgsql'; select define_function_args('portal_datasource__set_def_param', 'datasource_id,config_required_p,configured_p,key,value'); create or replace function portal_datasource__set_def_param (integer,varchar,varchar,varchar,varchar) returns integer as ' declare p_datasource_id alias for $1; p_config_required_p alias for $2; p_configured_p alias for $3; p_key alias for $4; p_value alias for $5; begin insert into portal_datasource_parameters (parameter_id, datasource_id, config_required_p, configured_p, key, value) values (portal_seq.nextval, p_datasource_id, p_config_required_p, p_configured_p, p_key, p_value); return 0; end;' language 'plpgsql';