adding libnet->libmsg interfaces, including both IDL and C++ headers because

xpidl only runs on unix right now.
This commit is contained in:
alecf%netscape.com 1998-12-21 22:24:51 +00:00
Родитель 911ad9485c
Коммит 54e79cd9af
8 изменённых файлов: 439 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,44 @@
/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM nsIMsgNewsArticleList.idl
*/
#ifndef __nsIMsgNewsArticleList_h__
#define __nsIMsgNewsArticleList_h__
#include "nsISupports.h" /* interface nsISupports */
/* starting interface nsIMsgNewsArticleList */
/* {E628ED19-9452-11d2-B7EA-00805F05FFA5} */
#define NS_IMSGNEWSARTICLELIST_IID_STR "E628ED19-9452-11d2-B7EA-00805F05FFA5"
#define NS_IMSGNEWSARTICLELIST_IID \
{0xE628ED19, 0x9452, 0x11d2, \
{ 0xB7, 0xEA, 0x00, 0x80, 0x5F, 0x05, 0xFF, 0xA5 }}
class nsIMsgNewsArticleList : public nsISupports {
private:
void operator delete(void *); // NOT TO BE IMPLEMENTED
public:
static const nsIID& IID() {
static nsIID iid = NS_IMSGNEWSARTICLELIST_IID;
return iid;
}
/* void InitAddArticleKeyToGroup(); */
NS_IMETHOD InitAddArticleKeyToGroup() = 0;
/* void AddArticleKeyToGroup(in found_id); */
NS_IMETHOD AddArticleKeyToGroup(PRInt32 found_id) = 0;
/* void FinishAddArticleKeyToGroup(); */
NS_IMETHOD FinishAddArticleKeyToGroup() = 0;
/* void GetRangeOfArtsToDownload(in first_message, in last_message, in total_messages, out real_first_message, out real_last_message, out real_total_messages); */
NS_IMETHOD GetRangeOfArtsToDownload(PRInt32 first_message, PRInt32 last_message, PRInt32 total_messages, PRInt32 *real_first_message, PRInt32 *real_last_message, PRInt32 *real_total_messages) = 0;
/* void AddToKnownArticles(in first_message, in last_message); */
NS_IMETHOD AddToKnownArticles(PRInt32 first_message, PRInt32 last_message) = 0;
};
#endif /* __nsIMsgNewsArticleList_h__ */

Просмотреть файл

@ -0,0 +1,49 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "nsISupports.idl"
/* this interface is basically for the old ListNewsGroupState class
* (the implementation of this class probably wants to also implement
* or contain ChangeListener so that it can react to OnAnnouncerGoingAway()
* to destroy the DBView)
*/
[object, uuid(E628ED19-9452-11d2-B7EA-00805F05FFA5)]
interface nsIMsgNewsArticleList : nsISupports {
/* These calls are used by libnet to determine which articles it ought to
get in a big newsgroup. */
/* the nsIUnknown will probably hold a ListNewsGroupState
* this stuff might really belong on the XOVER stuff, but I'm not sure
* -alecf */
void InitAddArticleKeyToGroup();
void AddArticleKeyToGroup(in long found_id);
void FinishAddArticleKeyToGroup();
void GetRangeOfArtsToDownload(in long first_message,
in long last_message,
in long total_messages,
out long real_first_message,
out long real_last_message,
out long real_total_messages);
void AddToKnownArticles(in long first_message, in long last_message);
};

Просмотреть файл

@ -0,0 +1,84 @@
/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM nsIMsgNewsHost.idl
*/
#ifndef __nsIMsgNewsHost_h__
#define __nsIMsgNewsHost_h__
#include "nsISupports.h" /* interface nsISupports */
/* starting interface nsIMsgHostNews */
/* {2F5041B0-939E-11d2-B7EA-00805F05FFA5} */
#define NS_IMSGHOSTNEWS_IID_STR "2F5041B0-939E-11d2-B7EA-00805F05FFA5"
#define NS_IMSGHOSTNEWS_IID \
{0x2F5041B0, 0x939E, 0x11d2, \
{ 0xB7, 0xEA, 0x00, 0x80, 0x5F, 0x05, 0xFF, 0xA5 }}
class nsIMsgHostNews : public nsISupports {
private:
void operator delete(void *); // NOT TO BE IMPLEMENTED
public:
static const nsIID& IID() {
static nsIID iid = NS_IMSGHOSTNEWS_IID;
return iid;
}
/* attribute boolean supportsExtensions; */
NS_IMETHOD IsSupportsExtensions(PRBool *aIsSupportsExtensions) = 0;
NS_IMETHOD SetSupportsExtensions(PRBool aSupportsExtensions) = 0;
/* void AddExtension(in string extension); */
NS_IMETHOD AddExtension(const char *extension) = 0;
/* boolean QueryExtension(in string extension); */
NS_IMETHOD QueryExtension(const char *extension, PRBool *_retval) = 0;
/* attribute boolean postingAllowed; */
NS_IMETHOD IsPostingAllowed(PRBool *aIsPostingAllowed) = 0;
NS_IMETHOD SetPostingAllowed(PRBool aPostingAllowed) = 0;
/* attribute boolean pushAuth; */
NS_IMETHOD IsPushAuth(PRBool *aIsPushAuth) = 0;
NS_IMETHOD SetPushAuth(PRBool aPushAuth) = 0;
/* attribute lastUpdatedTime; */
NS_IMETHOD GetLastUpdatedTime(PRInt32 *aLastUpdatedTime) = 0;
NS_IMETHOD SetLastUpdatedTime(PRInt32 aLastUpdatedTime) = 0;
/* void AddPropertyForGet(in string name, in string value); */
NS_IMETHOD AddPropertyForGet(const char *name, const char *value) = 0;
/* void AddSearchableGroup(in string groupname); */
NS_IMETHOD AddSearchableGroup(const char *groupname) = 0;
/* void AddProfileGroup(in string responseText); */
NS_IMETHOD AddProfileGroup(const char *responseText) = 0;
/* void AddSubscribedNewsgroup(in string url); */
NS_IMETHOD AddSubscribedNewsgroup(const char *url) = 0;
/* void GroupNotFound(in string group, in boolean opening); */
NS_IMETHOD GroupNotFound(const char *group, PRBool opening) = 0;
/* void AddNewNewsgroup(in string groupname, in first, in last, in string flags, in boolean xactiveFlags); */
NS_IMETHOD AddNewNewsgroup(const char *groupname, PRInt32 first, PRInt32 last, const char *flags, PRBool xactiveFlags) = 0;
/* GetNumGroupsNeedingCounts(); */
NS_IMETHOD GetNumGroupsNeedingCounts(PRInt32 *_retval) = 0;
/* string GetFirstGroupNeedingCounts(); */
NS_IMETHOD GetFirstGroupNeedingCounts(char **_retval) = 0;
/* void DisplaySubscribedGroup(in string groupname, in first_message, in last_message, in total_messages, in boolean visit_now); */
NS_IMETHOD DisplaySubscribedGroup(const char *groupname, PRInt32 first_message, PRInt32 last_message, PRInt32 total_messages, PRBool visit_now) = 0;
/* string GetFirstGroupNeedingExtraInfo(); */
NS_IMETHOD GetFirstGroupNeedingExtraInfo(char **_retval) = 0;
/* void GetNewsGroupAndNumberOfID(in string message_id, out string groupname, out message_number); */
NS_IMETHOD GetNewsGroupAndNumberOfID(const char *message_id, char **groupname, PRInt32 *message_number) = 0;
};
#endif /* __nsIMsgNewsHost_h__ */

Просмотреть файл

@ -0,0 +1,90 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "nsISupports.idl"
[object, uuid(2F5041B0-939E-11d2-B7EA-00805F05FFA5)]
interface nsIMsgHostNews : nsISupports {
attribute boolean supportsExtensions;
void AddExtension(in string extension);
boolean QueryExtension(in string extension);
attribute boolean postingAllowed;
attribute boolean pushAuth;
attribute long lastUpdatedTime;
/* libnet callbacks for Dredd NNTP extensions
* please document if you know how these work
*/
void AddPropertyForGet(in string name, in string value);
void AddSearchableGroup(in string groupname);
void AddProfileGroup(in string responseText);
/* going away */
void AddSubscribedNewsgroup(in string url);
/* In response to an NNTP GROUP command, the server said
* the group doesn't exist
*/
void GroupNotFound(in string group, in boolean opening);
/* Tell the subscribe pane about a new newsgroup we noticed. */
/* XXX should xactive flags be a long? */
void AddNewNewsgroup(in string groupname,
in long first, in long last,
in string flags, in boolean xactiveFlags);
/* formerly GetNewsRCCount() */
/* After displaying a list of newsgroups, we need the NNTP module to go and
run "GROUP" commands for the ones for which we don't know the unread
article count. This function returns a count of how many groups we think
we're going to need this for (so we can display progress in a reasonable
way).
*/
long GetNumGroupsNeedingCounts();
/* formerly GetNewsRCGroup() */
/* Gets the name of the next group that we want to get article counts for.
MSG_DisplaySubscribedGroup() should get called with this group before
this call happens again. */
string GetFirstGroupNeedingCounts();
/* In response to a "news://host/" URL; this is called once for each group
that was returned by MSG_GetNewsRCGroup(), after the NNTP GROUP
command has been run. It's also called whenever we actually visit the
group (the user clicks on the newsgroup line), in case the data has
changed since the initial passthrough. The "nowvisiting" parameter
is TRUE in the latter case, FALSE otherwise. */
void DisplaySubscribedGroup(in string groupname,
in long first_message, in long last_message,
in long total_messages,
in boolean visit_now);
string GetFirstGroupNeedingExtraInfo();
/* News servers work better if you ask for message numbers instead of IDs.
So, the NNTP module asks us what the group and number of an ID is with
this. If we don't know, we return 0 for both. If the pane is not a
thead or message pane, this routine will fail.
*/
void GetNewsGroupAndNumberOfID(in string message_id,
out string groupname,
out long message_number);
};

Просмотреть файл

@ -0,0 +1,45 @@
/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM nsIMsgNewsgroup.idl
*/
#ifndef __nsIMsgNewsgroup_h__
#define __nsIMsgNewsgroup_h__
#include "nsISupports.h" /* interface nsISupports */
/* starting interface nsINetNewsgroup */
/* {E628ED10-9452-11d2-B7EA-00805F05FFA5} */
#define NS_INETNEWSGROUP_IID_STR "E628ED10-9452-11d2-B7EA-00805F05FFA5"
#define NS_INETNEWSGROUP_IID \
{0xE628ED10, 0x9452, 0x11d2, \
{ 0xB7, 0xEA, 0x00, 0x80, 0x5F, 0x05, 0xFF, 0xA5 }}
class nsINetNewsgroup : public nsISupports {
private:
void operator delete(void *); // NOT TO BE IMPLEMENTED
public:
static const nsIID& IID() {
static nsIID iid = NS_INETNEWSGROUP_IID;
return iid;
}
/* attribute string prettyName; */
NS_IMETHOD GetPrettyName(char * *aPrettyName) = 0;
NS_IMETHOD SetPrettyName(char * aPrettyName) = 0;
/* attribute string password; */
NS_IMETHOD GetPassword(char * *aPassword) = 0;
NS_IMETHOD SetPassword(char * aPassword) = 0;
/* attribute string username; */
NS_IMETHOD GetUsername(char * *aUsername) = 0;
NS_IMETHOD SetUsername(char * aUsername) = 0;
/* attribute boolean needsExtraInfo; */
NS_IMETHOD IsNeedsExtraInfo(PRBool *aIsNeedsExtraInfo) = 0;
NS_IMETHOD SetNeedsExtraInfo(PRBool aNeedsExtraInfo) = 0;
};
#endif /* __nsIMsgNewsgroup_h__ */

Просмотреть файл

@ -0,0 +1,34 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "nsISupports.idl"
[object, uuid(E628ED10-9452-11d2-B7EA-00805F05FFA5)]
interface nsINetNewsgroup : nsISupports {
attribute string prettyName;
attribute string password;
attribute string username;
attribute boolean needsExtraInfo;
};

Просмотреть файл

@ -0,0 +1,47 @@
/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM nsIMsgXOVERParser.idl
*/
#ifndef __nsIMsgXOVERParser_h__
#define __nsIMsgXOVERParser_h__
#include "nsISupports.h" /* interface nsISupports */
/* starting interface nsIMsgXOVERParser */
/* {E628ED19-9452-11d2-B7EA-00805F05FFA5} */
#define NS_IMSGXOVERPARSER_IID_STR "E628ED19-9452-11d2-B7EA-00805F05FFA5"
#define NS_IMSGXOVERPARSER_IID \
{0xE628ED19, 0x9452, 0x11d2, \
{ 0xB7, 0xEA, 0x00, 0x80, 0x5F, 0x05, 0xFF, 0xA5 }}
class nsIMsgXOVERParser : public nsISupports {
private:
void operator delete(void *); // NOT TO BE IMPLEMENTED
public:
static const nsIID& IID() {
static nsIID iid = NS_IMSGXOVERPARSER_IID;
return iid;
}
/* void Init(in string hostname, in string groupname, in first_message, in last_message, in oldest_message, in newest_message); */
NS_IMETHOD Init(const char *hostname, const char *groupname, PRInt32 first_message, PRInt32 last_message, PRInt32 oldest_message, PRInt32 newest_message) = 0;
/* void Process(in string line, out status); */
NS_IMETHOD Process(const char *line, PRInt32 *status) = 0;
/* void ProcessNonXOVER(in string line); */
NS_IMETHOD ProcessNonXOVER(const char *line) = 0;
/* void Reset(); */
NS_IMETHOD Reset() = 0;
/* void Finish(in status, out newstatus); */
NS_IMETHOD Finish(PRInt32 status, PRInt32 *newstatus) = 0;
/* void ClearState(); */
NS_IMETHOD ClearState() = 0;
};
#endif /* __nsIMsgXOVERParser_h__ */

Просмотреть файл

@ -0,0 +1,46 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "nsISupports.idl"
[object, uuid(E628ED19-9452-11d2-B7EA-00805F05FFA5)]
interface nsIMsgXOVERParser : nsISupports {
/* The NNTP module of netlib calls these to feed XOVER data to the message
library, in response to a news:group.name URL having been opened.
If MSG_FinishXOVER() returns a message ID, that message will be loaded
next (used for selecting the first unread message in a group after
listing that group.)
depricated:
The "out" arguments are (if non-NULL) a file descriptor to write the XOVER
line to, followed by a "\n". This is used by the XOVER-caching code.
*/
/* the XOVER Sink should maintain the ListNewsGroupState */
void Init(in string hostname, in string groupname,
in long first_message, in long last_message,
in long oldest_message, in long newest_message);
void Process(in string line, out long status);
void ProcessNonXOVER(in string line);
void Reset();
void Finish(in long status, out long newstatus);
void ClearState();
};