yumapro  23.10T-7
YumaPro SDK
Loading...
Searching...
No Matches

struct of params to undo an edit operation. More...

#include <agt_cfg.h>

Collaboration diagram for agt_cfg_undo_rec_t:

Data Fields

dlq_hdr_t qhdr
 queue header
 
boolean free_curnode
 need to free curnode
 
boolean is_sil_force_replay
 nthis is a SIL force replay transaction
 
boolean edit2_merge
 this is EDIT2 merge so child edits needed
 
boolean in_reverse_edit
 reverse edit active
 
boolean when_force_delete
 when-stmt force delete flag
 
boolean skip_sil_partial
 skip SIL partial mode
 
boolean parent_is_edit2_merge
 tells if the undo is in the child_undoQ and its parent is in EDIT2 mode
 
boolean added_edit
 Add_edit API flag.
 
boolean skip_cb
 used by add_edit only
 
boolean is_insert
 insert or move
 
boolean is_autodelete
 undo is from an auto-delete (other-case or false-when) must not try to replace with defaults if true
 
op_editop_t editop
 edit operation
 
op_editop_t cvtop
 converted edit operation
 
agt_cfg_edit_action_t edit_action
 internal edit action
 
val_value_tnewnode
 new node in edit
 
val_value_tnewnode_marker
 newnode marker if swapped out
 
val_value_tnewnode_parent
 newnode parent node
 
val_value_tcurnode
 current node in edit
 
val_value_tcurnode_marker
 curnode marker if swapped out
 
val_value_tcurnode_clone
 clone of current node before it changes
 
val_value_tchild_undo_curnode_clone
 clone of child node
 
val_value_tparentnode
 parent node of edit node
 
agt_cfg_nested_silcall_tcur_silcall
 current SIL call control block pointer
 
val_editvars_tnewnode_editvars
 need to save the newnode->editvars for YP-HA and later YANG Push so the insert operation will not be lost This is pulled from the newnode instead of cleaning it in commit phase.
 
xmlChar * save_path
 if YP-HA Active mode then this path string will be saved so the correct path will be used in YANG Patch updates. More...
 
dlq_hdr_t extra_deleteQ
 extra deletes can occur if a node is added that is part of a choice. More...
 
dlq_hdr_t nested_silcallQ
 nested silcalls can occur if an edit is created for a node with nested SIL callbacks, such as nested lists, containers, or choices A nested_silcall is maintained for each callback done on behalf of this undo_rec. More...
 
dlq_hdr_t child_undoQ
 child undo recs can occur in edit2 mode if an existing entry is modified with a merge operation Instead of an undo record for each child node edit, a nested_undo record is created and saved in the child_undoQ of the undo_rec for the parent of the nodes in the child_undoQ More...
 
status_t validate_res
 validate phase status
 
status_t apply_res
 apply phase status
 
status_t sil_apply_res
 SIL apply phase status.
 
status_t commit_res
 commit phase status
 
status_t rollback_res
 rollback phase status
 
boolean subsys_add_edit
 add_edit mode form subsystem
 
struct agt_cfg_undo_rec_t_ * orig_rev_undo
 back pointer to original undo for reverse edit
 

Detailed Description

struct of params to undo an edit operation.

The actual nodes used depend on the edit operation value

  For AGT_CFG_EDIT_ACTION_ADD:  (newnode already in target tree)
    newnode == node in target being added
    curnode == NULL
    parentnode == newnode->parent
  For AGT_CFG_EDIT_ACTION_SET: (newnode not yet in target tree)
    newnode == node in PDU that has the new value tree
    curnode == node in target that has the current value tree
    parentnode == curnode->parent
  For AGT_CFG_EDIT_ACTION_DELETE:
    newnode == node in PDU that has the delete request
    curnode == node in target that is being deleted
    parentnode == curnode->parent

Field Documentation

◆ child_undoQ

dlq_hdr_t child_undoQ

child undo recs can occur in edit2 mode if an existing entry is modified with a merge operation Instead of an undo record for each child node edit, a nested_undo record is created and saved in the child_undoQ of the undo_rec for the parent of the nodes in the child_undoQ

Currently not supported by SIL-SA!! Q of agt_cfg_undo_rec_t

◆ extra_deleteQ

dlq_hdr_t extra_deleteQ

extra deletes can occur if a node is added that is part of a choice.

e.g., if case A is active and an edit that creates nodes in case B, then the nodes from case A will automatically get staged for deletion using the extra_deleteQ Q of ncx_backptr to val_value_t

◆ nested_silcallQ

dlq_hdr_t nested_silcallQ

nested silcalls can occur if an edit is created for a node with nested SIL callbacks, such as nested lists, containers, or choices A nested_silcall is maintained for each callback done on behalf of this undo_rec.

Tracks only SIL callbacks, not SIL-SA callbacks; used only for rollback of the undo record if the transaction fails Q of agt_cfg_nested_silcall_t

◆ save_path

xmlChar* save_path

if YP-HA Active mode then this path string will be saved so the correct path will be used in YANG Patch updates.

Delete operations cause the path to be incorrect if generated after the edit is completed


The documentation for this struct was generated from the following file: