Class AdminAccessBuilderSpec
AdminAccess.Builder configuration.
AdminAccess.Builder supports parsing configuration off of a string, which makes it
especially useful for command-line configuration of a AdminAccess.Builder.
The string syntax is a series of comma-separated keys or key-value pairs, each corresponding to a
AdminAccess.Builder method.
adminUsername=[String]: setsAdminAccess.Builder.adminUsername.adminHome=[String]: setsAdminAccess.Builder.adminHome.adminPublicKeyFile=[String]: setsAdminAccess.Builder.adminPublicKeyFile.adminPrivateKeyFile=[String]: setsAdminAccess.Builder.adminPrivateKeyFile. *adminPassword=[String]: setsAdminAccess.Builder.adminPassword.loginPassword=[String]: setsAdminAccess.Builder.loginPassword.lockSsh=[Boolean]: sets.invalid reference
TemplateBuilder#lockSshgrantSudoToAdminUser=[Boolean]: sets.invalid reference
TemplateBuilder#grantSudoToAdminUserauthorizeAdminPublicKey=[Boolean]: sets.invalid reference
TemplateBuilder#authorizeAdminPublicKeyinstallAdminPrivateKey=[Boolean]: sets.invalid reference
TemplateBuilder#installAdminPrivateKeyresetLoginPassword=[Boolean]: sets.invalid reference
TemplateBuilder#resetLoginPassword
Whitespace before and after commas and equal signs is ignored. Keys may not be repeated and both private key and public key must be passed through files, as they might include weird characters.
AdminAccessBuilderSpec does not support configuring AdminAccess.Builder methods
with non-value parameters. These must be configured in code.
A new AdminAccess.Builder can be instantiated from a AdminAccessBuilderSpec using
AdminAccess.Builder.from(AdminAccessBuilderSpec) or
AdminAccess.Builder.from(String).
Design inspired by
invalid reference
CacheBuilderSpec
- Since:
- 1.5
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static interfaceParses a single value. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final com.google.common.base.SplitterSplits the key from the value.protected static final com.google.common.base.SplitterSplits each key-value pair.protected String[]Specification; used for toParseableString().protected static final com.google.common.collect.ImmutableMap<String, AdminAccessBuilderSpec.ValueParser> Map of names to ValueParser. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedprotectedAdminAccessBuilderSpec(String... specifications) -
Method Summary
Modifier and TypeMethodDescriptioncopyTo(AdminAccess.Builder builder) Returns a AdminAccess.Builder configured according to this instance's specification.booleaninthashCode()static AdminAccessBuilderSpecCreates a AdminAccessBuilderSpec from multiple specifications,String[]Returns a string that can be used to parse an equivalentAdminAccessSpec.toString()Returns a string representation for this AdminAccessSpec instance.
-
Field Details
-
KEYS_SPLITTER
protected static final com.google.common.base.Splitter KEYS_SPLITTERSplits each key-value pair. -
KEY_VALUE_SPLITTER
protected static final com.google.common.base.Splitter KEY_VALUE_SPLITTERSplits the key from the value. -
VALUE_PARSERS
protected static final com.google.common.collect.ImmutableMap<String,AdminAccessBuilderSpec.ValueParser> VALUE_PARSERSMap of names to ValueParser. -
specifications
Specification; used for toParseableString().
-
-
Constructor Details
-
AdminAccessBuilderSpec
protected AdminAccessBuilderSpec() -
AdminAccessBuilderSpec
-
-
Method Details
-
parse
Creates a AdminAccessBuilderSpec from multiple specifications,- Parameters:
adminAccessSpecification- the string form
-
copyTo
Returns a AdminAccess.Builder configured according to this instance's specification. -
toParsableStrings
Returns a string that can be used to parse an equivalentAdminAccessSpec. The order and form of this representation is not guaranteed, except that reparsing its output will produce aAdminAccessSpecequal to this instance. -
toString
Returns a string representation for this AdminAccessSpec instance. The form of this representation is not guaranteed. -
hashCode
public int hashCode() -
equals
-
getAdminUsername
-
getAdminHome
-
getAdminPublicKeyFile
-
getAdminPrivateKeyFile
-
getAdminPassword
-
getLoginPassword
-
getLockSsh
-
getGrantSudoToAdminUser
-
getInstallAdminPrivateKey
-
getResetLoginPassword
-