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

Compare with Current View Page History

« Previous Version 14 Current »

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 sync-state {
     type string;
   }
   leaf last-sync-time {
     type string;
   }
  }

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

  container dmi-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 cm-handle-state {
          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">
  <dmi-registry 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>
      <state>
        <cm-handle-state/>
        <lock-reason>
          <reason/>
          <details/>
        </lock-reason>
        <last-update-time/>
        <data-sync-enabled>false</data-sync-enabled>
        <data-stores>
          <operational>
            <sync-state/>
            <last-sync-time/>
          </operational>
          <running>
            <sync-state/>
            <last-sync-time/>
          </running>
        </data-stores>
      </state>
    </cm-handles>
  </dmi-registry>
</data>
Generate sample json object
{
  "dmi-registry": {
    "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
      },
      "state": {
        "cm-handle-state": null,
        "lock-reason": {
          "reason": null,
          "details": null
        },
        "last-update-time": null,
        "data-sync-enabled": "false",
        "data-stores": {
          "operational": {
            "sync-state": null,
            "last-sync-time": null
          },
          "running": {
            "sync-state": null,
            "last-sync-time": null
          }
        }
      }
    }
  }
}
  • No labels