Package org.apache.sshd.common.signature
Enum BuiltinSignatures
- java.lang.Object
-
- java.lang.Enum<BuiltinSignatures>
-
- org.apache.sshd.common.signature.BuiltinSignatures
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<BuiltinSignatures>
,java.util.function.Supplier<Signature>
,BuiltinFactory<Signature>
,Factory<Signature>
,NamedFactory<Signature>
,NamedResource
,OptionalFeature
,SignatureFactory
public enum BuiltinSignatures extends java.lang.Enum<BuiltinSignatures> implements SignatureFactory
Provides easy access to the currently implemented signatures
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
BuiltinSignatures.ParseResult
Holds the result of theparseSignatureList(String)
-
Field Summary
Fields Modifier and Type Field Description private static java.util.Map<java.lang.String,SignatureFactory>
EXTENSIONS
private java.lang.String
factoryName
static java.util.Set<BuiltinSignatures>
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
-
Fields inherited from interface org.apache.sshd.common.signature.SignatureFactory
ECC_SIGNATURE_TYPE_PREFERENCES, RSA_SIGNATURE_TYPE_PREFERENCES
-
-
Constructor Summary
Constructors Modifier Constructor Description private
BuiltinSignatures(java.lang.String facName)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static BuiltinSignatures
fromFactory(NamedFactory<Signature> factory)
static BuiltinSignatures
fromFactoryName(java.lang.String name)
static BuiltinSignatures
fromString(java.lang.String s)
static Signature
getByCurveSize(java.security.spec.ECParameterSpec params)
java.lang.String
getName()
static java.util.NavigableSet<SignatureFactory>
getRegisteredExtensions()
boolean
isSupported()
static BuiltinSignatures.ParseResult
parseSignatureList(java.lang.String sigs)
static BuiltinSignatures.ParseResult
parseSignatureList(java.lang.String... sigs)
static BuiltinSignatures.ParseResult
parseSignatureList(java.util.Collection<java.lang.String> sigs)
static void
registerExtension(SignatureFactory extension)
Registered aNamedFactory
to be available besides the built-in ones when parsing configurationstatic SignatureFactory
resolveFactory(java.lang.String name)
java.lang.String
toString()
static SignatureFactory
unregisterExtension(java.lang.String name)
Unregisters specified extensionstatic BuiltinSignatures
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.static BuiltinSignatures[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
dsa
public static final BuiltinSignatures dsa
-
rsa
public static final BuiltinSignatures rsa
-
rsaSHA256
public static final BuiltinSignatures rsaSHA256
-
rsaSHA512
public static final BuiltinSignatures rsaSHA512
-
nistp256
public static final BuiltinSignatures nistp256
-
nistp384
public static final BuiltinSignatures nistp384
-
nistp521
public static final BuiltinSignatures nistp521
-
ed25519
public static final BuiltinSignatures ed25519
-
-
Field Detail
-
VALUES
public static final java.util.Set<BuiltinSignatures> VALUES
-
EXTENSIONS
private static final java.util.Map<java.lang.String,SignatureFactory> EXTENSIONS
-
factoryName
private final java.lang.String factoryName
-
-
Method Detail
-
values
public static BuiltinSignatures[] 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 (BuiltinSignatures c : BuiltinSignatures.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static BuiltinSignatures valueOf(java.lang.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:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
getByCurveSize
public static Signature getByCurveSize(java.security.spec.ECParameterSpec params)
-
getName
public final java.lang.String getName()
- Specified by:
getName
in interfaceNamedResource
- Returns:
- The resource name
-
toString
public final java.lang.String toString()
- Overrides:
toString
in classjava.lang.Enum<BuiltinSignatures>
-
isSupported
public boolean isSupported()
- Specified by:
isSupported
in interfaceOptionalFeature
-
registerExtension
public static void registerExtension(SignatureFactory extension)
Registered aNamedFactory
to be available besides the built-in ones when parsing configuration- Parameters:
extension
- The factory to register- Throws:
java.lang.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 java.util.NavigableSet<SignatureFactory> getRegisteredExtensions()
- Returns:
- A
NavigableSet
of the currently registered extensions, sorted according to the factory name (case insensitive)
-
unregisterExtension
public static SignatureFactory unregisterExtension(java.lang.String name)
Unregisters specified extension- Parameters:
name
- The factory name - ignored ifnull
/empty- Returns:
- The registered extension -
null
if not found
-
fromString
public static BuiltinSignatures fromString(java.lang.String s)
- Parameters:
s
- TheEnum
's name - ignored ifnull
/empty- Returns:
- The matching
BuiltinSignatures
whoseEnum.name()
matches (case insensitive) the provided argument -null
if no match
-
fromFactory
public static BuiltinSignatures fromFactory(NamedFactory<Signature> factory)
- Parameters:
factory
- TheNamedFactory
for the signature - ignored ifnull
- Returns:
- The matching
BuiltinSignatures
whose factory name matches (case insensitive) the digest factory name - See Also:
fromFactoryName(String)
-
fromFactoryName
public static BuiltinSignatures fromFactoryName(java.lang.String name)
- Parameters:
name
- The factory name - ignored ifnull
/empty- Returns:
- The matching
BuiltinSignatures
whose factory name matches (case insensitive) the provided name -null
if no match
-
parseSignatureList
public static BuiltinSignatures.ParseResult parseSignatureList(java.lang.String sigs)
- Parameters:
sigs
- A comma-separated list of signatures' names - ignored ifnull
/empty- Returns:
- A
BuiltinSignatures.ParseResult
of all theNamedFactory
whose name appears in the string and represent a built-in signature. Any unknown name is ignored. The order of the returned result is the same as the original order - bar the unknown signatures. Note: it is up to caller to ensure that the list does not contain duplicates
-
parseSignatureList
public static BuiltinSignatures.ParseResult parseSignatureList(java.lang.String... sigs)
-
parseSignatureList
public static BuiltinSignatures.ParseResult parseSignatureList(java.util.Collection<java.lang.String> sigs)
-
resolveFactory
public static SignatureFactory resolveFactory(java.lang.String name)
- Parameters:
name
- The factory name- Returns:
- The factory or
null
if it is neither a built-in one or a registered extension
-
-