search::object_datasource (public)

 search::object_datasource -object_id object_id

Defined in packages/search/tcl/search-procs.tcl

Obtains the datasource for an object by invoking the proper datasource and callbacks.

Switches:
-object_id (required)
Returns:
datasource as dict

Partial Call Graph (max 5 caller/called nodes):
test_object_utilities object_utilities (test search) search::object_datasource search::object_datasource test_object_utilities->search::object_datasource acs_object_type acs_object_type (public) search::object_datasource->acs_object_type acs_sc::invoke acs_sc::invoke (public) search::object_datasource->acs_sc::invoke callback callback (public) search::object_datasource->callback callback::impl_exists callback::impl_exists (public) search::object_datasource->callback::impl_exists search::searchable_type_p search::searchable_type_p (public) search::object_datasource->search::searchable_type_p packages/search/www/search.tcl packages/search/ www/search.tcl packages/search/www/search.tcl->search::object_datasource search::object_index search::object_index (public) search::object_index->search::object_datasource

Testcases:
object_utilities
Source code:
    set object_type [acs_object_type $object_id]
    if {![search::searchable_type_p -object_type $object_type]} {
        return
    }

    set d(object_id) $object_id

    array set d {
        title {}
        mime {}
        storage_type {}
        keywords {}
        package_id {}
        relevant_date {}
    }

    if {[callback::impl_exists -callback search::datasource -impl $object_type]} {
        array set d [lindex [callback  -impl $object_type  search::datasource  -object_id $object_id] 0]
    } else {
        array set d [acs_sc::invoke  -contract FtsContentProvider  -operation datasource  -call_args [list $object_id]  -impl $object_type]
    }

    return [array get d]
XQL Not present:
PostgreSQL
Generic XQL file:
packages/search/tcl/search-procs.xql

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

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