зеркало из https://github.com/mozilla/gecko-dev.git
Part of bug 382647 (move xpfe bookmarks to suite) - do the xpfe removals. r=KaiRo,sr=Neil NPOTFFB
This commit is contained in:
Родитель
ad187a506c
Коммит
0e92b04881
|
@ -1,122 +0,0 @@
|
|||
/* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Ben Goodger <ben@netscape.com>
|
||||
* Jan Varga <varga@ku.sk>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of the GNU General Public License Version 2 or later (the "GPL"),
|
||||
* or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
/**
|
||||
* The Browser Bookmarks service
|
||||
*/
|
||||
|
||||
#include "nsISupports.idl"
|
||||
|
||||
interface nsIRDFResource;
|
||||
interface nsITransactionManager;
|
||||
|
||||
[scriptable, uuid(4342a6ac-1b43-4121-b606-4bdf62de71ff)]
|
||||
interface nsIBookmarksService : nsISupports
|
||||
{
|
||||
const unsigned long BOOKMARK_DEFAULT_TYPE = 0;
|
||||
const unsigned long BOOKMARK_SEARCH_TYPE = 1;
|
||||
const unsigned long BOOKMARK_FIND_TYPE = 2;
|
||||
|
||||
const long SORT_DESCENDING = -1;
|
||||
const long SORT_ASCENDING = 1;
|
||||
|
||||
boolean readBookmarks();
|
||||
boolean isBookmarked(in string aURL);
|
||||
boolean isBookmarkedResource(in nsIRDFResource aSource);
|
||||
|
||||
void addBookmarkImmediately(in wstring aURI, in wstring aTitle, in long bmType, in wstring docCharset);
|
||||
|
||||
nsIRDFResource createFolder(in wstring aName);
|
||||
nsIRDFResource createFolderInContainer(in wstring aName, in nsIRDFResource aParentFolder,
|
||||
in long aIndex);
|
||||
|
||||
nsIRDFResource createGroup(in wstring aName);
|
||||
nsIRDFResource createGroupInContainer(in wstring aName, in nsIRDFResource aParentFolder,
|
||||
in long aIndex);
|
||||
|
||||
void sortFolder(in nsIRDFResource aFolder,
|
||||
in nsIRDFResource aProperty,
|
||||
in long aDirection,
|
||||
in boolean aFoldersFirst,
|
||||
in boolean aRecurse);
|
||||
|
||||
nsIRDFResource createBookmark(in wstring aName,
|
||||
in wstring aURL,
|
||||
in wstring aShortcutURL,
|
||||
in wstring aDescription,
|
||||
in wstring aDocCharSet);
|
||||
nsIRDFResource createBookmarkInContainer(in wstring aName,
|
||||
in wstring aURL,
|
||||
in wstring aShortcutURL,
|
||||
in wstring aDescription,
|
||||
in wstring aDocCharSet,
|
||||
in nsIRDFResource aFolder,
|
||||
in long aIndex);
|
||||
|
||||
nsIRDFResource createSeparator();
|
||||
|
||||
nsIRDFResource cloneResource(in nsIRDFResource aSource);
|
||||
|
||||
void updateBookmarkIcon(in string aURL, in wstring aIconURL);
|
||||
void removeBookmarkIcon(in string aURL, in wstring aIconURL);
|
||||
|
||||
void updateLastVisitedDate(in string aURL, in wstring docCharset);
|
||||
|
||||
AString getLastCharset(in AUTF8String aURL);
|
||||
|
||||
string resolveKeyword(in wstring aName);
|
||||
|
||||
void importSystemBookmarks(in nsIRDFResource aParentFolder);
|
||||
|
||||
readonly attribute nsITransactionManager transactionManager;
|
||||
};
|
||||
|
||||
%{C++
|
||||
|
||||
// {E638D760-8687-11d2-B530-000000000000}
|
||||
#define NS_BOOKMARKS_SERVICE_CID \
|
||||
{ 0xe638d760, 0x8687, 0x11d2, { 0xb5, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } }
|
||||
|
||||
#define NS_BOOKMARKS_SERVICE_CONTRACTID \
|
||||
"@mozilla.org/browser/bookmarks-service;1"
|
||||
|
||||
#define NS_BOOKMARKS_DATASOURCE_CONTRACTID \
|
||||
"@mozilla.org/rdf/datasource;1?name=bookmarks"
|
||||
|
||||
%}
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -1,333 +0,0 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of the GNU General Public License Version 2 or later (the "GPL"),
|
||||
* or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
#ifndef bookmarksservice___h___
|
||||
#define bookmarksservice___h___
|
||||
|
||||
#include "nsIRDFDataSource.h"
|
||||
#include "nsIRDFRemoteDataSource.h"
|
||||
#include "nsIRDFPropagatableDataSource.h"
|
||||
#include "nsIStreamListener.h"
|
||||
#include "nsIRDFObserver.h"
|
||||
#include "nsISupportsArray.h"
|
||||
#include "nsCOMArray.h"
|
||||
#include "nsIStringBundle.h"
|
||||
#include "nsITimer.h"
|
||||
#include "nsIRDFNode.h"
|
||||
#include "nsIBookmarksService.h"
|
||||
#include "nsStringGlue.h"
|
||||
#include "nsIFile.h"
|
||||
#include "nsIObserver.h"
|
||||
#include "nsWeakReference.h"
|
||||
#include "nsCOMArray.h"
|
||||
#include "nsIIOService.h"
|
||||
#include "nsICacheService.h"
|
||||
#include "nsICacheSession.h"
|
||||
#include "nsITransactionManager.h"
|
||||
#include "nsICharsetResolver.h"
|
||||
#include "nsCycleCollectionParticipant.h"
|
||||
|
||||
class nsIOutputStream;
|
||||
|
||||
#ifdef DEBUG
|
||||
#if defined(XP_MAC) || defined(XP_MACOSX)
|
||||
#include <Timer.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
class nsBookmarksService : public nsIBookmarksService,
|
||||
public nsIRDFDataSource,
|
||||
public nsIRDFRemoteDataSource,
|
||||
public nsIRDFPropagatableDataSource,
|
||||
public nsIStreamListener,
|
||||
public nsICharsetResolver,
|
||||
public nsIRDFObserver,
|
||||
public nsIObserver,
|
||||
public nsSupportsWeakReference
|
||||
{
|
||||
protected:
|
||||
nsCOMPtr<nsIRDFDataSource> mInner;
|
||||
nsCOMPtr<nsIRDFResource> busyResource;
|
||||
nsCOMArray<nsIRDFObserver> mObservers;
|
||||
nsCOMPtr<nsIStringBundle> mBundle;
|
||||
nsCOMPtr<nsITimer> mTimer;
|
||||
nsCOMPtr<nsIIOService> mNetService;
|
||||
nsCOMPtr<nsICacheService> mCacheService;
|
||||
nsCOMPtr<nsICacheSession> mCacheSession;
|
||||
nsCOMPtr<nsITransactionManager> mTransactionManager;
|
||||
nsCOMPtr<nsILocalFile> mBookmarksFile;
|
||||
|
||||
PRUint32 htmlSize;
|
||||
PRInt32 mUpdateBatchNest;
|
||||
nsString mPersonalToolbarName;
|
||||
nsString mBookmarksRootName;
|
||||
PRBool mDirty;
|
||||
PRBool mBrowserIcons;
|
||||
PRBool mAlwaysLoadIcons;
|
||||
PRBool busySchedule;
|
||||
|
||||
// System Bookmark parsing
|
||||
#if defined(XP_WIN)
|
||||
// @param aDirectory - Favorites Folder to import from.
|
||||
// @param aParentResource - Folder into which to place imported
|
||||
// Favorites.
|
||||
nsresult ParseFavoritesFolder(nsIFile* aDirectory,
|
||||
nsIRDFResource* aParentResource);
|
||||
#elif defined(XP_MAC) || defined(XP_MACOSX)
|
||||
PRBool mIEFavoritesAvailable;
|
||||
|
||||
nsresult ReadFavorites();
|
||||
#endif
|
||||
|
||||
#if defined(XP_WIN) || defined(XP_MAC) || defined(XP_MACOSX)
|
||||
void HandleSystemBookmarks(nsIRDFNode* aNode);
|
||||
#endif
|
||||
|
||||
static void FireTimer(nsITimer* aTimer, void* aClosure);
|
||||
|
||||
nsresult ExamineBookmarkSchedule(nsIRDFResource *theBookmark, PRBool & examineFlag);
|
||||
|
||||
nsresult GetBookmarkToPing(nsIRDFResource **theBookmark);
|
||||
|
||||
nsresult EnsureBookmarksFile();
|
||||
|
||||
nsresult WriteBookmarks(nsIFile* bookmarksFile, nsIRDFDataSource *ds,
|
||||
nsIRDFResource *root);
|
||||
|
||||
nsresult WriteBookmarksContainer(nsIRDFDataSource *ds,
|
||||
nsIOutputStream* strm,
|
||||
nsIRDFResource *container,
|
||||
PRInt32 level,
|
||||
nsCOMArray<nsIRDFResource>& parentArray);
|
||||
|
||||
nsresult SerializeBookmarks(nsIURI* aURI);
|
||||
|
||||
nsresult GetTextForNode(nsIRDFNode* aNode, nsString& aResult);
|
||||
|
||||
nsresult GetSynthesizedType(nsIRDFResource *aNode, nsIRDFNode **aType);
|
||||
|
||||
nsresult UpdateBookmarkLastModifiedDate(nsIRDFResource *aSource);
|
||||
|
||||
nsresult WriteBookmarkProperties(nsIRDFDataSource *ds,
|
||||
nsIOutputStream* strm,
|
||||
nsIRDFResource *node,
|
||||
nsIRDFResource *property,
|
||||
const char *htmlAttrib,
|
||||
PRBool isFirst);
|
||||
|
||||
PRBool CanAccept(nsIRDFResource* aSource, nsIRDFResource* aProperty, nsIRDFNode* aTarget);
|
||||
|
||||
nsresult getArgumentN(nsISupportsArray *arguments, nsIRDFResource *res,
|
||||
PRInt32 offset, nsIRDFNode **argValue);
|
||||
|
||||
nsresult insertBookmarkItem(nsIRDFResource *src,
|
||||
nsISupportsArray *aArguments,
|
||||
nsIRDFResource *objType);
|
||||
|
||||
nsresult deleteBookmarkItem(nsIRDFResource *src,
|
||||
nsISupportsArray *aArguments,
|
||||
PRInt32 parentArgIndex);
|
||||
|
||||
nsresult setFolderHint(nsIRDFResource *src, nsIRDFResource *objType);
|
||||
|
||||
nsresult getFolderViaHint(nsIRDFResource *src, PRBool fallbackFlag,
|
||||
nsIRDFResource **folder);
|
||||
|
||||
nsresult importBookmarks(nsISupportsArray *aArguments);
|
||||
|
||||
nsresult exportBookmarks(nsISupportsArray *aArguments);
|
||||
|
||||
nsresult ProcessCachedBookmarkIcon(nsIRDFResource* aSource,
|
||||
const PRUnichar *iconURL,
|
||||
nsIRDFNode** aTarget);
|
||||
|
||||
void AnnotateBookmarkSchedule(nsIRDFResource* aSource,
|
||||
PRBool scheduleFlag);
|
||||
|
||||
nsresult InsertResource(nsIRDFResource* aResource,
|
||||
nsIRDFResource* aParentFolder, PRInt32 aIndex);
|
||||
|
||||
nsresult getLocaleString(const char *key, nsString &str);
|
||||
|
||||
static int PR_CALLBACK
|
||||
Compare(const void* aElement1, const void* aElement2, void* aData);
|
||||
|
||||
nsresult
|
||||
Sort(nsIRDFResource* aFolder, nsIRDFResource* aProperty,
|
||||
PRInt32 aDirection, PRBool aFoldersFirst, PRBool aRecurse);
|
||||
|
||||
nsresult
|
||||
GetURLFromResource(nsIRDFResource* aResource, nsAString& aURL);
|
||||
|
||||
nsresult
|
||||
CopyResource(nsIRDFResource* aOldResource, nsIRDFResource* aNewResource);
|
||||
|
||||
nsresult
|
||||
SetNewPersonalToolbarFolder(nsIRDFResource* aFolder);
|
||||
|
||||
nsresult LoadBookmarks();
|
||||
nsresult initDatasource();
|
||||
|
||||
// nsIStreamObserver methods:
|
||||
NS_DECL_NSIREQUESTOBSERVER
|
||||
|
||||
// nsIStreamListener methods:
|
||||
NS_DECL_NSISTREAMLISTENER
|
||||
|
||||
NS_DECL_NSICHARSETRESOLVER
|
||||
|
||||
// nsIObserver methods:
|
||||
NS_DECL_NSIOBSERVER
|
||||
|
||||
public:
|
||||
nsBookmarksService();
|
||||
virtual ~nsBookmarksService();
|
||||
nsresult Init();
|
||||
|
||||
// nsISupports
|
||||
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
|
||||
NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS(nsBookmarksService,
|
||||
nsIBookmarksService)
|
||||
|
||||
// nsIBookmarksService
|
||||
NS_DECL_NSIBOOKMARKSSERVICE
|
||||
|
||||
// nsIRDFDataSource
|
||||
NS_IMETHOD GetURI(char* *uri);
|
||||
|
||||
NS_IMETHOD GetSource(nsIRDFResource* property,
|
||||
nsIRDFNode* target,
|
||||
PRBool tv,
|
||||
nsIRDFResource** source)
|
||||
{
|
||||
return mInner->GetSource(property, target, tv, source);
|
||||
}
|
||||
|
||||
NS_IMETHOD GetSources(nsIRDFResource* property,
|
||||
nsIRDFNode* target,
|
||||
PRBool tv,
|
||||
nsISimpleEnumerator** sources)
|
||||
{
|
||||
return mInner->GetSources(property, target, tv, sources);
|
||||
}
|
||||
|
||||
NS_IMETHOD GetTarget(nsIRDFResource* source,
|
||||
nsIRDFResource* property,
|
||||
PRBool tv,
|
||||
nsIRDFNode** target);
|
||||
|
||||
NS_IMETHOD GetTargets(nsIRDFResource* source,
|
||||
nsIRDFResource* property,
|
||||
PRBool tv,
|
||||
nsISimpleEnumerator** targets)
|
||||
{
|
||||
return mInner->GetTargets(source, property, tv, targets);
|
||||
}
|
||||
|
||||
NS_IMETHOD Assert(nsIRDFResource* aSource,
|
||||
nsIRDFResource* aProperty,
|
||||
nsIRDFNode* aTarget,
|
||||
PRBool aTruthValue);
|
||||
|
||||
NS_IMETHOD Unassert(nsIRDFResource* aSource,
|
||||
nsIRDFResource* aProperty,
|
||||
nsIRDFNode* aTarget);
|
||||
|
||||
NS_IMETHOD Change(nsIRDFResource* aSource,
|
||||
nsIRDFResource* aProperty,
|
||||
nsIRDFNode* aOldTarget,
|
||||
nsIRDFNode* aNewTarget);
|
||||
|
||||
NS_IMETHOD Move(nsIRDFResource* aOldSource,
|
||||
nsIRDFResource* aNewSource,
|
||||
nsIRDFResource* aProperty,
|
||||
nsIRDFNode* aTarget);
|
||||
|
||||
NS_IMETHOD HasAssertion(nsIRDFResource* source,
|
||||
nsIRDFResource* property,
|
||||
nsIRDFNode* target,
|
||||
PRBool tv,
|
||||
PRBool* hasAssertion);
|
||||
|
||||
NS_IMETHOD AddObserver(nsIRDFObserver* aObserver);
|
||||
NS_IMETHOD RemoveObserver(nsIRDFObserver* aObserver);
|
||||
|
||||
NS_IMETHOD HasArcIn(nsIRDFNode *aNode, nsIRDFResource *aArc, PRBool *_retval);
|
||||
NS_IMETHOD HasArcOut(nsIRDFResource *aSource, nsIRDFResource *aArc, PRBool *_retval);
|
||||
|
||||
NS_IMETHOD ArcLabelsIn(nsIRDFNode* node,
|
||||
nsISimpleEnumerator** labels)
|
||||
{
|
||||
return mInner->ArcLabelsIn(node, labels);
|
||||
}
|
||||
|
||||
NS_IMETHOD ArcLabelsOut(nsIRDFResource* source,
|
||||
nsISimpleEnumerator** labels);
|
||||
|
||||
NS_IMETHOD GetAllResources(nsISimpleEnumerator** aResult);
|
||||
|
||||
NS_IMETHOD GetAllCmds(nsIRDFResource* source,
|
||||
nsISimpleEnumerator/*<nsIRDFResource>*/** commands);
|
||||
|
||||
NS_IMETHOD IsCommandEnabled(nsISupportsArray/*<nsIRDFResource>*/* aSources,
|
||||
nsIRDFResource* aCommand,
|
||||
nsISupportsArray/*<nsIRDFResource>*/* aArguments,
|
||||
PRBool* aResult);
|
||||
|
||||
NS_IMETHOD DoCommand(nsISupportsArray/*<nsIRDFResource>*/* aSources,
|
||||
nsIRDFResource* aCommand,
|
||||
nsISupportsArray/*<nsIRDFResource>*/* aArguments);
|
||||
|
||||
NS_IMETHOD BeginUpdateBatch() {
|
||||
return mInner->BeginUpdateBatch();
|
||||
}
|
||||
|
||||
NS_IMETHOD EndUpdateBatch() {
|
||||
return mInner->EndUpdateBatch();
|
||||
}
|
||||
|
||||
// nsIRDFRemoteDataSource
|
||||
NS_DECL_NSIRDFREMOTEDATASOURCE
|
||||
|
||||
// nsIRDFPropagatableDataSource
|
||||
NS_DECL_NSIRDFPROPAGATABLEDATASOURCE
|
||||
|
||||
// nsIRDFObserver
|
||||
NS_DECL_NSIRDFOBSERVER
|
||||
};
|
||||
|
||||
#endif // bookmarksservice___h___
|
Загрузка…
Ссылка в новой задаче