From 5053747404d82f0d71cd3316a23a2ece727591d4 Mon Sep 17 00:00:00 2001 From: "rdayal%netscape.com" Date: Tue, 26 Mar 2002 10:04:10 +0000 Subject: [PATCH] Landing Address Book LDAP Replication, bug # 128086 these files define : replication service interface called from UI, replication query interface called for executing an LDAP query, replication data interface called for processing retrieved data. r=sspitzer, sr=bienvenu, a=asa. git-svn-id: svn://10.0.0.236/trunk@117476 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/mailnews/addrbook/public/Makefile.in | 3 + mozilla/mailnews/addrbook/public/makefile.win | 3 + .../public/nsIAbLDAPReplicationData.idl | 94 +++++++++++++++++++ .../public/nsIAbLDAPReplicationQuery.idl | 56 ++++++----- .../public/nsIAbLDAPReplicationService.idl | 56 ++++++----- 5 files changed, 168 insertions(+), 44 deletions(-) create mode 100644 mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationData.idl diff --git a/mozilla/mailnews/addrbook/public/Makefile.in b/mozilla/mailnews/addrbook/public/Makefile.in index 30116292d6f..7d7196db635 100644 --- a/mozilla/mailnews/addrbook/public/Makefile.in +++ b/mozilla/mailnews/addrbook/public/Makefile.in @@ -56,6 +56,9 @@ ifdef MOZ_LDAP_XPCOM XPIDLSRCS += \ nsILDAPPrefsService.idl \ nsIAbLDAPAutoCompFormatter.idl \ + nsIAbLDAPReplicationService.idl \ + nsIAbLDAPReplicationQuery.idl \ + nsIAbLDAPReplicationData.idl \ $(NULL) endif diff --git a/mozilla/mailnews/addrbook/public/makefile.win b/mozilla/mailnews/addrbook/public/makefile.win index c23e486c2cf..dca8806a4b9 100644 --- a/mozilla/mailnews/addrbook/public/makefile.win +++ b/mozilla/mailnews/addrbook/public/makefile.win @@ -48,6 +48,9 @@ XPIDLSRCS = \ !if !defined(DISABLE_LDAP) .\nsILDAPPrefsService.idl \ .\nsIAbLDAPAutoCompFormatter.idl \ + .\nsIAbLDAPReplicationService.idl \ + .\nsIAbLDAPReplicationQuery.idl \ + .\nsIAbLDAPReplicationData.idl \ !endif $(NULL) diff --git a/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationData.idl b/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationData.idl new file mode 100644 index 00000000000..2e4c695f3ea --- /dev/null +++ b/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationData.idl @@ -0,0 +1,94 @@ +/* ***** 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 + * + * + * Portions created by the Initial Developer are Copyright (C) 2002 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either 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 ***** */ + +#include "nsISupports.idl" +#include "nsILDAPMessageListener.idl" + +interface nsIAbLDAPReplicationQuery; +interface nsIWebProgressListener; + +/** + * this service does replication of an LDAP directory to a local Mork AB Database. + */ +[scriptable, uuid(00D568A2-3C3B-11d6-B7B9-00B0D06E5F27)] +interface nsIAbLDAPProcessReplicationData : nsILDAPMessageListener { + + /** + * readonly attribute giving the current replication state + */ + readonly attribute PRInt32 replicationState; + + /** + * replication states + */ + const long kQueryNotStarted = 0; + const long kAnonymousBinding = 1; + const long kAuthenticatedBinding = 2; + const long kSearchingAuthDN = 3; + const long kDecidingProtocol = 4; + const long kAuthenticating = 5; + const long kReplicatingAll = 6; + const long kSearchingRootDSE = 7; + const long kFindingChanges = 8; + const long kReplicatingChanges = 9; + const long kReplicationDone = 10; + + /** + * readonly attribute giving the current protocol used + */ + readonly attribute PRInt32 protocolUsed ; + + /** + * replication protocols + */ + const long kDefaultDownloadAll = 0; + const long kChangeLogProtocol = 1; + const long kLCUPProtocol = 2; + const long kLastUpdatedTimeStampMethod = 3; + + /** + * this method initializes the implementation + */ + void init (in nsIAbLDAPReplicationQuery query, in nsIWebProgressListener progressListener); + + /** + * this method a aborts the ongoing processing + */ + void abort(); + +}; + diff --git a/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationQuery.idl b/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationQuery.idl index 22fc0532b63..087598e595d 100644 --- a/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationQuery.idl +++ b/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationQuery.idl @@ -1,27 +1,39 @@ -/* -*- 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 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 Netscape are - * Copyright (C) 2001 Netscape Communications Corporation. All - * Rights Reserved. - * - * Contributor(s): - * Rajiv Dayal * - * nsIAbLDAPReplicationQuery.idl - */ + * The Initial Developer of the Original Code is + * + * + * Portions created by the Initial Developer are Copyright (C) 2002 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either 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 ***** */ #include "nsISupports.idl" @@ -70,6 +82,6 @@ interface nsIAbLDAPReplicationQuery : nsISupports { /** * this method is the callback when query is done, failed or successful */ - void done(in PRBool aSuccess); + void done(in boolean aSuccess); }; diff --git a/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationService.idl b/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationService.idl index b260d6fbefb..8b7b0323323 100644 --- a/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationService.idl +++ b/mozilla/mailnews/addrbook/public/nsIAbLDAPReplicationService.idl @@ -1,27 +1,39 @@ -/* -*- 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 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 Netscape are - * Copyright (C) 2001 Netscape Communications Corporation. All - * Rights Reserved. - * - * Contributor(s): - * Rajiv Dayal * - * nsIAbLDAPReplicationService.idl - */ + * The Initial Developer of the Original Code is + * + * + * Portions created by the Initial Developer are Copyright (C) 2002 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either 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 ***** */ #include "nsISupports.idl" @@ -46,6 +58,6 @@ interface nsIAbLDAPReplicationService: nsISupports { /** * callback when replication is done, failure or success */ - void done(in PRBool aSuccess); + void done(in boolean aSuccess); };