Package org.frankframework.pipes
Class PasswordGeneratorPipe
java.lang.Object
org.frankframework.core.TransactionAttributes
org.frankframework.pipes.AbstractPipe
org.frankframework.pipes.FixedForwardPipe
org.frankframework.pipes.PasswordGeneratorPipe
- All Implemented Interfaces:
HasTransactionAttribute
,IConfigurable
,IConfigurationAware
,IForwardTarget
,INamedObject
,IPipe
,IScopeProvider
,IWithParameters
,EventThrowing
,HasStatistics
,org.springframework.beans.factory.Aware
,org.springframework.context.ApplicationContextAware
@EnterpriseIntegrationPattern(TRANSLATOR)
public class PasswordGeneratorPipe
extends FixedForwardPipe
Generates a random password.
- Since:
- 4.5
- Author:
- Milan Tomc
-
Field Summary
Fields inherited from class org.frankframework.pipes.AbstractPipe
parameterNamesMustBeUnique
Fields inherited from class org.frankframework.core.TransactionAttributes
log
Fields inherited from interface org.frankframework.core.IPipe
LONG_DURATION_MONITORING_EVENT, MESSAGE_SIZE_MONITORING_EVENT, PIPE_EXCEPTION_MONITORING_EVENT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
checks for correct configuration of forwarddoPipe
(Message message, PipeLineSession session) This is where the action takes place.protected String
garbleString
(String input) Change the order of the characters in aString
protected String
generate
(int numOfLCharacters, int numOfUCharacters, int numOfSigns, int numOfNumbers) int
int
int
int
protected String
getRandomElementsOfString
(String input, int count) getSigns()
void
setLCharacters
(String lCharacters) The lowercase characters to use.void
setNumbers
(String numbers) The numbers to use.void
setNumOfDigits
(int i) The number of digits in the generated password.void
setNumOfLCharacters
(int i) The number of lowercase characters in the generated password.void
setNumOfSigns
(int i) The number of sign characters in the generated password.void
setNumOfUCharacters
(int i) The number of uppercase characters in the generated password.void
The signs to use.void
setUCharacters
(String uCharacters) The uppercase characters to use.void
setUseSecureRandom
(boolean b) Deprecated, for removal: This API element is subject to removal in a future version.the current implementation always uses SecureRandom.Methods inherited from class org.frankframework.pipes.FixedForwardPipe
getIfParam, getIfValue, getOnlyIfSessionKey, getOnlyIfValue, getParameterValue, getSuccessForward, getUnlessSessionKey, getUnlessValue, isSkipOnEmptyInput, setIfParam, setIfValue, setOnlyIfSessionKey, setOnlyIfValue, setSkipOnEmptyInput, setUnlessSessionKey, setUnlessValue, skipPipe
Methods inherited from class org.frankframework.pipes.AbstractPipe
addForward, addParameter, consumesSessionVariable, createBean, findForward, getAdapter, getApplicationContext, getChompCharSize, getConfigurationClassLoader, getDurationThreshold, getElementToMove, getElementToMoveChain, getElementToMoveSessionKey, getEmptyInputReplacement, getEventSourceName, getForwards, getGetInputFromFixedValue, getGetInputFromSessionKey, getHideRegex, getLocker, getLogIntermediaryResults, getMaxThreads, getName, getParameterList, getPipeLine, getSecLogSessionKeys, getStoreResultInSessionKey, hasRegisteredForward, isPreserveInput, isRemoveCompactMsgNamespaces, isRestoreMovedElements, isWriteToSecLog, registerEvent, setApplicationContext, setChompCharSize, setDurationThreshold, setElementToMove, setElementToMoveChain, setElementToMoveSessionKey, setEmptyInputReplacement, setEventPublisher, setGetInputFromFixedValue, setGetInputFromSessionKey, setHideRegex, setLocker, setLogIntermediaryResults, setMaxThreads, setName, setPipeLine, setPreserveInput, setRemoveCompactMsgNamespaces, setRestoreMovedElements, setSecLogSessionKeys, setSizeStatistics, setStoreResultInSessionKey, setWriteToSecLog, sizeStatisticsEnabled, start, stop, throwEvent
Methods inherited from class org.frankframework.core.TransactionAttributes
configureTransactionAttributes, getTransactionAttribute, getTransactionTimeout, getTxDef, isTransacted, isTransacted, setTransacted, setTransactionAttribute, setTransactionTimeout
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.frankframework.core.IPipe
throwEvent
-
Constructor Details
-
PasswordGeneratorPipe
public PasswordGeneratorPipe()
-
-
Method Details
-
configure
Description copied from class:FixedForwardPipe
checks for correct configuration of forward- Specified by:
configure
in interfaceIConfigurable
- Specified by:
configure
in interfaceIPipe
- Overrides:
configure
in classFixedForwardPipe
- Throws:
ConfigurationException
-
doPipe
Description copied from interface:IPipe
This is where the action takes place. Pipes may only throw a PipeRunException, to be handled by the caller of this object. Implementations must either consume the message, or pass it on to the next Pipe in the PipeRunResult. If the result of the Pipe does not depend on the input, like for theFixedResultPipe
, the Pipe can schedule the input to be closed at session exit, by callingMessage.closeOnCloseOf(PipeLineSession, String)
This allows the previous Pipe to release any resources (e.g. connections) that it might have kept open until the message was consumed. Doing so avoids connections leaking from pools, while it enables efficient streaming processing of data while it is being read from a stream.- Throws:
PipeRunException
-
generate
protected String generate(int numOfLCharacters, int numOfUCharacters, int numOfSigns, int numOfNumbers) -
getRandomElementsOfString
-
garbleString
Change the order of the characters in aString
-
setUseSecureRandom
@Deprecated(forRemoval=true, since="8.2.0") @ConfigurationWarning("the current implementation always uses SecureRandom. Please remove this attribute from the Configuration.") public void setUseSecureRandom(boolean b) Deprecated, for removal: This API element is subject to removal in a future version.the current implementation always uses SecureRandom. Please remove this attribute from the Configuration.Whether the secureRandom algorithm is used.- Default value
- true
-
getLCharacters
-
setLCharacters
The lowercase characters to use.- Default value
- ('a'..'z')
-
getUCharacters
-
setUCharacters
The uppercase characters to use.- Default value
- ('A'..'Z')
-
getNumbers
-
setNumbers
The numbers to use.- Default value
- ('0'..'9')
-
getSigns
-
setSigns
The signs to use.- Default value
- (;:_%$#@!><)
-
getNumOfLCharacters
public int getNumOfLCharacters() -
getNumOfDigits
public int getNumOfDigits() -
getNumOfSigns
public int getNumOfSigns() -
getNumOfUCharacters
public int getNumOfUCharacters() -
setNumOfLCharacters
public void setNumOfLCharacters(int i) The number of lowercase characters in the generated password.- Default value
- 2
-
setNumOfDigits
public void setNumOfDigits(int i) The number of digits in the generated password.- Default value
- 2
-
setNumOfSigns
public void setNumOfSigns(int i) The number of sign characters in the generated password.- Default value
- 2
-
setNumOfUCharacters
public void setNumOfUCharacters(int i) The number of uppercase characters in the generated password.- Default value
- 2
-