registro
10 min
el objeto registro le permite leer y escribir en el registro del reproductor (es decir, la memoria persistente) el registro consta de secciones de registro con nombre, y cada sección de registro contiene entradas (pares clave/valor) idl de registry interface registry { promise\<string> read(string sectionname, string key); promise\<registrysection> read(string sectionname); promise\<registryobject> read(); promise\<void> write(string sectionname, string key, string value); promise\<void> write(string sectionname, registrysection section); promise\<void> write(registryobject); promise\<void> flush(); }; creación de objetos para crear un objeto registro , primero cargue el módulo brightsign/registry usando el método require() luego cree una instancia de la clase registro var registryclass = require("@brightsign/registry"); var registry = new registryclass(); registro utilice esta interfaz para operaciones de lectura/escritura del registro todos los nombres de secciones y claves se convierten a minúsculas de forma canónica read() promise\<string> read(string sectionname, string key) devuelve el valor de cadena del registro asociado con la clave especificada también debe especificar la sección del registro donde se almacena la clave promise\<registrysection> read(string sectionname) devuelve la sección del registro especificada en el siguiente formato registrysection {entry key} promise\<registryobject> read() devuelve todas las secciones del registro en el siguiente formato registryobject {section name} {entry key} write() promise\<void> write(string sectionname, string key, string value) escribe una única entrada del registro en la sección de registro especificada promise\<void> write(string sectionname, registrysection section) escribe la sección de registro especificada en el registro si la sección de registro no existe, se creará; de lo contrario, las entradas se agregarán o actualizarán en la sección de registro existente (las entradas de registro preexistentes que no se especifiquen en la operación de escritura no se verán afectadas) promise\<void> write(registryobject) escribe las secciones/entradas de registro especificadas en el registro las secciones y entradas de registro que no existan se crearán, y las entradas existentes se actualizarán (las secciones/entradas de registro preexistentes que no se especifiquen en la operación de escritura no se verán afectadas) el método write() de entrada única no tendrá un buen rendimiento cuando se utilice para escribir múltiples entradas sucesivamente para un rendimiento óptimo, utilice el método write() de sección única para escribir múltiples entradas en una sola sección y el método de registro completo para escribir en múltiples secciones como máximo sesenta segundos después de una escritura en el registro, o antes de un reinicio ordenado, los datos recién escritos se escribirán automáticamente en el almacenamiento persistente si por alguna razón un conjunto de cambios del registro debe escribirse inmediatamente, entonces se debe llamar al método flush() después del último si bien es posible leer el registro completo, modificar el valor devuelto y volver a escribirlo en el registro, esta no es una práctica recomendada puede causar condiciones de carrera entre diferentes partes del sistema que intentan escribir en el registro al mismo tiempo flush() promise\<void> flush() vacía inmediatamente el contenido del registro en el almacenamiento persistente para eliminar una entrada o sección del registro, asígnele un valor null ejemplo var registryclass = require("@brightsign/registry"); var registry = new registryclass(); //reads the entire registry to the log registry read() then(function(registry) { console log(json stringify(registry)); }); //reads the contents of the "networking" registry to the log registry read("networking") then( 	function(registry){console log(json stringify(registry));}); //writes multiple entries to multiple sections registry write({networking {ssh "22", http server "8080"}, autorun {devicesetupcomplete "1"}} ) then( 	function(){console log("write successful");}); //updates a single section registry write("networking", {ssh "22", http server "8080"}) then( 	function(){console log("write successful");}); //deletes a registry section and entry, and creates a new section registry write({networking {ssh "22", http server\ null}, autorun\ null, section1 {test "val"}} ) then( 	function(){console log("write successful");});