From 9dce9fe79641381836132e063627b7f67a61657e Mon Sep 17 00:00:00 2001 From: "mscott%netscape.com" Date: Thu, 25 Mar 1999 04:48:01 +0000 Subject: [PATCH] (not part of build yet). New nntp service for processing nntp requests... --- mailnews/news/public/nsINntpService.h | 61 +++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 mailnews/news/public/nsINntpService.h diff --git a/mailnews/news/public/nsINntpService.h b/mailnews/news/public/nsINntpService.h new file mode 100644 index 000000000000..d9119aee6d65 --- /dev/null +++ b/mailnews/news/public/nsINntpService.h @@ -0,0 +1,61 @@ +/* -*- 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. + */ + +#ifndef nsINntpService_h___ +#define nsINntpService_h___ + +#include "nscore.h" +#include "nsISupports.h" +#include "nsFileSpec.h" + +/* 4C9F90E0-E19B-11d2-806E-006008128C4E} */ +#define NS_INNTPSERVICE_IID \ +{ 0x4c9f90e0, 0xe19b, 0x11d2, \ + { 0x80, 0x63, 0x0, 0x60, 0x8, 0x12, 0x8c, 0x4e } } + +/* 4C9F90E1-E19B-11d2-806E-006008128C4E */ +#define NS_NNTPSERVICE_CID \ +{ 0x4c9f90e1, 0xe19b, 0x11d2, \ + {0x80, 0x6e, 0x0, 0x60, 0x8, 0x12, 0x8c, 0x4e} } + +//////////////////////////////////////////////////////////////////////////////////////// +// The Nntp Service is an interfaced designed to make building and running nntp urls +// easier. I'm not sure if this service will go away when the new networking model comes +// on line (as part of the N2 project). So I reserve the right to change my mind and take +// this service away =). +//////////////////////////////////////////////////////////////////////////////////////// +class nsIURL; +class nsIUrlListener; + +class nsINntpService : public nsISupports +{ +public: + static const nsIID& GetIID() { static nsIID iid = NS_INNTPSERVICE_IID; return iid; } + + ///////////////////////////////////////////////////////////////////////////////////// + // We should have separate interface methods for each type of desired nntp action + // but for now I'm just passing in the urlSpec directly from the caller. + // (i.e we should have a method for downloading new news articles, discovering news + // groups for a host, etc..... + ///////////////////////////////////////////////////////////////////////////////////// + + NS_IMETHOD RunNewsUrl (const nsString& urlString, nsISupports * aConsumer, + nsIUrlListener * aUrlListener, nsIURL ** aURL) = 0; +}; + +#endif /* nsINntpService_h___ */