gecko-dev/toolkit/components/url-classifier/nsIUrlClassifierUtils.idl

66 строки
1.9 KiB
Plaintext

/* 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 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 (in string) for each list.
* @param aCount The array length of aList and aState.
*
* @returns A string to store request. Not null-terminated.
*/
ACString makeUpdateRequestV4([array, size_is(aCount)] in string aListNames,
[array, size_is(aCount)] in string aStates,
in uint32_t aCount);
};