File: nsIUrlClassifierUtils.idl

package info (click to toggle)
thunderbird 1%3A52.8.0-1~deb8u1
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 1,710,120 kB
  • sloc: cpp: 5,081,109; ansic: 2,051,982; python: 458,727; java: 241,615; xml: 193,367; asm: 178,649; sh: 81,881; makefile: 24,703; perl: 16,874; objc: 4,389; yacc: 1,816; ada: 1,697; lex: 1,257; pascal: 1,251; cs: 879; exp: 499; php: 436; lisp: 258; awk: 152; sed: 51; ruby: 47; csh: 27
file content (74 lines) | stat: -rw-r--r-- 2,220 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"
/**
 * Some utility methods used by the url classifier.
 */

interface nsIURI;

[scriptable, uuid(e4f0e59c-b922-48b0-a7b6-1735c1f96fed)]
interface nsIUrlClassifierUtils : nsISupports
{
  /**
   * Get the lookup string for a given URI.  This normalizes the hostname,
   * url-decodes the string, and strips off the protocol.
   *
   * @param uri URI to get the lookup key for.
   *
   * @returns String containing the canonicalized URI.
   */
  ACString getKeyForURI(in nsIURI uri);

  /**
   * Get the provider by table name.
   *
   * @param tableName The table name that we want to lookup
   *
   * @returns the provider name that the given table belongs.
   */
  ACString getProvider(in ACString tableName);

  /**
   * Get the protocol version for the given provider.
   *
   * @param provider String the provider name. e.g. "google"
   *
   * @returns String to indicate the protocol version. e.g. "2.2"
   */
  ACString getProtocolVersion(in ACString provider);

  /**
   * Convert threat type to list name.
   *
   * @param Integer to indicate threat type.
   *
   * @returns The list names separated by ','. For example,
   *          'goog-phish-proto,test-phish-proto'.
   */
  ACString convertThreatTypeToListNames(in uint32_t threatType);

  /**
   * Convert list name to threat type.
   *
   * @param The list name.
   *
   * @returns The threat type in integer.
   */
  uint32_t convertListNameToThreatType(in ACString listName);

  /**
   * Make update request for given lists and their states.
   *
   * @param aListNames An array of list name represented in string.
   * @param aState An array of states (encoded in base64 format) for each list.
   * @param aCount The array length of aList and aState.
   *
   * @returns A base64url encoded string.
   */
  ACString makeUpdateRequestV4([array, size_is(aCount)] in string aListNames,
                               [array, size_is(aCount)] in string aStatesBase64,
                               in uint32_t aCount);
};