Search in sources :

Example 71 with Command

use of org.uberfire.mvp.Command in project kie-wb-common by kiegroup.

the class SessionDiagramEditorScreen method onStartup.

@OnStartup
public void onStartup(final PlaceRequest placeRequest) {
    this.placeRequest = placeRequest;
    this.menu = makeMenuBar();
    final String name = placeRequest.getParameter("name", "");
    final boolean isCreate = name == null || name.trim().length() == 0;
    final Command callback = () -> {
        final Diagram diagram = getDiagram();
        if (null != diagram) {
            // Update screen title.
            updateTitle(diagram.getMetadata().getTitle());
        }
    };
    if (isCreate) {
        final String defSetId = placeRequest.getParameter("defSetId", "");
        final String shapeSetd = placeRequest.getParameter("shapeSetId", "");
        final String title = placeRequest.getParameter("title", "");
        // Create a new diagram.
        newDiagram(UUID.uuid(), title, defSetId, shapeSetd, callback);
    } else {
        // Load an existing diagram.
        load(name, callback);
    }
}
Also used : ClientSessionCommand(org.kie.workbench.common.stunner.core.client.session.command.ClientSessionCommand) Command(org.uberfire.mvp.Command) NavigateToExpressionEditorCommand(org.kie.workbench.common.dmn.client.commands.general.NavigateToExpressionEditorCommand) Diagram(org.kie.workbench.common.stunner.core.diagram.Diagram) OnStartup(org.uberfire.lifecycle.OnStartup)

Example 72 with Command

use of org.uberfire.mvp.Command in project kie-wb-common by kiegroup.

the class SessionDiagramEditorScreen method openDiagram.

private void openDiagram(final Diagram diagram, final Command callback) {
    sessionManager.getSessionFactory(diagram.getMetadata(), ClientFullSession.class).newSession(diagram.getMetadata(), s -> {
        final AbstractClientFullSession session = (AbstractClientFullSession) s;
        presenter = sessionPresenterFactory.newPresenterEditor();
        screenPanelView.setWidget(presenter.getView());
        presenter.withToolbar(true).withPalette(true).displayNotifications(type -> true).open(diagram, session, new ScreenPresenterCallback(callback));
        expressionEditor.init(presenter);
    });
}
Also used : Session(org.kie.workbench.common.stunner.core.client.session.Session) ShowcaseDiagramService(org.kie.workbench.common.dmn.showcase.client.screens.ShowcaseDiagramService) ValidationUtils(org.kie.workbench.common.stunner.core.validation.impl.ValidationUtils) UUID(org.kie.workbench.common.stunner.core.util.UUID) ChangeTitleWidgetEvent(org.uberfire.client.workbench.events.ChangeTitleWidgetEvent) ClientRuntimeError(org.kie.workbench.common.stunner.core.client.service.ClientRuntimeError) AbstractClientFullSession(org.kie.workbench.common.stunner.core.client.session.impl.AbstractClientFullSession) SessionPresenter(org.kie.workbench.common.stunner.client.widgets.presenters.session.SessionPresenter) DiagramElementViolation(org.kie.workbench.common.stunner.core.validation.DiagramElementViolation) Observes(javax.enterprise.event.Observes) DefinitionManager(org.kie.workbench.common.stunner.core.api.DefinitionManager) IsWidget(com.google.gwt.user.client.ui.IsWidget) ClientFullSession(org.kie.workbench.common.stunner.core.client.session.ClientFullSession) WorkbenchScreen(org.uberfire.client.annotations.WorkbenchScreen) Diagram(org.kie.workbench.common.stunner.core.diagram.Diagram) OnSessionErrorEvent(org.kie.workbench.common.stunner.core.client.session.event.OnSessionErrorEvent) Collection(java.util.Collection) Violation(org.kie.workbench.common.stunner.core.validation.Violation) Menus(org.uberfire.workbench.model.menu.Menus) AbstractCanvasHandler(org.kie.workbench.common.stunner.core.client.canvas.AbstractCanvasHandler) ClientSession(org.kie.workbench.common.stunner.core.client.session.ClientSession) Logger(java.util.logging.Logger) ClientFactoryService(org.kie.workbench.common.stunner.core.client.service.ClientFactoryService) PlaceRequest(org.uberfire.mvp.PlaceRequest) Metadata(org.kie.workbench.common.stunner.core.diagram.Metadata) WorkbenchMenu(org.uberfire.client.annotations.WorkbenchMenu) LogConfiguration(com.google.gwt.logging.client.LogConfiguration) EditorToolbar(org.kie.workbench.common.stunner.client.widgets.toolbar.impl.EditorToolbar) OnOpen(org.uberfire.lifecycle.OnOpen) MenuDevCommandsBuilder(org.kie.workbench.common.stunner.client.widgets.menu.dev.MenuDevCommandsBuilder) MetadataImpl(org.kie.workbench.common.stunner.core.diagram.MetadataImpl) ExpressionEditorView(org.kie.workbench.common.dmn.client.editors.expressions.ExpressionEditorView) CanvasHandler(org.kie.workbench.common.stunner.core.client.canvas.CanvasHandler) DiagramEditor(org.kie.workbench.common.stunner.core.client.annotation.DiagramEditor) OnFocus(org.uberfire.lifecycle.OnFocus) ScreenPanelView(org.kie.workbench.common.stunner.client.widgets.views.session.ScreenPanelView) ScreenErrorView(org.kie.workbench.common.stunner.client.widgets.views.session.ScreenErrorView) Level(java.util.logging.Level) DMNEditor(org.kie.workbench.common.dmn.api.qualifiers.DMNEditor) Inject(javax.inject.Inject) EditExpressionEvent(org.kie.workbench.common.dmn.client.events.EditExpressionEvent) MenuFactory(org.uberfire.workbench.model.menu.MenuFactory) ClientSessionCommand(org.kie.workbench.common.stunner.core.client.session.command.ClientSessionCommand) RuleViolation(org.kie.workbench.common.stunner.core.rule.RuleViolation) WorkbenchPartTitle(org.uberfire.client.annotations.WorkbenchPartTitle) SessionPresenterFactory(org.kie.workbench.common.stunner.client.widgets.presenters.session.SessionPresenterFactory) WorkbenchContextId(org.uberfire.client.annotations.WorkbenchContextId) AbstractClientReadOnlySession(org.kie.workbench.common.stunner.core.client.session.impl.AbstractClientReadOnlySession) SessionManager(org.kie.workbench.common.stunner.core.client.api.SessionManager) ServiceCallback(org.kie.workbench.common.stunner.core.client.service.ServiceCallback) OnStartup(org.uberfire.lifecycle.OnStartup) Command(org.uberfire.mvp.Command) FINE(java.util.logging.Level.FINE) Event(javax.enterprise.event.Event) SessionCommandManager(org.kie.workbench.common.stunner.core.client.command.SessionCommandManager) Graph(org.kie.workbench.common.stunner.core.graph.Graph) Dependent(javax.enterprise.context.Dependent) NavigateToExpressionEditorCommand(org.kie.workbench.common.dmn.client.commands.general.NavigateToExpressionEditorCommand) WorkbenchPartView(org.uberfire.client.annotations.WorkbenchPartView) OnClose(org.uberfire.lifecycle.OnClose) BusyPopup(org.uberfire.ext.widgets.common.client.common.BusyPopup) AbstractClientFullSession(org.kie.workbench.common.stunner.core.client.session.impl.AbstractClientFullSession) ClientFullSession(org.kie.workbench.common.stunner.core.client.session.ClientFullSession) AbstractClientFullSession(org.kie.workbench.common.stunner.core.client.session.impl.AbstractClientFullSession)

Example 73 with Command

use of org.uberfire.mvp.Command in project kie-wb-common by kiegroup.

the class SessionDiagramEditorScreen method validateAndSave.

private void validateAndSave() {
    final Command save = this::save;
    final EditorToolbar toolbar = (EditorToolbar) presenter.getToolbar();
    toolbar.getValidateToolbarCommand().execute(new ClientSessionCommand.Callback<Collection<DiagramElementViolation<RuleViolation>>>() {

        @Override
        public void onSuccess() {
            log(Level.INFO, "Validation success.");
            save.execute();
        }

        @Override
        public void onError(final Collection<DiagramElementViolation<RuleViolation>> violations) {
            log(Level.WARNING, "Validation failed [violations=" + violations.toString() + "].");
            // Allow saving when only warnings founds.
            final Violation.Type maxSeverity = ValidationUtils.getMaxSeverity(violations);
            if (!maxSeverity.equals(Violation.Type.ERROR)) {
                save.execute();
            }
        }
    });
}
Also used : ClientSessionCommand(org.kie.workbench.common.stunner.core.client.session.command.ClientSessionCommand) Command(org.uberfire.mvp.Command) NavigateToExpressionEditorCommand(org.kie.workbench.common.dmn.client.commands.general.NavigateToExpressionEditorCommand) Collection(java.util.Collection) DiagramElementViolation(org.kie.workbench.common.stunner.core.validation.DiagramElementViolation) RuleViolation(org.kie.workbench.common.stunner.core.rule.RuleViolation) EditorToolbar(org.kie.workbench.common.stunner.client.widgets.toolbar.impl.EditorToolbar) ClientSessionCommand(org.kie.workbench.common.stunner.core.client.session.command.ClientSessionCommand)

Example 74 with Command

use of org.uberfire.mvp.Command in project kie-wb-common by kiegroup.

the class DynamicFormRendererTest method doBind.

protected void doBind(int times) {
    Command callback = mock(Command.class);
    renderer.renderDefaultForm(employee, callback);
    verify(callback, times(1)).execute();
    verify(view, times(times)).render(any());
    verify(view, times(times)).bind();
    verify(formHandler, times(times)).setUp(any(Employee.class));
}
Also used : Employee(org.kie.workbench.common.forms.dynamic.test.model.Employee) Command(org.uberfire.mvp.Command)

Example 75 with Command

use of org.uberfire.mvp.Command in project kie-wb-common by kiegroup.

the class DataObjectBrowserViewImplTest method showValidationPopupForDeletion.

@Test
public void showValidationPopupForDeletion() {
    List<ValidationMessage> validationMessages = Collections.EMPTY_LIST;
    Command yesCommand = () -> {
    };
    Command noCommand = () -> {
    };
    view.showValidationPopupForDeletion(validationMessages, yesCommand, noCommand);
    verify(validationPopup, Mockito.times(1)).showDeleteValidationMessages(yesCommand, noCommand, validationMessages);
}
Also used : ValidationMessage(org.guvnor.common.services.shared.validation.model.ValidationMessage) Command(org.uberfire.mvp.Command) Test(org.junit.Test)

Aggregations

Command (org.uberfire.mvp.Command)117 Test (org.junit.Test)66 ParameterizedCommand (org.uberfire.mvp.ParameterizedCommand)15 ClientSessionCommand (org.kie.workbench.common.stunner.core.client.session.command.ClientSessionCommand)11 Group (com.ait.lienzo.client.core.shape.Group)9 YesNoCancelPopup (org.uberfire.ext.widgets.common.client.common.popups.YesNoCancelPopup)9 Before (org.junit.Before)8 HasListSelectorControl (org.kie.workbench.common.dmn.client.widgets.grid.controls.list.HasListSelectorControl)7 Path (org.uberfire.backend.vfs.Path)7 ArrayList (java.util.ArrayList)6 Collection (java.util.Collection)6 PlaceRequest (org.uberfire.mvp.PlaceRequest)5 MenuItem (org.uberfire.workbench.model.menu.MenuItem)5 IsWidget (com.google.gwt.user.client.ui.IsWidget)4 Inject (javax.inject.Inject)4 OrganizationalUnit (org.guvnor.structure.organizationalunit.OrganizationalUnit)4 RemoteCallback (org.jboss.errai.common.client.api.RemoteCallback)4 DeleteHeaderValueCommand (org.kie.workbench.common.dmn.client.commands.general.DeleteHeaderValueCommand)4 SetCellValueCommand (org.kie.workbench.common.dmn.client.commands.general.SetCellValueCommand)4 SetHeaderValueCommand (org.kie.workbench.common.dmn.client.commands.general.SetHeaderValueCommand)4