20 abril, 2009

Esquemas JSON para la extensiones de Chrome

Para el sistema de extensiones del navegador Google Chrome, se ha optado por aprovechar la idea de GreaseMonkey ya que muchas de las extensiones de Firefox son manipulaciones sobre páginas web. Como un medio de simplificar la documentación y también para simplificar la verificación de los parámetros recibidos por las funciones, se ha propuesto el uso de esquemas JSON, que son una especificación de un formato basado en JSON para definir estructuras de datos JSON. Un esquema facilita un contrato sobre los requisitos de datos de una aplicación, como pueden ser modificados y el control de la interacción de esos datos.

La idea, propuesta en un primer momento por Aaron Boodman, y que ha sido detallado en estos artículos, es poder hacer lo siguiente:

// llamada a la función
chromium.tabs.createTab = function(tab, callback) {
  validate(arguments, arguments.callee.params); // validación de argumentos
  sendRequest(CreateTab, tab, callback);
};

// especificación del esquema (parámetros para la función)
chromium.tabs.createTab.params = [
  {
    type: "object",
    properties: {
      windowId: chromium.types.optPInt,
      url: chromium.types.optStr,
      selected: chromium.types.optBool
    },
    additionalProperties: false
  },
  chromium.types.optFun
];

Via Ajaxian.

Publicar un comentario en la entrada

Últimos links en indiza.com