java.net
Class Authenticator
This abstract class provides a model for obtaining authentication
information (in the form of a username and password) required by
some network operations (such as hitting a password protected
web site).
To make use of this feature, a programmer must create a subclass
that knows how to obtain the necessary info. An example
would be a class that popped up a dialog box to prompt the user.
After creating an instance of that subclass, the static
setDefault
method of this class is called to set up
that instance as the object to use on subsequent calls to obtain
authorization.
Authenticator() - Default, no-argument constructor for subclasses to call.
|
protected PasswordAuthentication | getPasswordAuthentication() - This method is called whenever a request for authentication is made.
|
protected String | getRequestingHost() - Returns the hostname of the host or proxy requesting authorization,
or
null if not available.
|
protected int | getRequestingPort() - This method returns the port of the site that is requesting
authentication.
|
protected String | getRequestingPrompt() - Returns the prompt that should be used when requesting authentication
information from the user
|
protected String | getRequestingProtocol() - This method returns the requesting protocol of the operation that is
requesting authentication
|
protected String | getRequestingScheme() - This method returns the authentication scheme in use
|
protected InetAddress | getRequestingSite() - This method returns the address of the site that is requesting
authentication.
|
static PasswordAuthentication | requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme) - This method is called whenever a username and password for a given
network operation is required.
|
static PasswordAuthentication | requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String scheme) - This method is called whenever a username and password for a given
network operation is required.
|
static void | setDefault(Authenticator defAuth) - This method sets the default
Authenticator object (an
instance of a subclass of Authenticator ) to use when
prompting the user for
information.
|
clone , equals , extends Object> getClass , finalize , hashCode , notify , notifyAll , toString , wait , wait , wait |
Authenticator
public Authenticator()
Default, no-argument constructor for subclasses to call.
getPasswordAuthentication
protected PasswordAuthentication getPasswordAuthentication()
This method is called whenever a request for authentication is made. It
can call the other getXXX methods to determine the information relevant
to this request. Subclasses should override this method, which returns
null
by default.
- The
PasswordAuthentication
information
getRequestingHost
protected final String getRequestingHost()
Returns the hostname of the host or proxy requesting authorization,
or null
if not available.
- The name of the host requesting authentication, or
null
if it is not available.
getRequestingPort
protected final int getRequestingPort()
This method returns the port of the site that is requesting
authentication.
getRequestingPrompt
protected final String getRequestingPrompt()
Returns the prompt that should be used when requesting authentication
information from the user
getRequestingProtocol
protected final String getRequestingProtocol()
This method returns the requesting protocol of the operation that is
requesting authentication
getRequestingScheme
protected final String getRequestingScheme()
This method returns the authentication scheme in use
- The authentication scheme
getRequestingSite
protected final InetAddress getRequestingSite()
This method returns the address of the site that is requesting
authentication.
- The requesting site's address
requestPasswordAuthentication
public static PasswordAuthentication requestPasswordAuthentication(String host,
InetAddress addr,
int port,
String protocol,
String prompt,
String scheme)
throws SecurityException
This method is called whenever a username and password for a given
network operation is required. First, a security check is made to see
if the caller has the "requestPasswordAuthentication"
permission. If not, the method thows an exception. If there is no
default Authenticator
object, the method then returns
null
. Otherwise, the default authenticators's instance
variables are initialized and it's getPasswordAuthentication
method is called to get the actual authentication information to return.
This method is the preferred one as it can be used with hostname
when addr is unknown.
host
- The hostname requesting authenticationaddr
- The address requesting authenticationport
- The port requesting authenticationprotocol
- The protocol requesting authenticationprompt
- The prompt to display to the user when requesting
authentication infoscheme
- The authentication scheme in use
- A
PasswordAuthentication
object with the user's
authentication info.
requestPasswordAuthentication
public static PasswordAuthentication requestPasswordAuthentication(InetAddress addr,
int port,
String protocol,
String prompt,
String scheme)
throws SecurityException
This method is called whenever a username and password for a given
network operation is required. First, a security check is made to see
if the caller has the "requestPasswordAuthentication"
permission. If not, the method thows an exception. If there is no
default Authenticator
object, the method then returns
null
. Otherwise, the default authenticators's instance
variables are initialized and it's getPasswordAuthentication
method is called to get the actual authentication information to return.
addr
- The address requesting authenticationport
- The port requesting authenticationprotocol
- The protocol requesting authenticationprompt
- The prompt to display to the user when requesting
authentication infoscheme
- The authentication scheme in use
- A
PasswordAuthentication
object with the user's
authentication info.
setDefault
public static void setDefault(Authenticator defAuth)
This method sets the default Authenticator
object (an
instance of a subclass of Authenticator
) to use when
prompting the user for
information. Note that this method checks to see if the caller is
allowed to set this value (the "setDefaultAuthenticator" permission)
and throws a SecurityException
if it is not.
defAuth
- The new default Authenticator
object to use
Authenticator.java -- Abstract class for obtaining authentication info
Copyright (C) 1998, 2000, 2003 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version.