n_data 238 pengine/notif.c notify_data_t * n_data, pe_working_set_t * data_set) n_data 270 pengine/notif.c g_hash_table_foreach(n_data->keys, dup_attr, trigger->meta); n_data 282 pengine/notif.c pe_post_notify(resource_t * rsc, node_t * node, notify_data_t * n_data, pe_working_set_t * data_set) n_data 288 pengine/notif.c if (n_data->post == NULL) { n_data 292 pengine/notif.c notify = pe_notify(rsc, node, n_data->post, n_data->post_done, n_data, data_set); n_data 298 pengine/notif.c if (n_data->post_done) { n_data 313 pengine/notif.c order_actions(n_data->post_done, mon, pe_order_optional); n_data 332 pengine/notif.c notify_data_t *n_data = NULL; n_data 338 pengine/notif.c n_data = calloc(1, sizeof(notify_data_t)); n_data 339 pengine/notif.c n_data->action = action; n_data 340 pengine/notif.c n_data->keys = crm_str_table_new(); n_data 345 pengine/notif.c n_data->pre = n_data 349 pengine/notif.c update_action_flags(n_data->pre, pe_action_pseudo, __FUNCTION__, __LINE__); n_data 350 pengine/notif.c update_action_flags(n_data->pre, pe_action_runnable, __FUNCTION__, __LINE__); n_data 352 pengine/notif.c add_hash_param(n_data->pre->meta, "notify_type", "pre"); n_data 353 pengine/notif.c add_hash_param(n_data->pre->meta, "notify_operation", n_data->action); n_data 355 pengine/notif.c add_hash_param(n_data->pre->meta, "notify_key_type", "pre"); n_data 356 pengine/notif.c add_hash_param(n_data->pre->meta, "notify_key_operation", start->task); n_data 360 pengine/notif.c n_data->pre_done = n_data 364 pengine/notif.c update_action_flags(n_data->pre_done, pe_action_pseudo, __FUNCTION__, __LINE__); n_data 365 pengine/notif.c update_action_flags(n_data->pre_done, pe_action_runnable, __FUNCTION__, __LINE__); n_data 367 pengine/notif.c add_hash_param(n_data->pre_done->meta, "notify_type", "pre"); n_data 368 pengine/notif.c add_hash_param(n_data->pre_done->meta, "notify_operation", n_data->action); n_data 370 pengine/notif.c add_hash_param(n_data->pre_done->meta, "notify_key_type", "confirmed-pre"); n_data 371 pengine/notif.c add_hash_param(n_data->pre_done->meta, "notify_key_operation", start->task); n_data 373 pengine/notif.c order_actions(n_data->pre_done, start, pe_order_optional); n_data 374 pengine/notif.c order_actions(n_data->pre, n_data->pre_done, pe_order_optional); n_data 380 pengine/notif.c n_data->post = n_data 384 pengine/notif.c n_data->post->priority = INFINITY; n_data 385 pengine/notif.c update_action_flags(n_data->post, pe_action_pseudo, __FUNCTION__, __LINE__); n_data 387 pengine/notif.c update_action_flags(n_data->post, pe_action_runnable, __FUNCTION__, __LINE__); n_data 389 pengine/notif.c update_action_flags(n_data->post, pe_action_runnable | pe_action_clear, __FUNCTION__, __LINE__); n_data 392 pengine/notif.c add_hash_param(n_data->post->meta, "notify_type", "post"); n_data 393 pengine/notif.c add_hash_param(n_data->post->meta, "notify_operation", n_data->action); n_data 395 pengine/notif.c add_hash_param(n_data->post->meta, "notify_key_type", "post"); n_data 396 pengine/notif.c add_hash_param(n_data->post->meta, "notify_key_operation", end->task); n_data 400 pengine/notif.c n_data->post_done = n_data 404 pengine/notif.c n_data->post_done->priority = INFINITY; n_data 405 pengine/notif.c update_action_flags(n_data->post_done, pe_action_pseudo, __FUNCTION__, __LINE__); n_data 407 pengine/notif.c update_action_flags(n_data->post_done, pe_action_runnable, __FUNCTION__, __LINE__); n_data 409 pengine/notif.c update_action_flags(n_data->post_done, pe_action_runnable | pe_action_clear, __FUNCTION__, __LINE__); n_data 412 pengine/notif.c add_hash_param(n_data->post_done->meta, "notify_type", "post"); n_data 413 pengine/notif.c add_hash_param(n_data->post_done->meta, "notify_operation", n_data->action); n_data 415 pengine/notif.c add_hash_param(n_data->post_done->meta, "notify_key_type", "confirmed-post"); n_data 416 pengine/notif.c add_hash_param(n_data->post_done->meta, "notify_key_operation", end->task); n_data 418 pengine/notif.c order_actions(end, n_data->post, pe_order_implies_then); n_data 419 pengine/notif.c order_actions(n_data->post, n_data->post_done, pe_order_implies_then); n_data 423 pengine/notif.c order_actions(n_data->pre_done, n_data->post, pe_order_optional); n_data 429 pengine/notif.c order_actions(n_data->post_done, all_stopped, pe_order_optional); n_data 432 pengine/notif.c return n_data; n_data 437 pengine/notif.c notify_data_t * n_data) n_data 440 pengine/notif.c if(n_data->allowed_nodes == NULL) { n_data 441 pengine/notif.c n_data->allowed_nodes = rsc->allowed_nodes; n_data 450 pengine/notif.c collect_notification_data(child, state, activity, n_data); n_data 469 pengine/notif.c n_data->inactive = g_list_prepend(n_data->inactive, entry); n_data 472 pengine/notif.c n_data->active = g_list_prepend(n_data->active, entry); n_data 475 pengine/notif.c n_data->slave = g_list_prepend(n_data->slave, entry); n_data 476 pengine/notif.c n_data->active = g_list_prepend(n_data->active, n_data 480 pengine/notif.c n_data->master = g_list_prepend(n_data->master, entry); n_data 481 pengine/notif.c n_data->active = g_list_prepend(n_data->active, n_data 509 pengine/notif.c n_data->start = g_list_prepend(n_data->start, entry); n_data 512 pengine/notif.c n_data->stop = g_list_prepend(n_data->stop, entry); n_data 515 pengine/notif.c n_data->promote = g_list_prepend(n_data->promote, entry); n_data 518 pengine/notif.c n_data->demote = g_list_prepend(n_data->demote, entry); n_data 530 pengine/notif.c expand_notification_data(resource_t *rsc, notify_data_t * n_data, pe_working_set_t * data_set) n_data 542 pengine/notif.c if (n_data->stop) { n_data 543 pengine/notif.c n_data->stop = g_list_sort(n_data->stop, sort_notify_entries); n_data 545 pengine/notif.c expand_list(n_data->stop, &rsc_list, &node_list); n_data 547 pengine/notif.c if (safe_str_eq(n_data->action, RSC_STOP)) { n_data 551 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_stop_resource"), rsc_list); n_data 552 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_stop_uname"), node_list); n_data 554 pengine/notif.c if (n_data->start) { n_data 555 pengine/notif.c n_data->start = g_list_sort(n_data->start, sort_notify_entries); n_data 556 pengine/notif.c if (rsc_list && safe_str_eq(n_data->action, RSC_START)) { n_data 560 pengine/notif.c expand_list(n_data->start, &rsc_list, &node_list); n_data 561 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_start_resource"), rsc_list); n_data 562 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_start_uname"), node_list); n_data 564 pengine/notif.c if (n_data->demote) { n_data 565 pengine/notif.c n_data->demote = g_list_sort(n_data->demote, sort_notify_entries); n_data 566 pengine/notif.c if (safe_str_eq(n_data->action, RSC_DEMOTE)) { n_data 571 pengine/notif.c expand_list(n_data->demote, &rsc_list, &node_list); n_data 572 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_demote_resource"), rsc_list); n_data 573 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_demote_uname"), node_list); n_data 575 pengine/notif.c if (n_data->promote) { n_data 576 pengine/notif.c n_data->promote = g_list_sort(n_data->promote, sort_notify_entries); n_data 577 pengine/notif.c if (safe_str_eq(n_data->action, RSC_PROMOTE)) { n_data 581 pengine/notif.c expand_list(n_data->promote, &rsc_list, &node_list); n_data 582 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_promote_resource"), rsc_list); n_data 583 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_promote_uname"), node_list); n_data 585 pengine/notif.c if (n_data->active) { n_data 586 pengine/notif.c n_data->active = g_list_sort(n_data->active, sort_notify_entries); n_data 588 pengine/notif.c expand_list(n_data->active, &rsc_list, &node_list); n_data 589 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_active_resource"), rsc_list); n_data 590 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_active_uname"), node_list); n_data 592 pengine/notif.c if (n_data->slave) { n_data 593 pengine/notif.c n_data->slave = g_list_sort(n_data->slave, sort_notify_entries); n_data 595 pengine/notif.c expand_list(n_data->slave, &rsc_list, &node_list); n_data 596 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_slave_resource"), rsc_list); n_data 597 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_slave_uname"), node_list); n_data 599 pengine/notif.c if (n_data->master) { n_data 600 pengine/notif.c n_data->master = g_list_sort(n_data->master, sort_notify_entries); n_data 602 pengine/notif.c expand_list(n_data->master, &rsc_list, &node_list); n_data 603 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_master_resource"), rsc_list); n_data 604 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_master_uname"), node_list); n_data 606 pengine/notif.c if (n_data->inactive) { n_data 607 pengine/notif.c n_data->inactive = g_list_sort(n_data->inactive, sort_notify_entries); n_data 609 pengine/notif.c expand_list(n_data->inactive, &rsc_list, NULL); n_data 610 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_inactive_resource"), rsc_list); n_data 612 pengine/notif.c nodes = g_hash_table_get_values(n_data->allowed_nodes); n_data 614 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_available_uname"), node_list); n_data 620 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_all_hosts"), n_data 625 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_all_uname"), node_list); n_data 627 pengine/notif.c if (required && n_data->pre) { n_data 628 pengine/notif.c update_action_flags(n_data->pre, pe_action_optional | pe_action_clear, __FUNCTION__, __LINE__); n_data 629 pengine/notif.c update_action_flags(n_data->pre_done, pe_action_optional | pe_action_clear, __FUNCTION__, __LINE__); n_data 632 pengine/notif.c if (required && n_data->post) { n_data 633 pengine/notif.c update_action_flags(n_data->post, pe_action_optional | pe_action_clear, __FUNCTION__, __LINE__); n_data 634 pengine/notif.c update_action_flags(n_data->post_done, pe_action_optional | pe_action_clear, __FUNCTION__, __LINE__); n_data 640 pengine/notif.c create_notifications(resource_t * rsc, notify_data_t * n_data, pe_working_set_t * data_set) n_data 645 pengine/notif.c enum action_tasks task = text2task(n_data->action); n_data 652 pengine/notif.c create_notifications(child, n_data, data_set); n_data 671 pengine/notif.c g_hash_table_foreach(n_data->keys, dup_attr, op->meta); n_data 680 pengine/notif.c n_data->action, rsc->id, role2text(rsc->role), role2text(rsc->next_role)); n_data 702 pengine/notif.c pe_notify(rsc, current_node, n_data->pre, n_data->pre_done, n_data, data_set); n_data 705 pengine/notif.c pe_post_notify(rsc, current_node, n_data, data_set); n_data 719 pengine/notif.c pe_notify(rsc, rsc->allocated_to, n_data->pre, n_data->pre_done, n_data, data_set); n_data 721 pengine/notif.c pe_post_notify(rsc, rsc->allocated_to, n_data, data_set); n_data 727 pengine/notif.c free_notification_data(notify_data_t * n_data) n_data 729 pengine/notif.c if (n_data == NULL) { n_data 733 pengine/notif.c g_list_free_full(n_data->stop, free); n_data 734 pengine/notif.c g_list_free_full(n_data->start, free); n_data 735 pengine/notif.c g_list_free_full(n_data->demote, free); n_data 736 pengine/notif.c g_list_free_full(n_data->promote, free); n_data 737 pengine/notif.c g_list_free_full(n_data->master, free); n_data 738 pengine/notif.c g_list_free_full(n_data->slave, free); n_data 739 pengine/notif.c g_list_free_full(n_data->active, free); n_data 740 pengine/notif.c g_list_free_full(n_data->inactive, free); n_data 741 pengine/notif.c g_hash_table_destroy(n_data->keys); n_data 742 pengine/notif.c free(n_data); n_data 750 pengine/notif.c notify_data_t *n_data; n_data 753 pengine/notif.c n_data = create_notification_boundaries(rsc, RSC_STOP, NULL, stonith_op, n_data 755 pengine/notif.c collect_notification_data(rsc, TRUE, FALSE, n_data); n_data 756 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_stop_resource"), n_data 758 pengine/notif.c g_hash_table_insert(n_data->keys, strdup("notify_stop_uname"), n_data 760 pengine/notif.c create_notifications(uber_parent(rsc), n_data, data_set); n_data 761 pengine/notif.c free_notification_data(n_data); n_data 29 pengine/notif.h gboolean activity, notify_data_t *n_data); n_data 31 pengine/notif.h gboolean expand_notification_data(resource_t *rsc, notify_data_t *n_data, n_data 34 pengine/notif.h void create_notifications(resource_t *rsc, notify_data_t *n_data, n_data 37 pengine/notif.h void free_notification_data(notify_data_t *n_data);