Package org.tmatesoft.svn.cli
Class SVNConsoleAuthenticationProvider
java.lang.Object
org.tmatesoft.svn.cli.SVNConsoleAuthenticationProvider
- All Implemented Interfaces:
ISVNAuthenticationProvider
,ISVNAuthStoreHandler
,ISVNGnomeKeyringPasswordProvider
,ISVNSSLPasspharsePromptSupport
public class SVNConsoleAuthenticationProvider
extends java.lang.Object
implements ISVNAuthenticationProvider, ISVNSSLPasspharsePromptSupport, ISVNAuthStoreHandler, ISVNGnomeKeyringPasswordProvider
- Version:
- 1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int
private final boolean
private java.util.Map<java.lang.String,
java.lang.Integer> private static final java.lang.String
private static final java.lang.String
private static final java.lang.String
private static final java.lang.String
private static final java.lang.String
private final java.util.EnumSet<SVNCertificateFailureKind>
Fields inherited from interface org.tmatesoft.svn.core.auth.ISVNAuthenticationProvider
ACCEPTED, ACCEPTED_TEMPORARY, REJECTED
-
Constructor Summary
ConstructorsConstructorDescriptionSVNConsoleAuthenticationProvider
(boolean trustServerCertificate) SVNConsoleAuthenticationProvider
(java.util.EnumSet<SVNCertificateFailureKind> trustServerCertificateFailureKinds) -
Method Summary
Modifier and TypeMethodDescriptionint
acceptServerAuthentication
(SVNURL url, java.lang.String realm, java.lang.Object certificate, boolean resultMayBeStored) Checks a server authentication certificate and whether accepts it (if the client trusts it) or not.boolean
canStorePlainTextPassphrases
(java.lang.String realm, SVNAuthentication auth) boolean
canStorePlainTextPasswords
(java.lang.String realm, SVNAuthentication auth) char[]
getKeyringPassword
(java.lang.String keyringName) private boolean
isPlainTextAllowed
(java.lang.String realm, java.lang.String promptText, java.lang.String promptString) boolean
private static void
printRealm
(java.lang.String realm) private static java.lang.String
prompt
(java.lang.String label) private static char[]
promptPassword
(java.lang.String label) private static java.lang.String
readLine()
requestClientAuthentication
(java.lang.String kind, SVNURL url, java.lang.String realm, SVNErrorMessage errorMessage, SVNAuthentication previousAuth, boolean authMayBeStored) Returns a next user credential of the specified kind for the given authentication realm.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
OUR_PASSPHRASE_PROMPT_TEXT
private static final java.lang.String OUR_PASSPHRASE_PROMPT_TEXT- See Also:
-
OUR_PASSWORD_PROMPT_TEXT
private static final java.lang.String OUR_PASSWORD_PROMPT_TEXT- See Also:
-
OUR_HOST_KEY_PROMPT_TEXT
private static final java.lang.String OUR_HOST_KEY_PROMPT_TEXT- See Also:
-
OUR_PASSWORD_PROMPT_STRING
private static final java.lang.String OUR_PASSWORD_PROMPT_STRING- See Also:
-
OUR_PASSPHRASE_PROMPT_STRING
private static final java.lang.String OUR_PASSPHRASE_PROMPT_STRING- See Also:
-
MAX_PROMPT_COUNT
private static final int MAX_PROMPT_COUNT- See Also:
-
myRequestsCount
private java.util.Map<java.lang.String,java.lang.Integer> myRequestsCount -
myIsTrustServerCertificate
private final boolean myIsTrustServerCertificate -
trustServerCertificateFailureKinds
-
-
Constructor Details
-
SVNConsoleAuthenticationProvider
public SVNConsoleAuthenticationProvider(java.util.EnumSet<SVNCertificateFailureKind> trustServerCertificateFailureKinds) -
SVNConsoleAuthenticationProvider
public SVNConsoleAuthenticationProvider(boolean trustServerCertificate)
-
-
Method Details
-
acceptServerAuthentication
public int acceptServerAuthentication(SVNURL url, java.lang.String realm, java.lang.Object certificate, boolean resultMayBeStored) Description copied from interface:ISVNAuthenticationProvider
Checks a server authentication certificate and whether accepts it (if the client trusts it) or not.This method is used by an SSL manager (see
DefaultSVNSSLTrustManager
).- Specified by:
acceptServerAuthentication
in interfaceISVNAuthenticationProvider
- Parameters:
url
- a repository location that is accessedrealm
- a repository authentication realm (host, port, realm string)certificate
- a server certificate objectresultMayBeStored
- if true then the server certificate can be cached, otherwise not- Returns:
- the result of the certificate check (
ISVNAuthenticationProvider.REJECTED
,ISVNAuthenticationProvider.ACCEPTED_TEMPORARY
, orISVNAuthenticationProvider.ACCEPTED
)
-
requestClientAuthentication
public SVNAuthentication requestClientAuthentication(java.lang.String kind, SVNURL url, java.lang.String realm, SVNErrorMessage errorMessage, SVNAuthentication previousAuth, boolean authMayBeStored) Description copied from interface:ISVNAuthenticationProvider
Returns a next user credential of the specified kind for the given authentication realm.If this provider has got more than one credentials (say, a list of credentials), to get the first one of them
previousAuth
is set to null.- Specified by:
requestClientAuthentication
in interfaceISVNAuthenticationProvider
- Parameters:
kind
- a credential kind (for example, like those defined inISVNAuthenticationManager
)url
- a repository location that is to be accessedrealm
- a repository authentication realm (host, port, realm string)errorMessage
- the recent authentication failure error messagepreviousAuth
- the credential that was previously retrieved (to tell if it's not accepted)authMayBeStored
- if true then the returned credential can be cached, otherwise it won't be cached anyway- Returns:
- a next user credential
-
canStorePlainTextPasswords
public boolean canStorePlainTextPasswords(java.lang.String realm, SVNAuthentication auth) throws SVNException - Specified by:
canStorePlainTextPasswords
in interfaceISVNAuthStoreHandler
- Throws:
SVNException
-
canStorePlainTextPassphrases
public boolean canStorePlainTextPassphrases(java.lang.String realm, SVNAuthentication auth) throws SVNException - Specified by:
canStorePlainTextPassphrases
in interfaceISVNAuthStoreHandler
- Throws:
SVNException
-
isPlainTextAllowed
private boolean isPlainTextAllowed(java.lang.String realm, java.lang.String promptText, java.lang.String promptString) -
printRealm
private static void printRealm(java.lang.String realm) -
prompt
private static java.lang.String prompt(java.lang.String label) -
promptPassword
private static char[] promptPassword(java.lang.String label) -
readLine
private static java.lang.String readLine() -
isSSLPassphrasePromtSupported
public boolean isSSLPassphrasePromtSupported()- Specified by:
isSSLPassphrasePromtSupported
in interfaceISVNSSLPasspharsePromptSupport
-
getKeyringPassword
- Specified by:
getKeyringPassword
in interfaceISVNGnomeKeyringPasswordProvider
- Throws:
SVNException
-