apm_mark_version_for_reload (public)

 apm_mark_version_for_reload version_id [ changed_files_var ]

Defined in packages/acs-tcl/tcl/apm-procs.tcl

Examines all tcl_procs files in package version $version_id; if any have changed since they were loaded, marks (in the apm_reload array) that they must be reloaded by each Tcl interpreter (using the apm_load_any_changed_libraries procedure).

Saves a list of files that have changed (and thus marked to be reloaded) in the variable named $file_info_var, if provided. Each element of this list is of the form:

[list $file_id $path]

Parameters:
version_id (required)
changed_files_var (optional)

Partial Call Graph (max 5 caller/called nodes):
%3 packages/acs-admin/www/apm/version-reload.tcl packages/acs-admin/ www/apm/version-reload.tcl apm_mark_version_for_reload apm_mark_version_for_reload packages/acs-admin/www/apm/version-reload.tcl->apm_mark_version_for_reload packages/acs-automated-testing/www/admin/record-test.tcl packages/acs-automated-testing/ www/admin/record-test.tcl packages/acs-automated-testing/www/admin/record-test.tcl->apm_mark_version_for_reload acs_package_root_dir acs_package_root_dir (public) apm_mark_version_for_reload->acs_package_root_dir apm_get_package_files apm_get_package_files (public) apm_mark_version_for_reload->apm_get_package_files apm_load_tests_p apm_load_tests_p (public) apm_mark_version_for_reload->apm_load_tests_p apm_mark_files_for_reload apm_mark_files_for_reload (public) apm_mark_version_for_reload->apm_mark_files_for_reload apm_package_key_from_version_id apm_package_key_from_version_id (public) apm_mark_version_for_reload->apm_package_key_from_version_id

Testcases:
No testcase defined.
Source code:
    if { $changed_files_var ne "" } {
        upvar $changed_files_var changed_files
    }
    set package_key [apm_package_key_from_version_id $version_id]
    #ns_log notice "apm_mark_version_for_reload $package_key version_id $version_id"
    set changed_files [list]

    set file_types [list tcl_procs query_file]
    if { [apm_load_tests_p] } {
        lappend file_types test_procs
    }

    foreach path [apm_get_package_files -package_key $package_key -file_types $file_types] {
        set full_path "[acs_package_root_dir $package_key]/$path"
        set relative_path "packages/$package_key/$path"

        set reload_file [apm_mark_files_for_reload $relative_path]
        if { [llength $reload_file] > 0 } {
            # The file marked for reload
            lappend changed_files $relative_path
        }
    }
    return $changed_files
Generic XQL file:
packages/acs-tcl/tcl/apm-procs.xql

PostgreSQL XQL file:
packages/acs-tcl/tcl/apm-procs-postgresql.xql

Oracle XQL file:
packages/acs-tcl/tcl/apm-procs-oracle.xql

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