Package liquibase.ui
Class CompositeUIService
java.lang.Object
liquibase.AbstractExtensibleObject
liquibase.ui.CompositeUIService
- All Implemented Interfaces:
Cloneable
,ExtensibleObject
,Plugin
,UIService
Used for handling multiple UI output services.
-
Field Summary
Fields inherited from interface liquibase.plugin.Plugin
PRIORITY_DATABASE, PRIORITY_DEFAULT, PRIORITY_NOT_APPLICABLE, PRIORITY_SPECIALIZED
-
Constructor Summary
ConstructorDescriptionCompositeUIService
(UIService inputService, Collection<UIService> outputServices) -
Method Summary
Modifier and TypeMethodDescriptionboolean
Return current setting of allow prompt flagint
<T> T
prompt
(String prompt, T valueIfNoEntry, InputHandler<T> inputHandler, Class<T> type) Prompt the user with the message and wait for a response.
If this UIService implementation does not support user prompts, return the default value.
If inputHandler is null,DefaultInputHandler
will be used.
If inputHandler throws anIllegalArgumentException
, the user will be given the chance to re-enter the value.
If the inputHandler returns true forInputHandler.shouldAllowEmptyInput()
and the user enters an empty value when prompted, or hits "enter", the valueIfNoEntry will be returned.void
sendErrorMessage
(String message) Send an "error" message to the user.void
sendErrorMessage
(String message, Throwable exception) Send an "error" message to the user along with a stacktrace.void
sendMessage
(String message) Send a "normal" message to the user.void
setAllowPrompt
(boolean allowPrompt) Method to set flag indicating whether prompting is allowedMethods inherited from class liquibase.AbstractExtensibleObject
clone, describe, equals, get, get, get, getAttributes, getFieldValue, getObjectMetaData, getValuePath, has, hashCode, set, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface liquibase.ExtensibleObject
clone, describe, get, get, getAttributes, getObjectMetaData, getValuePath, has, set
-
Field Details
-
outputServices
-
inputService
-
-
Constructor Details
-
CompositeUIService
-
-
Method Details
-
getOutputServices
-
getPriority
public int getPriority()- Specified by:
getPriority
in interfaceUIService
-
sendMessage
Description copied from interface:UIService
Send a "normal" message to the user.- Specified by:
sendMessage
in interfaceUIService
-
sendErrorMessage
Description copied from interface:UIService
Send an "error" message to the user.- Specified by:
sendErrorMessage
in interfaceUIService
-
sendErrorMessage
Description copied from interface:UIService
Send an "error" message to the user along with a stacktrace.- Specified by:
sendErrorMessage
in interfaceUIService
-
prompt
Description copied from interface:UIService
Prompt the user with the message and wait for a response.
If this UIService implementation does not support user prompts, return the default value.
If inputHandler is null,DefaultInputHandler
will be used.
If inputHandler throws anIllegalArgumentException
, the user will be given the chance to re-enter the value.
If the inputHandler returns true forInputHandler.shouldAllowEmptyInput()
and the user enters an empty value when prompted, or hits "enter", the valueIfNoEntry will be returned. If the inputHandler returns false forInputHandler.shouldAllowEmptyInput()
, the user will be reprompted until they enter a non-empty value, which will then be returned. -
setAllowPrompt
Description copied from interface:UIService
Method to set flag indicating whether prompting is allowed- Specified by:
setAllowPrompt
in interfaceUIService
- Parameters:
allowPrompt
- New flag value- Throws:
IllegalArgumentException
- If parameter is not allowed
-
getAllowPrompt
public boolean getAllowPrompt()Description copied from interface:UIService
Return current setting of allow prompt flag- Specified by:
getAllowPrompt
in interfaceUIService
- Returns:
- boolean
-