Class MiddlewareSpecExtension
java.lang.Object
com.kingsrook.qqq.middleware.javalin.specs.extensions.MiddlewareSpecExtension
- All Implemented Interfaces:
QMetaDataObject,Serializable
A set of endpoint specs that a module or qbit adds to the versioned UI API
(`/qqq/v1`), under one namespace. The specs are ordinary
AbstractEndpointSpec classes; their paths must begin with the extension's
path prefix (by default `/qbit/{name}`). See docs/UI-API-EXTENSIONS.md.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionGetter for descriptionThe path prefix in effect: the explicit one, or `/qbit/{name}`.getName()Getter for nameGetter for pathPrefix (as set; see getEffectivePathPrefix)Getter for semanticVersiongetSpecs()Getter for specsvoidsetDescription(String description) Setter for descriptionvoidSetter for namevoidsetPathPrefix(String pathPrefix) Setter for pathPrefixvoidsetSemanticVersion(String semanticVersion) Setter for semanticVersionvoidsetSpecs(List<QCodeReference> specs) Setter for specswithDescription(String description) Fluent setter for descriptionFluent setter for name - the namespace, lowercase a-z, 0-9 and '-'.withPathPrefix(String pathPrefix) Fluent setter for pathPrefix.withSemanticVersion(String semanticVersion) Fluent setter for semanticVersion - the extension's own MAJOR.MINOR.PATCH.withSpec(QCodeReference specReference) Add a spec by code reference.withSpec(Class<? extends AbstractEndpointSpec<?, ?, ?>> specClass) Add a spec class.
-
Constructor Details
-
MiddlewareSpecExtension
public MiddlewareSpecExtension()
-
-
Method Details
-
getEffectivePathPrefix
The path prefix in effect: the explicit one, or `/qbit/{name}`. Always begins with a slash and never ends with one. -
withSpec
Add a spec class. Adding the same class again is a no-op. -
withSpec
Add a spec by code reference. Adding the same class again is a no-op. -
getName
Getter for name -
setName
Setter for name -
withName
Fluent setter for name - the namespace, lowercase a-z, 0-9 and '-'. -
getDescription
Getter for description -
setDescription
Setter for description -
withDescription
Fluent setter for description -
getSemanticVersion
Getter for semanticVersion -
setSemanticVersion
Setter for semanticVersion -
withSemanticVersion
Fluent setter for semanticVersion - the extension's own MAJOR.MINOR.PATCH. -
getPathPrefix
Getter for pathPrefix (as set; see getEffectivePathPrefix) -
setPathPrefix
Setter for pathPrefix -
withPathPrefix
Fluent setter for pathPrefix. Only the established module prefixes in MiddlewareSpecExtensionsMetaData.ESTABLISHED_PREFIXES are allowed; new extensions use the default `/qbit/{name}`. -
getSpecs
Getter for specs -
setSpecs
Setter for specs
-