libamxs  0.6.0
Data Model Synchronization C API
amxs_priv.h File Reference
#include <amxc/amxc_macros.h>

Go to the source code of this file.

Functions

amxs_status_t amxs_validate_attributes (int parent_attr, int child_attr)
 
amxs_status_t amxs_update_child_attributes (int parent_attr, int *child_attr)
 
void amxs_llist_it_delete_subscription (amxc_llist_it_t *it)
 

Function Documentation

◆ amxs_llist_it_delete_subscription()

void amxs_llist_it_delete_subscription ( amxc_llist_it_t *  it)

Definition at line 140 of file amxs_common.c.

140  {
141  amxb_subscription_t* sub = amxc_container_of(it, amxb_subscription_t, it);
142 
143  amxb_subscription_delete(&sub);
144 }

◆ amxs_update_child_attributes()

amxs_status_t amxs_update_child_attributes ( int  parent_attr,
int *  child_attr 
)

Definition at line 124 of file amxs_common.c.

124  {
126  when_null(child_attr, exit);
127 
128  *child_attr |= (parent_attr & (AMXS_SYNC_ONLY_A_TO_B | AMXS_SYNC_ONLY_B_TO_A));
129 
130  if((*child_attr & AMXS_SYNC_ONLY_B_TO_A) != 0) {
131  *child_attr |= AMXS_SYNC_INIT_B;
132  }
133 
134  status = amxs_status_ok;
135 
136 exit:
137  return status;
138 }
@ amxs_status_ok
Definition: amxs_types.h:86
@ amxs_status_invalid_attr
Definition: amxs_types.h:88
enum _amxs_status amxs_status_t
#define AMXS_SYNC_INIT_B
Take the initial values from object B.
Definition: amxs_types.h:205
#define AMXS_SYNC_ONLY_B_TO_A
Only synchronize from object B to object A.
Definition: amxs_types.h:195
#define AMXS_SYNC_ONLY_A_TO_B
Only synchronize from object A to object B.
Definition: amxs_types.h:200

◆ amxs_validate_attributes()

amxs_status_t amxs_validate_attributes ( int  parent_attr,
int  child_attr 
)

Definition at line 111 of file amxs_common.c.

111  {
113 
114  when_failed(amxs_validate_attributes_single(parent_attr), exit);
115  when_failed(amxs_validate_attributes_single(child_attr), exit);
116  when_failed(amxs_validate_attributes_hierarchy(parent_attr, child_attr), exit);
117 
118  status = amxs_status_ok;
119 
120 exit:
121  return status;
122 }
static int amxs_validate_attributes_single(int attr)
Definition: amxs_common.c:68
static int amxs_validate_attributes_hierarchy(int parent_attr, int child_attr)
Definition: amxs_common.c:92