Package org.apache.sshd.common.mac
Enum BuiltinMacs
- java.lang.Object
-
- java.lang.Enum<BuiltinMacs>
-
- org.apache.sshd.common.mac.BuiltinMacs
-
- All Implemented Interfaces:
Serializable
,Comparable<BuiltinMacs>
,Supplier<Mac>
,AlgorithmNameProvider
,BuiltinFactory<Mac>
,Factory<Mac>
,MacFactory
,MacInformation
,NamedFactory<Mac>
,NamedResource
,OptionalFeature
public enum BuiltinMacs extends Enum<BuiltinMacs> implements MacFactory
Provides easy access to the currently implemented macs- Author:
- Apache MINA SSHD Project
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
BuiltinMacs.Constants
static class
BuiltinMacs.ParseResult
-
Enum Constant Summary
Enum Constants Enum Constant Description hmacmd5
Deprecated.hmacmd596
Deprecated.hmacsha1
hmacsha196
Deprecated.hmacsha1etm
hmacsha256
See RFC 6668hmacsha256etm
hmacsha512
See RFC 6668hmacsha512etm
-
Field Summary
Fields Modifier and Type Field Description static Set<BuiltinMacs>
VALUES
-
Fields inherited from interface org.apache.sshd.common.NamedResource
BY_NAME_COMPARATOR, NAME_EXTRACTOR
-
Fields inherited from interface org.apache.sshd.common.OptionalFeature
FALSE, TRUE
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Mac
create()
static BuiltinMacs
fromFactory(NamedFactory<Mac> factory)
static BuiltinMacs
fromFactoryName(String name)
static BuiltinMacs
fromString(String s)
String
getAlgorithm()
int
getBlockSize()
int
getDefaultBlockSize()
String
getName()
static NavigableSet<MacFactory>
getRegisteredExtensions()
boolean
isSupported()
static BuiltinMacs.ParseResult
parseMacsList(String macs)
static BuiltinMacs.ParseResult
parseMacsList(String... macs)
static BuiltinMacs.ParseResult
parseMacsList(Collection<String> macs)
static void
registerExtension(MacFactory extension)
Registered aNamedFactory
to be available besides the built-in ones when parsing configurationstatic MacFactory
resolveFactory(String name)
String
toString()
static MacFactory
unregisterExtension(String name)
Unregisters specified extensionstatic BuiltinMacs
valueOf(String name)
Returns the enum constant of this type with the specified name.static BuiltinMacs[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.-
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf
-
Methods inherited from interface org.apache.sshd.common.mac.MacInformation
isEncryptThenMac
-
-
-
-
Enum Constant Detail
-
hmacmd5
@Deprecated public static final BuiltinMacs hmacmd5
Deprecated.- See Also:
- SSHD-1004
-
hmacmd596
@Deprecated public static final BuiltinMacs hmacmd596
Deprecated.- See Also:
- SSHD-1004
-
hmacsha1
public static final BuiltinMacs hmacsha1
-
hmacsha1etm
public static final BuiltinMacs hmacsha1etm
-
hmacsha196
@Deprecated public static final BuiltinMacs hmacsha196
Deprecated.- See Also:
- SSHD-1004
-
hmacsha256
public static final BuiltinMacs hmacsha256
See RFC 6668
-
hmacsha256etm
public static final BuiltinMacs hmacsha256etm
-
hmacsha512
public static final BuiltinMacs hmacsha512
See RFC 6668
-
hmacsha512etm
public static final BuiltinMacs hmacsha512etm
-
-
Field Detail
-
VALUES
public static final Set<BuiltinMacs> VALUES
-
-
Method Detail
-
values
public static BuiltinMacs[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (BuiltinMacs c : BuiltinMacs.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static BuiltinMacs valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
getName
public final String getName()
- Specified by:
getName
in interfaceNamedResource
- Returns:
- The resource name
-
getAlgorithm
public final String getAlgorithm()
- Specified by:
getAlgorithm
in interfaceAlgorithmNameProvider
-
getBlockSize
public final int getBlockSize()
- Specified by:
getBlockSize
in interfaceMacInformation
- Returns:
- MAC output block size in bytes - may be less than the default - e.g., MD5-96
-
getDefaultBlockSize
public final int getDefaultBlockSize()
- Specified by:
getDefaultBlockSize
in interfaceMacInformation
- Returns:
- The "natural" MAC block size in bytes
-
isSupported
public final boolean isSupported()
- Specified by:
isSupported
in interfaceOptionalFeature
-
toString
public final String toString()
- Overrides:
toString
in classEnum<BuiltinMacs>
-
registerExtension
public static void registerExtension(MacFactory extension)
Registered aNamedFactory
to be available besides the built-in ones when parsing configuration- Parameters:
extension
- The factory to register- Throws:
IllegalArgumentException
- if factory instance isnull
, or overrides a built-in one or overrides another registered factory with the same name (case insensitive).
-
getRegisteredExtensions
public static NavigableSet<MacFactory> getRegisteredExtensions()
- Returns:
- A
NavigableSet
of the currently registered extensions, sorted according to the factory name (case insensitive)
-
unregisterExtension
public static MacFactory unregisterExtension(String name)
Unregisters specified extension- Parameters:
name
- The factory name - ignored ifnull
/empty- Returns:
- The registered extension -
null
if not found
-
fromString
public static BuiltinMacs fromString(String s)
- Parameters:
s
- TheEnum
's name - ignored ifnull
/empty- Returns:
- The matching
BuiltinMacs
whoseEnum.name()
matches (case insensitive) the provided argument -null
if no match
-
fromFactory
public static BuiltinMacs fromFactory(NamedFactory<Mac> factory)
- Parameters:
factory
- TheNamedFactory
for the MAC - ignored ifnull
- Returns:
- The matching
BuiltinMacs
whose factory name matches (case insensitive) the digest factory name - See Also:
fromFactoryName(String)
-
fromFactoryName
public static BuiltinMacs fromFactoryName(String name)
- Parameters:
name
- The factory name - ignored ifnull
/empty- Returns:
- The matching
BuiltinMacs
whose factory name matches (case insensitive) the provided name -null
if no match
-
parseMacsList
public static BuiltinMacs.ParseResult parseMacsList(String macs)
- Parameters:
macs
- A comma-separated list of MACs' names - ignored ifnull
/empty- Returns:
- A
BuiltinMacs.ParseResult
containing the successfully parsed factories and the unknown ones. Note: it is up to caller to ensure that the lists do not contain duplicates
-
parseMacsList
public static BuiltinMacs.ParseResult parseMacsList(String... macs)
-
parseMacsList
public static BuiltinMacs.ParseResult parseMacsList(Collection<String> macs)
-
resolveFactory
public static MacFactory resolveFactory(String name)
- Parameters:
name
- The factory name- Returns:
- The factory or
null
if it is neither a built-in one or a registered extension
-
-