Struct xpcom::interfaces::nsILoginManager [] [src]

#[repr(C)]
pub struct nsILoginManager { /* fields omitted */ }

interface nsILoginManager : nsISupports

Methods

impl nsILoginManager
[src]

[src]

Cast this nsILoginManager to one of its base interfaces.

impl nsILoginManager
[src]

[src]

/**
   * Store a new login in the login manager.
   *
   * @param aLogin
   *        The login to be added.
   * @return a clone of the login info with the guid set (even if it was not provided)
   *
   * Default values for the login's nsILoginMetaInfo properties will be
   * created. However, if the caller specifies non-default values, they will
   * be used instead.
   */

nsILoginInfo addLogin (in nsILoginInfo aLogin);

[src]

/**
   * Remove a login from the login manager.
   *
   * @param aLogin
   *        The login to be removed.
   *
   * The specified login must exactly match a stored login. However, the
   * values of any nsILoginMetaInfo properties are ignored.
   */

void removeLogin (in nsILoginInfo aLogin);

[src]

/**
   * Modify an existing login in the login manager.
   *
   * @param oldLogin
   *        The login to be modified.
   * @param newLoginData
   *        The new login values (either a nsILoginInfo or nsIProperyBag)
   *
   * If newLoginData is a nsILoginInfo, all of the old login's nsILoginInfo
   * properties are changed to the values from newLoginData (but the old
   * login's nsILoginMetaInfo properties are unmodified).
   *
   * If newLoginData is a nsIPropertyBag, only the specified properties
   * will be changed. The nsILoginMetaInfo properties of oldLogin can be
   * changed in this manner.
   *
   * If the propertybag contains an item named "timesUsedIncrement", the
   * login's timesUsed property will be incremented by the item's value.
   */

void modifyLogin (in nsILoginInfo oldLogin, in nsISupports newLoginData);

[src]

/**
   * Remove all logins known to login manager.
   *
   * The browser sanitization feature allows the user to clear any stored
   * passwords. This interface allows that to be done without getting each
   * login first (which might require knowing the master password).
   *
   */

void removeAllLogins ();

[src]

/**
   * Fetch all logins in the login manager. An array is always returned;
   * if there are no logins the array is empty.
   *
   * @param count
   *        The number of elements in the array. JS callers can simply use
   *        the array's .length property and omit this param.
   * @param logins
   *        An array of nsILoginInfo objects.
   *
   * NOTE: This can be called from JS as:
   *       var logins = pwmgr.getAllLogins();
   *       (|logins| is an array).
   */

void getAllLogins ([optional] out unsigned long count, [array, size_is (count), retval] out nsILoginInfo logins);

[src]

/**
   * Obtain a list of all hosts for which password saving is disabled.
   *
   * @param count
   *        The number of elements in the array. JS callers can simply use
   *        the array's .length property and omit this param.
   * @param hostnames
   *        An array of hostname strings, in origin URL format without a
   *        pathname. For example: "https://www.site.com".
   *
   * NOTE: This can be called from JS as:
   *       var logins = pwmgr.getDisabledAllLogins();
   */

void getAllDisabledHosts ([optional] out unsigned long count, [array, size_is (count), retval] out wstring hostnames);

[src]

/**
   * Check to see if saving logins has been disabled for a host.
   *
   * @param aHost
   *        The hostname to check. This argument should be in the origin
   *        URL format, without a pathname. For example: "http://foo.com".
   */

boolean getLoginSavingEnabled (in AString aHost);

[src]

/**
   * Disable (or enable) storing logins for the specified host. When
   * disabled, the login manager will not prompt to store logins for
   * that host. Existing logins are not affected.
   *
   * @param aHost
   *        The hostname to set. This argument should be in the origin
   *        URL format, without a pathname. For example: "http://foo.com".
   * @param isEnabled
   *        Specify if saving logins should be enabled (true) or
   *        disabled (false)
   */

void setLoginSavingEnabled (in AString aHost, in boolean isEnabled);

[src]

/**
   * Search for logins matching the specified criteria. Called when looking
   * for logins that might be applicable to a form or authentication request.
   *
   * @param count
   *        The number of elements in the array. JS callers can simply use
   *        the array's .length property, and supply an dummy object for
   *        this out param. For example: |findLogins({}, hostname, ...)|
   * @param aHostname
   *        The hostname to restrict searches to, in URL format. For
   *        example: "http://www.site.com".
   *        To find logins for a given nsIURI, you would typically pass in
   *        its prePath.
   * @param aActionURL
   *        For form logins, this argument should be the URL to which the
   *        form will be submitted. For protocol logins, specify null.
   *        An empty string ("") will match any value (except null).
   * @param aHttpRealm
   *        For protocol logins, this argument should be the HTTP Realm
   *        for which the login applies. This is obtained from the
   *        WWW-Authenticate header. See RFC2617. For form logins,
   *        specify null.
   *        An empty string ("") will match any value (except null).
   * @param logins
   *        An array of nsILoginInfo objects.
   *
   * NOTE: This can be called from JS as:
   *       var logins = pwmgr.findLogins({}, hostname, ...);
   *
   */

void findLogins (out unsigned long count, in AString aHostname, in AString aActionURL, in AString aHttpRealm, [array, size_is (count), retval] out nsILoginInfo logins);

[src]

/**
   * Search for logins matching the specified criteria, as with
   * findLogins(). This interface only returns the number of matching
   * logins (and not the logins themselves), which allows a caller to
   * check for logins without causing the user to be prompted for a master
   * password to decrypt the logins.
   *
   * @param aHostname
   *        The hostname to restrict searches to. Specify an empty string
   *        to match all hosts. A null value will not match any logins, and
   *        will thus always return a count of 0.
   * @param aActionURL
   *        The URL to which a form login will be submitted. To match any
   *        form login, specify an empty string. To not match any form
   *        login, specify null.
   * @param aHttpRealm
   *        The HTTP Realm for which the login applies. To match logins for
   *        any realm, specify an empty string. To not match logins for any
   *        realm, specify null.
   */

unsigned long countLogins (in AString aHostname, in AString aActionURL, in AString aHttpRealm);

[src]

/**
   * Generate results for a userfield autocomplete menu.
   *
   * NOTE: This interface is provided for use only by the FormFillController,
   *       which calls it directly. This isn't really ideal, it should
   *       probably be callback registered through the FFC.
   */

void autoCompleteSearchAsync (in AString aSearchString, in nsIAutoCompleteResult aPreviousResult, in nsIDOMHTMLInputElement aElement, in nsIFormAutoCompleteObserver aListener);

[src]

/**
   * Stop a previously-started async search.
   */

void stopSearch ();

[src]

/**
   * Search for logins in the login manager. An array is always returned;
   * if there are no logins the array is empty.
   *
   * @param count
   *        The number of elements in the array. JS callers can simply use
   *        the array's .length property, and supply an dummy object for
   *        this out param. For example: |searchLogins({}, matchData)|
   * @param matchData
   *        The data used to search. This does not follow the same
   *        requirements as findLogins for those fields. Wildcard matches are
   *        simply not specified.
   * @param logins
   *        An array of nsILoginInfo objects.
   *
   * NOTE: This can be called from JS as:
   *       var logins = pwmgr.searchLogins({}, matchData);
   *       (|logins| is an array).
   */

void searchLogins (out unsigned long count, in nsIPropertyBag matchData, [array, size_is (count), retval] out nsILoginInfo logins);

[src]

/**
  * True when a master password prompt is being displayed.
  */

readonly attribute boolean uiBusy;

[src]

/**
  * True when the master password has already been entered, and so a caller
  * can ask for decrypted logins without triggering a prompt.
  */

readonly attribute boolean isLoggedIn;

Methods from Deref<Target = nsISupports>

[src]

Cast this nsISupports to one of its base interfaces.

[src]

void QueryInterface (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result);

[src]

[noscript,notxpcom] nsrefcnt AddRef ();

[src]

[noscript,notxpcom] nsrefcnt Release ();

Trait Implementations

impl XpCom for nsILoginManager
[src]

IID: nsIID = nsID(952628911, 32249, 18887, [181, 88, 39, 118, 178, 78, 108, 193])

[src]

Perform a QueryInterface call on this object, attempting to dynamically cast it to the requested interface type. Returns Some(RefPtr) if the cast succeeded, and None otherwise. Read more

impl RefCounted for nsILoginManager
[src]

[src]

Increment the reference count.

[src]

Decrement the reference count, potentially freeing backing memory.

impl Deref for nsILoginManager
[src]

The resulting type after dereferencing.

[src]

Dereferences the value.