org.eclipse.net4j.util.security
Class ChallengeResponseNegotiator

java.lang.Object
  extended by org.eclipse.net4j.util.event.Notifier
      extended by org.eclipse.net4j.util.lifecycle.Lifecycle
          extended by org.eclipse.net4j.util.fsm.FiniteStateMachine<STATE,EVENT,INegotiationContext>
              extended by org.eclipse.net4j.util.security.Negotiator<IChallengeResponse.State,IChallengeResponse.Event>
                  extended by org.eclipse.net4j.util.security.ChallengeResponseNegotiator
All Implemented Interfaces:
INotifier, INotifier.Introspection, ILifecycle, ILifecycle.Introspection, IChallengeResponse, INegotiationContext.Receiver, INegotiator
Direct Known Subclasses:
ChallengeNegotiator, ResponseNegotiator

public abstract class ChallengeResponseNegotiator
extends Negotiator<IChallengeResponse.State,IChallengeResponse.Event>
implements IChallengeResponse


Nested Class Summary
protected  class ChallengeResponseNegotiator.Transition
           
 
Nested classes/interfaces inherited from class org.eclipse.net4j.util.fsm.FiniteStateMachine
FiniteStateMachine.ChangeStateTransition, FiniteStateMachine.FailTransition, FiniteStateMachine.IgnoreTransition, FiniteStateMachine.StateChangedEvent
 
Nested classes/interfaces inherited from interface org.eclipse.net4j.util.security.IChallengeResponse
IChallengeResponse.Event, IChallengeResponse.State
 
Nested classes/interfaces inherited from interface org.eclipse.net4j.util.lifecycle.ILifecycle
ILifecycle.Introspection
 
Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier
INotifier.Introspection
 
Field Summary
static java.lang.String DEFAULT_ALGORITHM_NAME
           
 
Fields inherited from class org.eclipse.net4j.util.fsm.FiniteStateMachine
FAIL, IGNORE
 
Fields inherited from class org.eclipse.net4j.util.lifecycle.Lifecycle
USE_LABEL
 
Fields inherited from interface org.eclipse.net4j.util.security.IChallengeResponse
ACKNOWLEDGE_FAILURE, ACKNOWLEDGE_SUCCESS
 
Constructor Summary
ChallengeResponseNegotiator(boolean initiator)
           
 
Method Summary
protected abstract  void createChallenge(INegotiationContext context, java.nio.ByteBuffer challenge)
           
protected  void doBeforeActivate()
           
 java.lang.String getAlgorithmName()
           
protected  IChallengeResponse.State getState(INegotiationContext subject)
           
protected abstract  void handleChallenge(INegotiationContext context, java.nio.ByteBuffer challenge, java.nio.ByteBuffer response)
           
protected abstract  boolean handleResponse(INegotiationContext context, java.nio.ByteBuffer response)
           
 void setAlgorithmName(java.lang.String algorithmName)
           
protected  void setState(INegotiationContext subject, IChallengeResponse.State state)
           
 
Methods inherited from class org.eclipse.net4j.util.security.Negotiator
getBufferEvent, getFailureState, getInitialState, getStartEvent, getSuccessState, isInitiator, negotiate, postProcess, receiveBuffer
 
Methods inherited from class org.eclipse.net4j.util.fsm.FiniteStateMachine
changeState, createFailTransition, createIgnoreTransition, formatFailMessage, formatIgnoreMessage, formatProcessMessage, getEvents, getStates, getTransition, init, init, initAll, initAll, initEvents, initEvents, initStates, initStates, process
 
Methods inherited from class org.eclipse.net4j.util.lifecycle.Lifecycle
activate, checkActive, checkArg, checkArg, checkInactive, checkNull, checkState, checkState, deactivate, deferredActivate, deferredDeactivate, doActivate, doBeforeDeactivate, doDeactivate, dump, getLifecycleState, isActive, isDeferredActivation, isDeferredDeactivation, toString
 
Methods inherited from class org.eclipse.net4j.util.event.Notifier
addListener, fireEvent, getListeners, hasListeners, removeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT_ALGORITHM_NAME

public static final java.lang.String DEFAULT_ALGORITHM_NAME
See Also:
Constant Field Values
Constructor Detail

ChallengeResponseNegotiator

public ChallengeResponseNegotiator(boolean initiator)
Method Detail

getAlgorithmName

public java.lang.String getAlgorithmName()

setAlgorithmName

public void setAlgorithmName(java.lang.String algorithmName)

doBeforeActivate

protected void doBeforeActivate()
                         throws java.lang.Exception
Overrides:
doBeforeActivate in class Lifecycle
Throws:
java.lang.Exception

getState

protected IChallengeResponse.State getState(INegotiationContext subject)
Specified by:
getState in class FiniteStateMachine<IChallengeResponse.State,IChallengeResponse.Event,INegotiationContext>

setState

protected void setState(INegotiationContext subject,
                        IChallengeResponse.State state)
Specified by:
setState in class FiniteStateMachine<IChallengeResponse.State,IChallengeResponse.Event,INegotiationContext>

createChallenge

protected abstract void createChallenge(INegotiationContext context,
                                        java.nio.ByteBuffer challenge)

handleChallenge

protected abstract void handleChallenge(INegotiationContext context,
                                        java.nio.ByteBuffer challenge,
                                        java.nio.ByteBuffer response)

handleResponse

protected abstract boolean handleResponse(INegotiationContext context,
                                          java.nio.ByteBuffer response)

Copyright (c) 2004 - 2008 Eike Stepper, Germany.
All Rights Reserved.