Class Action<D>
- java.lang.Object
-
- com.microsoft.azure.toolkit.lib.common.operation.OperationBase
-
- com.microsoft.azure.toolkit.lib.common.action.Action<D>
-
- All Implemented Interfaces:
Operation
public class Action<D> extends OperationBase
-
-
Field Summary
Fields Modifier and Type Field Description static Action.Id<Object>AUTHENTICATEprivate booleanauthRequiredprivate List<AbstractMap.SimpleEntry<java.util.function.BiPredicate<D,?>,java.util.function.BiConsumer<D,?>>>handlersprivate Action.Id<D>idstatic Action.Id<Runnable>REQUIRE_AUTHstatic StringRESOURCE_TYPEprivate Objectshortcutsshortcuts for this action.static StringSOURCEprivate ActionView.BuilderviewBuilder-
Fields inherited from interface com.microsoft.azure.toolkit.lib.common.operation.Operation
UNKNOWN_NAME
-
-
Constructor Summary
Constructors Constructor Description Action(Action.Id<D> id, ActionView.Builder viewBuilder)Action(Action.Id<D> id, java.util.function.BiConsumer<D,E> handler)Action(Action.Id<D> id, java.util.function.BiConsumer<D,E> handler, ActionView.Builder viewBuilder)Action(Action.Id<D> id, java.util.function.Consumer<D> handler)Action(Action.Id<D> id, java.util.function.Consumer<D> handler, ActionView.Builder viewBuilder)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Callable<?>getBody()AzureStringgetDescription()java.util.function.BiConsumer<D,Object>getHandler(D source, Object e)StringgetId()StringgetType()IView.LabelgetView(D source)voidhandle(D source)voidhandle(D source, Object e)protected voidhandle(D source, Object e, java.util.function.BiConsumer<D,Object> handler)<E> voidregisterHandler(java.util.function.BiPredicate<D,E> condition, java.util.function.BiConsumer<D,E> handler)voidregisterHandler(java.util.function.Predicate<D> condition, java.util.function.Consumer<D> handler)static Action<Void>retryFromFailure(Runnable handler)-
Methods inherited from class com.microsoft.azure.toolkit.lib.common.operation.OperationBase
getContext, getExecutionId
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.microsoft.azure.toolkit.lib.common.operation.Operation
getActionParent, getEffectiveParent, getParent, setParent
-
-
-
-
Field Detail
-
SOURCE
public static final String SOURCE
- See Also:
- Constant Field Values
-
RESOURCE_TYPE
public static final String RESOURCE_TYPE
- See Also:
- Constant Field Values
-
handlers
@Nonnull private final List<AbstractMap.SimpleEntry<java.util.function.BiPredicate<D,?>,java.util.function.BiConsumer<D,?>>> handlers
-
viewBuilder
@Nullable private ActionView.Builder viewBuilder
-
authRequired
private boolean authRequired
-
shortcuts
private Object shortcuts
shortcuts for this action. 1. directly bound to this action if it's IDE-specific type of shortcuts (e.g.ShortcutSetin IntelliJ). 2. interpreted into native shortcuts first and then bound to this action if it'sString[]/String(e.g."alt X"). 3. copy shortcuts from actions specified by this action id and then bound to this action if it'sAction.Idof another action.
-
-
Constructor Detail
-
Action
public Action(@Nonnull Action.Id<D> id, @Nullable ActionView.Builder viewBuilder)
-
Action
public Action(@Nonnull Action.Id<D> id, @Nonnull java.util.function.BiConsumer<D,E> handler)
-
Action
public Action(@Nonnull Action.Id<D> id, @Nonnull java.util.function.Consumer<D> handler, @Nullable ActionView.Builder viewBuilder)
-
-
Method Detail
-
getView
@Nullable public IView.Label getView(D source)
-
handle
public void handle(D source)
-
registerHandler
public void registerHandler(@Nonnull java.util.function.Predicate<D> condition, @Nonnull java.util.function.Consumer<D> handler)
-
registerHandler
public <E> void registerHandler(@Nonnull java.util.function.BiPredicate<D,E> condition, @Nonnull java.util.function.BiConsumer<D,E> handler)
-
getBody
public Callable<?> getBody()
-
getDescription
@Nullable public AzureString getDescription()
-
-