1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this
4  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 
6 #ifndef NS_NEWSUTILS_H
7 #define NS_NEWSUTILS_H
8 
9 #include "nsString.h"
10 #include "MailNewsTypes2.h"
11 
12 #define kNewsRootURI "news:/"
13 #define kNntpRootURI "nntp:/"
14 #define kNewsMessageRootURI "news-message:/"
15 #define kNewsURIGroupQuery "?group="
16 #define kNewsURIKeyQuery "&key="
17 
18 #define kNewsRootURILen 6
19 #define kNntpRootURILen 6
20 #define kNewsMessageRootURILen 14
21 #define kNewsURIGroupQueryLen 7
22 #define kNewsURIKeyQueryLen 5
23 
24 extern nsresult nsParseNewsMessageURI(const nsACString& uri, nsCString& group,
25                                       nsMsgKey* key);
26 
27 extern nsresult nsCreateNewsBaseMessageURI(const nsACString& baseURI,
28                                            nsCString& baseMessageURI);
29 
30 #endif  // NS_NEWSUTILS_H
31