Bug 470455 - test_database_sync_embed_visits.js leaks, r=sdwilsh
[wine-gecko.git] / xpinstall / src / nsXPIInstallInfo.cpp
blobfe1f425325aaed7e27d459ceb87d130e8865e7ad
1 /* ***** BEGIN LICENSE BLOCK *****
2 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
4 * The contents of this file are subject to the Mozilla Public License Version
5 * 1.1 (the "License"); you may not use this file except in compliance with
6 * the License. You may obtain a copy of the License at
7 * http://www.mozilla.org/MPL/
9 * Software distributed under the License is distributed on an "AS IS" basis,
10 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11 * for the specific language governing rights and limitations under the
12 * License.
14 * The Original Code is Mozilla XPInstall.
16 * The Initial Developer of the Original Code is
17 * Dave Townsend <dtownsend@oxymoronical.com>.
19 * Portions created by the Initial Developer are Copyright (C) 2007
20 * the Initial Developer. All Rights Reserved.
22 * Contributor(s):
24 * Alternatively, the contents of this file may be used under the terms of
25 * either the GNU General Public License Version 2 or later (the "GPL"), or
26 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
27 * in which case the provisions of the GPL or the LGPL are applicable instead
28 * of those above. If you wish to allow use of your version of this file only
29 * under the terms of either the GPL or the LGPL, and not to allow others to
30 * use your version of this file under the terms of the MPL, indicate your
31 * decision by deleting the provisions above and replace them with the notice
32 * and other provisions required by the GPL or the LGPL. If you do not delete
33 * the provisions above, a recipient may use your version of this file under
34 * the terms of any one of the MPL, the GPL or the LGPL.
36 * ***** END LICENSE BLOCK *****
39 #include "nsXPIInstallInfo.h"
41 NS_IMPL_ISUPPORTS1(nsXPIInstallInfo, nsIXPIInstallInfo)
43 nsXPIInstallInfo::nsXPIInstallInfo(nsIDOMWindowInternal *aOriginatingWindow,
44 nsIURI *aOriginatingURI,
45 nsXPITriggerInfo *aTriggerInfo,
46 PRUint32 aChromeType)
47 : mOriginatingWindow(aOriginatingWindow), mOriginatingURI(aOriginatingURI),
48 mTriggerInfo(aTriggerInfo), mChromeType(aChromeType)
52 nsXPIInstallInfo::~nsXPIInstallInfo()
54 delete mTriggerInfo;
57 /* [noscript, notxpcom] attribute triggerInfoPtr triggerInfo; */
58 NS_IMETHODIMP
59 nsXPIInstallInfo::GetTriggerInfo(nsXPITriggerInfo * *aTriggerInfo)
61 *aTriggerInfo = mTriggerInfo;
62 return NS_OK;
65 NS_IMETHODIMP
66 nsXPIInstallInfo::SetTriggerInfo(nsXPITriggerInfo * aTriggerInfo)
68 mTriggerInfo = aTriggerInfo;
69 return NS_OK;
72 /* readonly attribute nsIDOMWindowInternal originatingWindow; */
73 NS_IMETHODIMP
74 nsXPIInstallInfo::GetOriginatingWindow(nsIDOMWindowInternal * *aOriginatingWindow)
76 NS_IF_ADDREF(*aOriginatingWindow = mOriginatingWindow);
77 return NS_OK;
80 /* readonly attribute nsIURI uri; */
81 NS_IMETHODIMP
82 nsXPIInstallInfo::GetOriginatingURI(nsIURI * *aOriginatingURI)
84 NS_IF_ADDREF(*aOriginatingURI = mOriginatingURI);
85 return NS_OK;
88 /* readonly attribute PRUint32 type; */
89 NS_IMETHODIMP
90 nsXPIInstallInfo::GetChromeType(PRUint32 *aChromeType)
92 *aChromeType = mChromeType;
93 return NS_OK;