LCOV - code coverage report
Current view: top level - ifmap - ifmap_node_proxy.cc (source / functions) Hit Total Coverage
Test: OpenSDN C/C++ coverage (all TARGET_SET jobs) Lines: 24 29 82.8 %
Date: 2026-11-09 02:10:49 Functions: 6 7 85.7 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*
       2             :  * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved.
       3             :  * Copyright Contributors to the OpenSDN project
       4             :  */
       5             : 
       6             : #include "ifmap/ifmap_node_proxy.h"
       7             : 
       8             : #include "ifmap/ifmap_node.h"
       9             : #include "ifmap/ifmap_table.h"
      10             : 
      11             : using namespace std;
      12             : 
      13       63835 : IFMapNodeProxy::IFMapNodeProxy()
      14       63835 :     : node_(NULL), id_(DBTable::kInvalidId) {
      15       63835 : }
      16             : 
      17           0 : IFMapNodeProxy::IFMapNodeProxy(IFMapNodeProxy *rhs)
      18           0 :     : node_(NULL), id_(DBTable::kInvalidId) {
      19           0 :     Swap(rhs);
      20           0 : }
      21             : 
      22       92983 : IFMapNodeProxy::IFMapNodeProxy(IFMapNode *node, DBTable::ListenerId lid)
      23       92983 :     : node_(node), id_(lid) {
      24       92983 :     node_->SetState(node_->table(), id_, this);
      25       92983 : }
      26             : 
      27      249801 : IFMapNodeProxy::~IFMapNodeProxy() {
      28      156818 :     if (node_ != NULL) {
      29       81297 :         node_->ClearState(node_->table(), id_);
      30             :     }
      31      249801 : }
      32             : 
      33       58949 : void IFMapNodeProxy::Swap(IFMapNodeProxy *rhs) {
      34       58949 :     swap(node_, rhs->node_);
      35       58949 :     swap(id_, rhs->id_);
      36       58949 :     if (node_ != NULL) {
      37       58949 :         node_->SetState(node_->table(), id_, this);
      38             :     }
      39       58949 :     if (rhs->node_ != NULL) {
      40           0 :         rhs->node_->SetState(rhs->node_->table(), rhs->id_, rhs);
      41             :     }
      42       58949 : }
      43             : 
      44       11686 : void IFMapNodeProxy::Clear() {
      45       11686 :     if (node_ != NULL) {
      46       11686 :         node_->ClearState(node_->table(), id_);
      47       11686 :         node_ = NULL;
      48       11686 :         id_ = DBTable::kInvalidId;
      49             :     }
      50       11686 : }

Generated by: LCOV version 1.14