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, ILifecycle, ILifecycle.DeferrableActivation, 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.DeferrableActivation
 
Field Summary
 
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  void createChallenge(INegotiationContext context, ByteBuffer challenge)
           
protected  void doBeforeActivate()
           
 String getEncryptionAlgorithmName()
           
 int getEncryptionIterationCount()
           
 byte[] getEncryptionSaltBytes()
           
protected  IChallengeResponse.State getState(INegotiationContext subject)
           
protected  void handleAcknowledgement(INegotiationContext context, boolean success)
           
protected  void handleChallenge(INegotiationContext context, ByteBuffer challenge, ByteBuffer response)
           
protected  boolean handleResponse(INegotiationContext context, ByteBuffer response)
           
 void setEncryptionAlgorithmName(String encryptionAlgorithmName)
           
 void setEncryptionIterationCount(int encryptionIterationCount)
           
 void setEncryptionSaltBytes(byte[] encryptionSaltBytes)
           
protected  void setState(INegotiationContext subject, IChallengeResponse.State state)
           
 
Methods inherited from class org.eclipse.net4j.util.security.Negotiator
getBufferEvent, getFailureState, getInitialState, getStartEvent, getSuccessState, handleFailure, handleSuccess, 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, doActivate, doAfterActivate, doBeforeDeactivate, doDeactivate, dump, getLifecycleState, isActive, isDeferredActivation, toString
 
Methods inherited from class org.eclipse.net4j.util.event.Notifier
addListener, fireEvent, fireEvent, fireEvent, fireThrowable, firstListenerAdded, getListeners, getNotificationService, hasListeners, lastListenerRemoved, removeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.net4j.util.event.INotifier
addListener, getListeners, hasListeners, removeListener
 

Constructor Detail

ChallengeResponseNegotiator

public ChallengeResponseNegotiator(boolean initiator)
Method Detail

getEncryptionAlgorithmName

public String getEncryptionAlgorithmName()
Since:
2.0

setEncryptionAlgorithmName

public void setEncryptionAlgorithmName(String encryptionAlgorithmName)
Since:
2.0

getEncryptionSaltBytes

public byte[] getEncryptionSaltBytes()
Since:
2.0

setEncryptionSaltBytes

public void setEncryptionSaltBytes(byte[] encryptionSaltBytes)
Since:
2.0

getEncryptionIterationCount

public int getEncryptionIterationCount()
Since:
2.0

setEncryptionIterationCount

public void setEncryptionIterationCount(int encryptionIterationCount)
Since:
2.0

doBeforeActivate

protected void doBeforeActivate()
                         throws Exception
Overrides:
doBeforeActivate in class Lifecycle
Throws:
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 void createChallenge(INegotiationContext context,
                               ByteBuffer challenge)

handleChallenge

protected void handleChallenge(INegotiationContext context,
                               ByteBuffer challenge,
                               ByteBuffer response)

handleResponse

protected boolean handleResponse(INegotiationContext context,
                                 ByteBuffer response)

handleAcknowledgement

protected void handleAcknowledgement(INegotiationContext context,
                                     boolean success)
Since:
2.0


Copyright (c) 2011, 2012 Eike Stepper (Berlin, Germany) and others.