Package de.learnlib.filter.cache.dfa
Class DFAHashCacheOracle<I>
- java.lang.Object
-
- de.learnlib.filter.cache.dfa.DFAHashCacheOracle<I>
-
- Type Parameters:
I- input symbol type
- All Implemented Interfaces:
LearningCache<net.automatalib.automaton.fsa.DFA<?,I>,I,Boolean>,LearningCache.DFALearningCache<I>,LearningCacheOracle<net.automatalib.automaton.fsa.DFA<?,I>,I,Boolean>,LearningCacheOracle.DFALearningCacheOracle<I>,BatchProcessor<Query<I,Boolean>>,MembershipOracle<I,Boolean>,MembershipOracle.DFAMembershipOracle<I>,QueryAnswerer<I,Boolean>,Resumable<DFAHashCacheOracle.DFAHashCacheOracleState<I>>
public class DFAHashCacheOracle<I> extends Object implements LearningCacheOracle.DFALearningCacheOracle<I>, Resumable<DFAHashCacheOracle.DFAHashCacheOracleState<I>>
ALearningCacheOracle.DFALearningCacheOraclethat uses aMapfor internal cache organization.Note: this implementation is not thread-safe. If you require a cache that is usable in a parallel environment. consider using the alternatives offered by the
ThreadSafeDFACachesfactory.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDFAHashCacheOracle.DFAHashCacheOracleState<I>-
Nested classes/interfaces inherited from interface de.learnlib.filter.cache.LearningCache
LearningCache.DFALearningCache<I>, LearningCache.MealyLearningCache<I,O>, LearningCache.MooreLearningCache<I,O>
-
Nested classes/interfaces inherited from interface de.learnlib.filter.cache.LearningCacheOracle
LearningCacheOracle.DFALearningCacheOracle<I>, LearningCacheOracle.MealyLearningCacheOracle<I,O>, LearningCacheOracle.MooreLearningCacheOracle<I,O>
-
Nested classes/interfaces inherited from interface de.learnlib.oracle.MembershipOracle
MembershipOracle.DFAMembershipOracle<I extends Object>, MembershipOracle.MealyMembershipOracle<I extends Object,O extends Object>, MembershipOracle.MooreMembershipOracle<I extends Object,O extends Object>
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description EquivalenceOracle<net.automatalib.automaton.fsa.DFA<?,I>,I,Boolean>createCacheConsistencyTest()Creates a cache consistency test.voidprocessQueries(Collection<? extends Query<I,Boolean>> queries)voidresume(DFAHashCacheOracle.DFAHashCacheOracleState<I> state)DFAHashCacheOracle.DFAHashCacheOracleState<I>suspend()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.learnlib.oracle.MembershipOracle
answerQuery, answerQuery, asOracle, processBatch, processQuery
-
-
-
-
Method Detail
-
createCacheConsistencyTest
public EquivalenceOracle<net.automatalib.automaton.fsa.DFA<?,I>,I,Boolean> createCacheConsistencyTest()
Description copied from interface:LearningCacheCreates a cache consistency test. A cache consistency test is an equivalence oracle which checks a given hypothesis against the current contents of the cache. Hence, no queries are posed to the underlying system.The created cache consistency test is backed by the cache contents. This method does not need to be invoked repeatedly when the cache contents change.
- Specified by:
createCacheConsistencyTestin interfaceLearningCache<net.automatalib.automaton.fsa.DFA<?,I>,I,Boolean>- Returns:
- a cache consistency test for the contents of this cache
-
processQueries
public void processQueries(Collection<? extends Query<I,Boolean>> queries)
- Specified by:
processQueriesin interfaceMembershipOracle<I,Boolean>
-
suspend
public DFAHashCacheOracle.DFAHashCacheOracleState<I> suspend()
-
resume
public void resume(DFAHashCacheOracle.DFAHashCacheOracleState<I> state)
-
-