|
1 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
4 |
|
5 #include "nsISupports.idl" |
|
6 |
|
7 interface nsICommandLine; |
|
8 |
|
9 /** |
|
10 * Validates arguments on the command line of an XUL application. |
|
11 * |
|
12 * Each validator is registered in the category "command-line-validator". |
|
13 * The entries in this category are read in alphabetical order, and each |
|
14 * category value is treated as a service contractid implementing this |
|
15 * interface. |
|
16 * |
|
17 * By convention, validator with ordinary priority should begin with "m". |
|
18 * |
|
19 * Example: |
|
20 * Category Entry Value |
|
21 * command-line-validator b-browser @mozilla.org/browser/clh;1 |
|
22 * command-line-validator m-edit @mozilla.org/composer/clh;1 |
|
23 * command-line-validator m-irc @mozilla.org/chatzilla/clh;1 |
|
24 * |
|
25 */ |
|
26 |
|
27 [scriptable, uuid(5ecaa593-7660-4a3a-957a-92d5770671c7)] |
|
28 interface nsICommandLineValidator : nsISupports |
|
29 { |
|
30 /** |
|
31 * Process the command-line validators in the proper order, calling |
|
32 * "validate()" on each. |
|
33 * |
|
34 * @throws NS_ERROR_ABORT if any validator throws NS_ERROR_ABORT. All other |
|
35 * errors thrown by validators will be silently ignored. |
|
36 */ |
|
37 void validate(in nsICommandLine aCommandLine); |
|
38 }; |