Index: openacs-4/packages/new-portal/sql/oracle/datasource-sc-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/sql/oracle/datasource-sc-create.sql,v diff -u -r1.5 -r1.6 --- openacs-4/packages/new-portal/sql/oracle/datasource-sc-create.sql 29 Mar 2002 18:48:28 -0000 1.5 +++ openacs-4/packages/new-portal/sql/oracle/datasource-sc-create.sql 9 May 2002 04:04:05 -0000 1.6 @@ -15,295 +15,174 @@ -- -- The data source (portlet) contract --- copyright 2001, OpenForce, Inc. --- distributed under the GNU GPL v2 +-- -- --- for Oracle 8/8i. (We're guessing 9i works, too). -- -- arjun@openforce.net -- started November, 2001 -- -- $Id$ declare - sc_dotlrn_contract integer; - foo integer; + sc_dotlrn_contract integer; + foo integer; begin - sc_dotlrn_contract := acs_sc_contract.new ( - contract_name => 'portal_datasource', - contract_desc => 'Portal Datasource interface' - ); + sc_dotlrn_contract := acs_sc_contract.new ( + contract_name => 'portal_datasource', + contract_desc => 'Portal Datasource interface' + ); + + -- Get my name - not to be confused with the pretty_name + foo := acs_sc_msg_type.new ( + msg_type_name => 'portal_datasource.GetMyName.InputType', + msg_type_spec => '' + ); + + foo := acs_sc_msg_type.new ( + msg_type_name => 'portal_datasource.GetMyName.OutputType', + msg_type_spec => 'my_name:string' + ); + + foo := acs_sc_operation.new ( + 'portal_datasource', + 'GetMyName', + 'Get the name', + 't', -- not cacheable + 0, -- n_args + 'portal_datasource.GetMyName.InputType', + 'portal_datasource.GetMyName.OutputType' + ); + + -- Get a pretty name + foo := acs_sc_msg_type.new ( + msg_type_name => 'portal_datasource.GetPrettyName.InputType', + msg_type_spec => '' + ); + + foo := acs_sc_msg_type.new ( + msg_type_name => 'portal_datasource.GetPrettyName.OutputType', + msg_type_spec => 'pretty_name:string' + ); + + foo := acs_sc_operation.new ( + 'portal_datasource', + 'GetPrettyName', + 'Get the pretty name', + 't', -- not cacheable + 0, -- n_args + 'portal_datasource.GetPrettyName.InputType', + 'portal_datasource.GetPrettyName.OutputType' + ); + + -- Link: Where is the href target for this PE? + -- ** not currently implimented *** + foo := acs_sc_msg_type.new ( + msg_type_name => 'portal_datasource.Link.InputType', + msg_type_spec => '' + ); + + foo := acs_sc_msg_type.new ( + msg_type_name => 'portal_datasource.Link.OutputType', + msg_type_spec => 'pretty_name:string' + ); + + foo := acs_sc_operation.new ( + 'portal_datasource', + 'Link', + 'Get the link ie the href target for this datasource', + 't', -- not cacheable + 0, -- n_args + 'portal_datasource.Link.InputType', + 'portal_datasource.Link.OutputType' + ); - -- Get my name - not to be confused with the pretty_name - foo := acs_sc_msg_type.new ( - msg_type_name => 'portal_datasource.MyName.InputType', - msg_type_spec => '' - ); + -- AddSelfToPage: Tell the datasource to add itself to a portal + -- The "args" string is an ns_set of extra arguments + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.AddSelfToPage.InputType', + msg_type_spec => 'page_id:integer,args:string' + ); + + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.AddSelfToPage.OutputType', + msg_type_spec => 'element_id:integer' + ); + + foo := acs_sc_operation.new ( + 'portal_datasource', + 'AddSelfToPage', + 'Adds itself to the given page returns an element_id', + 'f', -- not cacheable + 2, -- n_args + 'portal_datasource.AddSelfToPage.InputType', + 'portal_datasource.AddSelfToPage.OutputType' + ); - foo := acs_sc_msg_type.new ( - msg_type_name => 'portal_datasource.MyName.OutputType', - msg_type_spec => 'my_name:string' - ); + -- RemoveSelfFromPage: Tell the PE to remove itself from a page + -- The "args" string is an ns_set of extra arguments + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.RemoveSelfFromPage.InputType', + msg_type_spec => 'page_id:integer,args:string' + ); + + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.RemoveSelfFromPage.OutputType', + msg_type_spec => '' + ); + + foo := acs_sc_operation.new ( + 'portal_datasource', + 'RemoveSelfFromPage', + ' remove itself from the given page', + 'f', -- not cacheable + 2, -- n_args + 'portal_datasource.RemoveSelfFromPage.InputType', + 'portal_datasource.RemoveSelfFromPage.OutputType' + ); - foo := acs_sc_operation.new ( - 'portal_datasource', - 'MyName', - 'Get the name', - 't', -- not cacheable - 0, -- n_args - 'portal_datasource.MyName.InputType', - 'portal_datasource.MyName.OutputType' - ); + -- Show: the portal element's display proc + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.Show.InputType', + msg_type_spec => 'cf:string' + ); + + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.Show.OutputType', + msg_type_spec => 'output:string' + ); + + foo := acs_sc_operation.new ( + 'portal_datasource', + 'Show', + 'Render the portal element returning a chunk of HTML', + 'f', -- not cacheable + 1, -- n_args + 'portal_datasource.Show.InputType', + 'portal_datasource.Show.OutputType' + ); + -- Edit: the datasources' edit html + -- ** not currently implimented ** + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.Edit.InputType', + msg_type_spec => 'element_id:integer' + ); + + foo := acs_sc_msg_type.new( + msg_type_name => 'portal_datasource.Edit.OutputType', + msg_type_spec => 'output:string' + ); + + foo := acs_sc_operation.new ( + 'portal_datasource', + 'Edit', + 'Returns the edit html', + 'f', -- not cacheable + 1, -- n_args + 'portal_datasource.Edit.InputType', + 'portal_datasource.Edit.OutputType' + ); end; / show errors - -declare - sc_dotlrn_contract integer; - foo integer; -begin - - -- Get a pretty name - foo := acs_sc_msg_type.new ( - msg_type_name => 'portal_datasource.GetPrettyName.InputType', - msg_type_spec => '' - ); - - foo := acs_sc_msg_type.new ( - msg_type_name => 'portal_datasource.GetPrettyName.OutputType', - msg_type_spec => 'pretty_name:string' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'GetPrettyName', - 'Get the pretty name', - 't', -- not cacheable - 0, -- n_args - 'portal_datasource.GetPrettyName.InputType', - 'portal_datasource.GetPrettyName.OutputType' - ); - - -end; -/ -show errors - -declare - sc_dotlrn_contract integer; - foo integer; -begin - - -- Link: Where is the href target for this PE? - foo := acs_sc_msg_type.new ( - msg_type_name => 'portal_datasource.Link.InputType', - msg_type_spec => '' - ); - - foo := acs_sc_msg_type.new ( - msg_type_name => 'portal_datasource.Link.OutputType', - msg_type_spec => 'pretty_name:string' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'Link', - 'Get the link ie the href target for this datasource', - 't', -- not cacheable - 0, -- n_args - 'portal_datasource.Link.InputType', - 'portal_datasource.Link.OutputType' - ); - - -end; -/ -show errors - - -declare - sc_dotlrn_contract integer; - foo integer; -begin - -- Tell the datasource to add itself to a portal page - -- add_self_to_page - -- The "args" string is an ns_set of extra arguments - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.AddSelfToPage.InputType', - msg_type_spec => 'page_id:integer,instance_id:integer,args:string' - ); - - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.AddSelfToPage.OutputType', - msg_type_spec => 'element_id:integer' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'AddSelfToPage', - 'Adds itself to the given page returns an element_id', - 'f', -- not cacheable - 3, -- n_args - 'portal_datasource.AddSelfToPage.InputType', - 'portal_datasource.AddSelfToPage.OutputType' - ); - -end; -/ -show errors - -declare - sc_dotlrn_contract integer; - foo integer; -begin - - -- Edit: the datasources' edit html - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.Edit.InputType', - msg_type_spec => 'element_id:integer' - ); - - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.Edit.OutputType', - msg_type_spec => 'output:string' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'Edit', - 'Returns the edit html', - 'f', -- not cacheable - 1, -- n_args - 'portal_datasource.Edit.InputType', - 'portal_datasource.Edit.OutputType' - ); - - -end; -/ -show errors - -declare - sc_dotlrn_contract integer; - foo integer; -begin - - -- Show: the portal element's display proc - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.Show.InputType', - msg_type_spec => 'cf:string' - ); - - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.Show.OutputType', - msg_type_spec => 'output:string' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'Show', - 'Render the portal element returning a chunk of HTML', - 'f', -- not cacheable - 1, -- n_args - 'portal_datasource.Show.InputType', - 'portal_datasource.Show.OutputType' - ); - - -end; -/ -show errors - -declare - sc_dotlrn_contract integer; - foo integer; -begin - -- Tell the PE to remove itself from a page - -- remove_self_from_page - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.RemoveSelfFromPage.InputType', - msg_type_spec => 'page_id:integer,instance_id:integer' - ); - - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.RemoveSelfFromPage.OutputType', - msg_type_spec => '' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'RemoveSelfFromPage', - ' remove itself from the given page', - 'f', -- not cacheable - 2, -- n_args - 'portal_datasource.RemoveSelfFromPage.InputType', - 'portal_datasource.RemoveSelfFromPage.OutputType' - ); - - -end; -/ -show errors - -declare - sc_dotlrn_contract integer; - foo integer; -begin - - -- Make self available - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.MakeSelfAvailable.InputType', - msg_type_spec => 'portal_id:integer' - ); - - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.MakeSelfAvailable.OutputType', - msg_type_spec => '' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'MakeSelfAvailable', - 'Makes this PE available to this portal page', - 'f', -- not cacheable - 1, -- n_args - 'portal_datasource.MakeSelfAvailable.InputType', - 'portal_datasource.MakeSelfAvailable.OutputType' - ); - -end; -/ -show errors - - -declare - sc_dotlrn_contract integer; - foo integer; -begin - - -- Make self unavailable - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.MakeSelfUnavailable.InputType', - msg_type_spec => 'portal_id:integer' - ); - - foo := acs_sc_msg_type.new( - msg_type_name => 'portal_datasource.MakeSelfUnavailable.OutputType', - msg_type_spec => '' - ); - - foo := acs_sc_operation.new ( - 'portal_datasource', - 'MakeSelfUnavailable', - 'Makes this PE UNavailable to this portal page', - 'f', -- not cacheable - 1, -- n_args - 'portal_datasource.MakeSelfUnavailable.InputType', - 'portal_datasource.MakeSelfUnavailable.OutputType' - ); - -end; -/ -show errors