public abstract class StacktraceFingerprintingRecoveryStrategy<E extends Exception> extends Object implements RecoveryStrategy<E>
stream = module (| module)*
, the pseudo code for the parser may look like
stream() {
module(); (1)
while(moreInput()) {
swallowPipe();
module(); (2)
}
}
In that setup, whether we're dealing with the first module, or a subsequent module,
stack frames would be different (see (1) and (2)).Modifier and Type | Field and Description |
---|---|
protected StreamDefinitionService |
streamDefinitionService |
Constructor and Description |
---|
StacktraceFingerprintingRecoveryStrategy(Class<E> exceptionClass,
StreamDefinitionService streamDefinitionService,
String... samples)
Construct a new StacktraceFingerprintingRecoveryStrategy given the parser, and the
expected exception class to be thrown for sample fragments of a stream definition
that is to be parsed.
|
Modifier and Type | Method and Description |
---|---|
boolean |
shouldTrigger(String dslStart,
Exception exception)
Whether this completion should be triggered.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addProposals
protected StreamDefinitionService streamDefinitionService
public StacktraceFingerprintingRecoveryStrategy(Class<E> exceptionClass, StreamDefinitionService streamDefinitionService, String... samples)
exceptionClass
- the expected exception that results from parsing the sample
fragment stream definitions. Stack frames from the thrown exception are used to
store the fingerprint of this exception thrown by the parser.streamDefinitionService
- the service to handle stream definitionsamples
- the sample fragments of stream definitions.public boolean shouldTrigger(String dslStart, Exception exception)
RecoveryStrategy
shouldTrigger
in interface RecoveryStrategy<E extends Exception>
dslStart
- the partial DSL textexception
- the exception thrown when parsing the DSL textCopyright © 2024 Pivotal Software, Inc.. All rights reserved.