You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

CPS-1014 - Getting issue details... STATUS

Introduce new attributes in the DMI Registry yang model as defined here.

The updated yang model with DataStoreSyncState is shown below,

Proposed yang model
module dmi-registry {

  yang-version 1.1;

  namespace "org:onap:cps:ncmp";

  prefix dmi-reg;

  contact "toine.siebelink@est.tech";

  revision "2022-05-10" {
    description
    "Added DataSyncEnabled, SyncState with State, LastSyncTime, DataStoreSyncState with Operational and Running syncstate";
  }

  revision "2022-02-10" {
    description
    "Added State, LockReason, LockReasonDetails to aid with cmHandle sync and timestamp to aid with retry/timeout scenarios";
  }

  revision "2021-12-13" {
    description
    "Added new list of public additional properties for a Cm-Handle which are exposed to clients of the NCMP interface";
  }

  revision "2021-10-20" {
    description
    "Added dmi-data-service-name & dmi-model-service-name to allow separate DMI instances for each responsibility";
  }

  revision "2021-05-20" {
    description
    "Initial Version";
  }

  grouping LockReason {
    leaf reason {
      type string;
    }
    leaf details {
      type string;
    }
  }

  grouping SyncState {
   leaf syncState {
     type string;
   }
   leaf last-sync-time {
     type string;
   }
  }

  grouping DataStores {
    container operational {
      uses SyncState;
    }
    container running {
      uses SyncState;
    }
  }

  container-registry {
    list cm-handles {
      key "id";
      leaf id {
        type string;
      }
      leaf dmi-service-name {
        type string;
      }
      leaf dmi-data-service-name {
        type string;
      }
      leaf dmi-model-service-name {
        type string;
      }

      list additional-properties {
        key "name";
        leaf name {
          type string;
        }
        leaf value {
          type string;
        }
      }

      list public-properties {
        key "name";
        leaf name {
          type string;
        }
        leaf value {
          type string;
        }
      }

      container state {
        leaf cmHandleState {
          type string;
        }

        container lock-reason {
          uses LockReason;
        }

        leaf last-update-time {
          type string;
       }

       leaf data-sync-enabled {
          type boolean;
          default "false";
        }

        container data-stores {
          uses DataStores;
        }
    }
  }
}



Generated sample xml object
<?xml version='1.0' encoding='UTF-8'?>
<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
  <state xmlns="org:onap:cps:ncmp">
    <cm-handles>
      <id/>
      <dmi-service-name/>
      <dmi-data-service-name/>
      <dmi-model-service-name/>
      <additional-properties>
        <name/>
        <value/>
      </additional-properties>
      <public-properties>
        <name/>
        <value/>
      </public-properties>
      <cmHandleState/>
      <lock-reason>
        <reason/>
        <details/>
      </lock-reason>
      <last-update-time/>
      <data-sync-enabled>false</data-sync-enabled>
      <data-sync-state>
        <operational>
          <syncState/>
          <last-sync-time/>
        </operational>
        <running>
          <syncState/>
          <last-sync-time/>
        </running>
      </data-sync-state>
    </cm-handles>
  </state>
</data>
Generate sample json object
{
  "state": {
    "cm-handles": {
      "id": null,
      "dmi-service-name": null,
      "dmi-data-service-name": null,
      "dmi-model-service-name": null,
      "additional-properties": {
        "name": null,
        "value": null
      },
      "public-properties": {
        "name": null,
        "value": null
      },
      "cmHandleState": null,
      "lock-reason": {
        "reason": null,
        "details": null
      },
      "last-update-time": null,
      "data-sync-enabled": "false",
      "data-sync-state": {
        "operational": {
          "syncState": null,
          "last-sync-time": null
        },
        "running": {
          "syncState": null,
          "last-sync-time": null
        }
      }
    }
  }
}
  • No labels