Package com.scurrilous.circe
Class HashProviders
- java.lang.Object
-
- com.scurrilous.circe.HashProviders
-
public final class HashProviders extends java.lang.ObjectStatic utility methods for discoveringHashProviderinstances.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.util.Collection<HashProvider>ALL_PROVIDERS
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static HashProviderbest(HashParameters params)Returns the best hash provider supporting at least a stateful implementation of a hash function with the given parameters.static HashProviderbest(HashParameters params, java.util.EnumSet<HashSupport> required)Returns the best hash provider supporting at least the given flags for a hash function with the given parameters.static java.util.Iterator<HashProvider>iterator()Returns an iterator over all knownHashProviderinstances.static java.util.SortedMap<java.util.EnumSet<HashSupport>,HashProvider>search(HashParameters params)Returns a map of hash providers supporting at least a stateful implementation of a hash function with the given parameters.static java.util.SortedMap<java.util.EnumSet<HashSupport>,HashProvider>search(HashParameters params, java.util.EnumSet<HashSupport> required)Returns a map of hash providers supporting at least the given flags for a hash function with the given parameters.
-
-
-
Field Detail
-
ALL_PROVIDERS
static final java.util.Collection<HashProvider> ALL_PROVIDERS
-
-
Method Detail
-
iterator
public static java.util.Iterator<HashProvider> iterator()
Returns an iterator over all knownHashProviderinstances.- Returns:
- an iterator over all HashProviders
-
best
public static HashProvider best(HashParameters params)
Returns the best hash provider supporting at least a stateful implementation of a hash function with the given parameters.- Parameters:
params- the parameters defining the hash function- Returns:
- the best hash provider for the given parameters
- Throws:
java.lang.UnsupportedOperationException- if no provider supports the parameters
-
best
public static HashProvider best(HashParameters params, java.util.EnumSet<HashSupport> required)
Returns the best hash provider supporting at least the given flags for a hash function with the given parameters.- Parameters:
params- the parameters defining the hash functionrequired- the required support flags for a provider to be considered- Returns:
- the best hash provider for the given parameters
- Throws:
java.lang.UnsupportedOperationException- if no provider supports the parameters
-
search
public static java.util.SortedMap<java.util.EnumSet<HashSupport>,HashProvider> search(HashParameters params)
Returns a map of hash providers supporting at least a stateful implementation of a hash function with the given parameters.- Parameters:
params- the parameters defining the hash function- Returns:
- a sorted map of hash support flags to hash providers
-
search
public static java.util.SortedMap<java.util.EnumSet<HashSupport>,HashProvider> search(HashParameters params, java.util.EnumSet<HashSupport> required)
Returns a map of hash providers supporting at least the given flags for a hash function with the given parameters.- Parameters:
params- the parameters defining the hash functionrequired- the required support flags for a provider to be included- Returns:
- a sorted map of hash support flags to hash providers
-
-