notification::type::delete (public)

 notification::type::delete -short_name short_name

Defined in packages/notifications/tcl/notification-type-procs.tcl

Remove a notification type. This is very rare.

Switches:
-short_name
(required)

Partial Call Graph (max 5 caller/called nodes):
%3 faq::apm_callback::package_uninstall faq::apm_callback::package_uninstall (private) notification::type::delete notification::type::delete faq::apm_callback::package_uninstall->notification::type::delete forum::install::delete_notification_types forum::install::delete_notification_types (private) forum::install::delete_notification_types->notification::type::delete workflow::install::unregister_notification_types workflow::install::unregister_notification_types (public) workflow::install::unregister_notification_types->notification::type::delete xowiki::notifications-uninstall xowiki::notifications-uninstall (private) xowiki::notifications-uninstall->notification::type::delete db_exec_plsql db_exec_plsql (public) notification::type::delete->db_exec_plsql notification::type::get_type_id_not_cached notification::type::get_type_id_not_cached (private) notification::type::delete->notification::type::get_type_id_not_cached util_memoize_flush util_memoize_flush (public) notification::type::delete->util_memoize_flush

Testcases:
No testcase defined.
Source code:
        set type_id [notification::type::get_type_id_not_cached $short_name]

        db_exec_plsql delete_notification_type {}

        #
        # TODO: currently, the util_memoize_flush below does nothing
        # (we need in these rare cases a restart of the server to get
        # rid of the old cache entry - one can get still a
        # notification type id from the cache, although it is removed
        # from the db). The right thing would be a broadcast operation
        # for flushing (similar to xo*) or a blueprint epoch/refetch
        # (as under consideration for better live updates on the
        # OpenACS wish-list).
        #
        util_memoize_flush [list notification::type::get_type_id_not_cached $short_name]
Generic XQL file:
packages/notifications/tcl/notification-type-procs.xql

PostgreSQL XQL file:
<fullquery name="notification::type::delete.delete_notification_type">
    <querytext>
            select notification_type__delete(:type_id)
        </querytext>
</fullquery>
packages/notifications/tcl/notification-type-procs-postgresql.xql

Oracle XQL file:
<fullquery name="notification::type::delete.delete_notification_type">
    <querytext>
          begin
            notification_type.del(:type_id);
          end;
        </querytext>
</fullquery>
packages/notifications/tcl/notification-type-procs-oracle.xql

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