Package org.apache.sshd.client.session
Class ClientUserAuthService
- java.lang.Object
-
- org.apache.sshd.common.util.logging.AbstractLoggingBean
-
- org.apache.sshd.common.util.closeable.IoBaseCloseable
-
- org.apache.sshd.common.util.closeable.AbstractCloseable
-
- org.apache.sshd.client.session.ClientUserAuthService
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Channel
,ClientSessionHolder
,Closeable
,PropertyResolver
,Service
,SessionContextHolder
,SessionHolder<Session>
public class ClientUserAuthService extends AbstractCloseable implements Service, ClientSessionHolder
Client sidessh-auth
service.- Author:
- Apache MINA SSHD Project
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.sshd.common.util.closeable.AbstractCloseable
AbstractCloseable.State
-
-
Field Summary
Fields Modifier and Type Field Description protected List<UserAuthFactory>
authFactories
protected AtomicReference<AuthFuture>
authFutureHolder
The AuthFuture that is being used by the current auth request.protected List<String>
clientMethods
protected ClientSessionImpl
clientSession
protected List<String>
serverMethods
-
Fields inherited from class org.apache.sshd.common.util.closeable.AbstractCloseable
closeFuture, futureLock, state
-
Fields inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
log
-
Fields inherited from interface org.apache.sshd.common.PropertyResolver
EMPTY
-
-
Constructor Summary
Constructors Constructor Description ClientUserAuthService(Session s)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AuthFuture
auth(String service)
protected AuthFuture
createAuthFuture(ClientSession session, String service)
ClientSession
getClientSession()
String
getCurrentServiceName()
Map<String,Object>
getProperties()
ClientSession
getSession()
protected void
preClose()
void
process(int cmd, Buffer buffer)
Service the request.protected void
processUserAuth(Buffer buffer)
Execute one step in user authentication.protected IoWriteFuture
sendInitialAuthRequest(ClientSession session, String service)
void
start()
protected void
tryNext(int cmd)
protected AuthFuture
updateCurrentAuthFuture(ClientSession session, String service)
-
Methods inherited from class org.apache.sshd.common.util.closeable.AbstractCloseable
addCloseFutureListener, builder, close, doCloseGracefully, doCloseImmediately, getFutureLock, isClosed, isClosing, removeCloseFutureListener
-
Methods inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warn
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.sshd.common.Closeable
addCloseFutureListener, close, close, isClosed, isClosing, isOpen, removeCloseFutureListener
-
Methods inherited from interface org.apache.sshd.common.PropertyResolver
getBoolean, getBooleanProperty, getCharset, getInteger, getIntProperty, getLong, getLongProperty, getObject, getString, getStringProperty, isEmpty
-
Methods inherited from interface org.apache.sshd.common.Service
getParentPropertyResolver
-
Methods inherited from interface org.apache.sshd.common.session.SessionHolder
getSessionContext
-
-
-
-
Field Detail
-
authFutureHolder
protected final AtomicReference<AuthFuture> authFutureHolder
The AuthFuture that is being used by the current auth request. This encodes the state. isSuccess -> authenticated, else if isDone -> server waiting for user auth, else authenticating.
-
clientSession
protected final ClientSessionImpl clientSession
-
authFactories
protected final List<UserAuthFactory> authFactories
-
-
Constructor Detail
-
ClientUserAuthService
public ClientUserAuthService(Session s)
-
-
Method Detail
-
getSession
public ClientSession getSession()
- Specified by:
getSession
in interfaceSessionHolder<Session>
-
getClientSession
public ClientSession getClientSession()
- Specified by:
getClientSession
in interfaceClientSessionHolder
- Returns:
- The underlying
ClientSession
used
-
getProperties
public Map<String,Object> getProperties()
- Specified by:
getProperties
in interfacePropertyResolver
-
getCurrentServiceName
public String getCurrentServiceName()
-
auth
public AuthFuture auth(String service) throws IOException
- Throws:
IOException
-
updateCurrentAuthFuture
protected AuthFuture updateCurrentAuthFuture(ClientSession session, String service) throws IOException
- Throws:
IOException
-
createAuthFuture
protected AuthFuture createAuthFuture(ClientSession session, String service) throws IOException
- Throws:
IOException
-
sendInitialAuthRequest
protected IoWriteFuture sendInitialAuthRequest(ClientSession session, String service) throws IOException
- Throws:
IOException
-
process
public void process(int cmd, Buffer buffer) throws Exception
Description copied from interface:Service
Service the request.
-
processUserAuth
protected void processUserAuth(Buffer buffer) throws Exception
Execute one step in user authentication.
-
preClose
protected void preClose()
- Overrides:
preClose
in classAbstractCloseable
-
-