The error in line twenty-two is because
samplenote__new
is a string to be passed in, not a function to be called, and so needs to be in single quotes:
select define_function_args('samplenote__new','note_id,title,creation_date,creation_user,creation_ip,context_id');
Question for people: I omitted the object type, both in the __new function and in the wrapper for the __new function. My reason is that the object type is constant for the function samplenote__new. So there's no reason for it ever to be passed in, so I'll just hard-code it into the plpgsql. Is this okay or did I miss something?