2010-10-26 04:57:18 -07:00
|
|
|
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2012-05-21 04:12:37 -07:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
2010-10-26 04:57:18 -07:00
|
|
|
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Simple scriptable serialization helper. Can be used as a service.
|
|
|
|
*/
|
|
|
|
|
|
|
|
interface nsISerializable;
|
|
|
|
|
|
|
|
[scriptable, uuid(31654c0f-35f3-44c6-b31e-37a11516e6bc)]
|
|
|
|
interface nsISerializationHelper : nsISupports
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Serialize the object to a base64 string. This string can be later passed
|
|
|
|
* as an input to deserializeObject method.
|
|
|
|
*/
|
|
|
|
ACString serializeToString(in nsISerializable serializable);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Takes base64 encoded string that cointains serialization of a single
|
|
|
|
* object. Most commonly, input is result of previous call to
|
|
|
|
* serializeToString.
|
|
|
|
*/
|
|
|
|
nsISupports deserializeObject(in ACString input);
|
|
|
|
};
|