Migrate Structure

This commit is contained in:
Rob Winch
2023-08-03 11:11:12 -05:00
parent 2ba6990f72
commit 9b5ed3a9eb
96 changed files with 8 additions and 0 deletions

View File

@@ -0,0 +1,44 @@
[[using-shell-customization-commandnotfound]]
=== Command Not Found
ifndef::snippets[:snippets: ../../test/java/org/springframework/shell/docs]
On default a missing command is handled via `CommandNotFoundResultHandler`
and outputs a simple message:
====
[source, text]
----
shell:>missing
No command found for 'missing'
----
====
Internally `CommandNotFoundResultHandler` is using `CommandNotFoundMessageProvider`
which is a simple function taking a `ProviderContext` and returning a text
message. Below is an example what a custom message provider might look like.
====
[source, java, indent=0]
----
include::{snippets}/CommandNotFoundSnippets.java[tag=custom-provider]
----
====
It's possible to change this implementation by defining it as a bean.
====
[source, java, indent=0]
----
include::{snippets}/CommandNotFoundSnippets.java[tag=provider-bean-1]
----
====
`CommandNotFoundResultHandler` is a functional interface so it can
be writter as a lambda.
====
[source, java, indent=0]
----
include::{snippets}/CommandNotFoundSnippets.java[tag=provider-bean-2]
----
====