void agt_not_queue_notification_cb_unregister( const xmlChar *modname )
{
    assert( modname );

    agt_cb_queue_notification_set_t* cbSet = find_callback_set( modname );

    if ( cbSet )
    {
        dlq_remove( cbSet );
        free_callback_set( cbSet );
    }
}
Example #2
0
void agt_commit_complete_unregister( const xmlChar *modname )
{
    assert( modname );

    agt_cb_commit_complete_set_t* cbSet = find_callback_set( modname );

    if ( cbSet )
    {
        dlq_remove( cbSet );
        free_callback_set( cbSet );
    }
}
status_t agt_not_queue_notification_cb_register( const xmlChar *modname,
                                       agt_not_queue_notification_cb_t cb )
{
    assert( modname );

    agt_cb_queue_notification_set_t* cbSet = find_callback_set( modname );

    if ( !cbSet )
    {
        cbSet = new_callback_set( modname );
        if ( !cbSet )
        {
            return ERR_INTERNAL_MEM;
        }

        dlq_enque( cbSet, &callbackQ );
    }

    cbSet->callback = cb;
    return NO_ERR;
}