acs_sc::impl::binding::init_procs (private)
acs_sc::impl::binding::init_procs -impl_id impl_id
Defined in packages/acs-service-contract/tcl/implementation-procs.tcl
Initialize the procs so we can call the service contract. Note that this proc doesn't really work, because it doesn't initialize the aliases in all interpreters, only in one.
- Switches:
- -impl_id (required)
- Partial Call Graph (max 5 caller/called nodes):
- Testcases:
- No testcase defined.
Source code: # LARS: # This is a hack to get around the problem with multiple interpreters: # We ask the APM to reload the acs-service-contract-init file, which will # redefine the service contract wrapper procs set file "/packages/acs-service-contract/tcl/acs-service-contract-init.tcl" apm_mark_files_for_reload -force_reload [list $file] return #---------------------------------------------------------------------- # NOTE: End of actual proc above this line. Stale code below #---------------------------------------------------------------------- # LARS: # This is the left-over stuff, which we could one day resurrect if we # decide to implement an apm_eval feature, which can eval chunks of code # in each interpreter. Then we could just say # apm_eval "acs_sc::impl::binding::init_procs_internal -impl_id $impl_id" # Get the list of aliases db_foreach impl_operation { select impl_contract_name, impl_operation_name, impl_name from acs_sc_impl_aliases where impl_id = :impl_id } -column_array row { lappend rows [array get row] } # Register them # Hm. We need to do this in all interpreters foreach row_list $rows { array set row $row_list acs_sc_proc $row(impl_contract_name) $row(impl_operation_name) $row(impl_name) }Generic XQL file: packages/acs-service-contract/tcl/implementation-procs.xql
PostgreSQL XQL file: packages/acs-service-contract/tcl/implementation-procs-postgresql.xql
Oracle XQL file: packages/acs-service-contract/tcl/implementation-procs-oracle.xql