Christopher B. Browne's Home Page
cbbrowne@acm.org

8.87. registry_get_text(text, text)

Function Properties

PLPGSQLtext
registry_get_text(key, value) Get a registry value. If not present, set and return the default.
    DECLARE
    	p_key		alias for $1;
    	p_default	alias for $2;
    	v_value		text;
    BEGIN
    	select reg_text into v_value from sl_registry
    			where reg_key = p_key;
    	if not found then 
    		v_value = p_default;
    		if p_default notnull then
    			perform registry_set_text(p_key, p_default);
    		end if;
    	else
    		if v_value is null then
    			raise exception 'Slony-I: registry key % is not a text value',
    					p_key;
    		end if;
    	end if;
    	return v_value;
    END;

Google
Contact me at cbbrowne@acm.org