module opendaylight-inmemory-datastore-provider { yang-version 1; namespace "urn:opendaylight:params:xml:ns:yang:controller:inmemory-datastore-provider"; prefix "inmemory-datastore-provider"; import config { prefix config; revision-date 2013-04-05; } import rpc-context { prefix rpcx; revision-date 2013-06-17; } import opendaylight-config-dom-datastore {prefix config-dom-store-spi;} import opendaylight-operational-dom-datastore {prefix operational-dom-store-spi;} import opendaylight-md-sal-dom {prefix sal;} description "InMemory datastore provider implementation for config & operational datastore"; revision "2014-06-17" { description "Initial revision."; } // This is the definition of the service implementation as a module identity. identity inmemory-config-datastore-provider { base config:module-type; config:provided-service config-dom-store-spi:config-dom-datastore; config:java-name-prefix InMemoryConfigDataStoreProvider; } // This is the definition of the service implementation as a module identity. identity inmemory-operational-datastore-provider { base config:module-type; config:provided-service operational-dom-store-spi:operational-dom-datastore; config:java-name-prefix InMemoryOperationalDataStoreProvider; } grouping datastore-configuration { leaf max-data-change-executor-queue-size { default 1000; type uint16; description "The maximum queue size for the data change notification executor."; } leaf max-data-change-executor-pool-size { default 20; type uint16; description "The maximum thread pool size for the data change notification executor."; } leaf max-data-change-listener-queue-size { default 1000; type uint16; description "The maximum queue size for the data change listeners."; } leaf max-data-store-executor-queue-size { default 5000; type uint16; description "The maximum queue size for the data store executor."; } leaf debug-transactions { type boolean; default false; description "Enable transaction lifecycle debugging."; } } // Augments the 'configuration' choice node under modules/module. augment "/config:modules/config:module/config:configuration" { case inmemory-config-datastore-provider { when "/config:modules/config:module/config:type = 'inmemory-config-datastore-provider'"; container inmemory-config-datastore-provider { container schema-service { uses config:service-ref { refine type { mandatory false; config:required-identity sal:schema-service; } } } uses datastore-configuration; } } } // Augments the 'configuration' choice node under modules/module. augment "/config:modules/config:module/config:configuration" { case inmemory-operational-datastore-provider { when "/config:modules/config:module/config:type = 'inmemory-operational-datastore-provider'"; container inmemory-operational-datastore-provider { container schema-service { uses config:service-ref { refine type { mandatory false; config:required-identity sal:schema-service; } } } uses datastore-configuration; } } } }