michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsICookie.idl" michael@0: michael@0: /** michael@0: * Main cookie object interface for use by consumers: michael@0: * extends nsICookie, a frozen interface for external michael@0: * access of cookie objects michael@0: */ michael@0: michael@4: [scriptable, uuid(9468A7E6-37B3-43CE-A081-377BC12C5BB7)] michael@0: michael@0: interface nsICookie2 : nsICookie michael@0: { michael@0: michael@0: /** michael@4: * the origin key of the cookie. michael@4: */ michael@4: readonly attribute ACString origin; michael@4: michael@4: /** michael@0: * the host (possibly fully qualified) of the cookie, michael@0: * without a leading dot to represent if it is a michael@0: * domain cookie. michael@0: */ michael@0: readonly attribute AUTF8String rawHost; michael@0: michael@0: /** michael@0: * true if the cookie is a session cookie. michael@0: * note that expiry time will also be honored michael@0: * for session cookies (see below); thus, whichever is michael@0: * the more restrictive of the two will take effect. michael@0: */ michael@0: readonly attribute boolean isSession; michael@0: michael@0: /** michael@0: * the actual expiry time of the cookie, in seconds michael@0: * since midnight (00:00:00), January 1, 1970 UTC. michael@0: * michael@0: * this is distinct from nsICookie::expires, which michael@0: * has different and obsolete semantics. michael@0: */ michael@0: readonly attribute int64_t expiry; michael@0: michael@0: /** michael@0: * true if the cookie is an http only cookie michael@0: */ michael@0: readonly attribute boolean isHttpOnly; michael@0: michael@0: /** michael@0: * the creation time of the cookie, in microseconds michael@0: * since midnight (00:00:00), January 1, 1970 UTC. michael@0: */ michael@0: readonly attribute int64_t creationTime; michael@0: michael@0: /** michael@0: * the last time the cookie was accessed (i.e. created, michael@0: * modified, or read by the server), in microseconds michael@0: * since midnight (00:00:00), January 1, 1970 UTC. michael@0: * michael@0: * note that this time may be approximate. michael@0: */ michael@0: readonly attribute int64_t lastAccessed; michael@0: michael@0: };