acs_sc::contract::operation::new (public)

 acs_sc::contract::operation::new -contract_name contract_name \
    -operation operation -input input -output output \
    -description description [ -is_cachable_p is_cachable_p ]

Defined in packages/acs-service-contract/tcl/contract-procs.tcl

Call the service contract function to create the operation in the database.

Switches:
-contract_name (required)
-operation (required)
-input (required)
-output (required)
-description (required)
-is_cachable_p (optional)

Partial Call Graph (max 5 caller/called nodes):
%3 test_acs_sc_impl_new_from_spec acs_sc_impl_new_from_spec (test acs-service-contract) acs_sc::contract::operation::new acs_sc::contract::operation::new test_acs_sc_impl_new_from_spec->acs_sc::contract::operation::new acs_sc::msg_type::parse_spec acs_sc::msg_type::parse_spec (private) acs_sc::contract::operation::new->acs_sc::msg_type::parse_spec db_exec_plsql db_exec_plsql (public) acs_sc::contract::operation::new->db_exec_plsql db_transaction db_transaction (public) acs_sc::contract::operation::new->db_transaction acs_sc::contract::operation::parse_spec acs_sc::contract::operation::parse_spec (private) acs_sc::contract::operation::parse_spec->acs_sc::contract::operation::new auth::after_upgrade auth::after_upgrade (private) auth::after_upgrade->acs_sc::contract::operation::new

Testcases:
acs_sc_impl_new_from_spec
Source code:
    db_transaction {
        # Create the input type

        set input_type_name "${contract_name}.${operation}.InputType"

        set nargs [acs_sc::msg_type::parse_spec  -name $input_type_name  -spec $input]

        # Create the output type

        set output_type_name "${contract_name}.${operation}.OutputType"

        acs_sc::msg_type::parse_spec  -name $output_type_name  -spec $output

        # Create the operation

        db_exec_plsql insert_operation {}
    }
XQL Not present:
Generic
PostgreSQL XQL file:
<fullquery name="acs_sc::contract::operation::new.insert_operation">
    <querytext>
        select acs_sc_operation__new(
            :contract_name,
            :operation, 
            :description, 
            :is_cachable_p, 
            :nargs, 
            :input_type_name, 
            :output_type_name
        ); 	
    </querytext>
</fullquery>
packages/acs-service-contract/tcl/contract-procs-postgresql.xql

Oracle XQL file:
<fullquery name="acs_sc::contract::operation::new.insert_operation">
    <querytext>
        begin
            :1 := acs_sc_operation.new(
                :contract_name,
                :operation, 
                :description, 
                :is_cachable_p, 
                :nargs, 
                :input_type_name, 
                :output_type_name
            );
        end;
    </querytext>
</fullquery>
packages/acs-service-contract/tcl/contract-procs-oracle.xql

[ hide source ] | [ make this the default ]
Show another procedure: