Search in sources :

Example 1 with BackgroundableTask

use of com.evolveum.midpoint.studio.action.task.BackgroundableTask in project midpoint-studio by Evolveum.

the class BrowseToolPanel method createQueryActionGroup.

private DefaultActionGroup createQueryActionGroup() {
    DefaultActionGroup group = new DefaultActionGroup();
    objectType = new ComboObjectTypes();
    group.add(objectType);
    queryType = new ComboQueryType() {

        @Override
        public void setSelected(Type selected) {
            super.setSelected(selected);
            if (queryType.getSelected() == null || query == null) {
                return;
            }
            switch(queryType.getSelected()) {
                case QUERY_XML:
                    if (StringUtils.isEmpty(query.getText())) {
                        query.setText(EMPTY_XML_QUERY);
                    }
                    break;
                case NAME:
                case NAME_OR_OID:
                case OID:
                    // todo file type
                    break;
                case AXIOM:
                    if (StringUtils.isEmpty(query.getText())) {
                        query.setText("");
                    }
                    break;
            }
        }
    };
    group.add(queryType);
    CheckboxAction rawSearch = new CheckboxAction("Raw") {

        @Override
        public void update(AnActionEvent e) {
            e.getPresentation().setEnabled(isSearchEnabled());
            super.update(e);
        }

        @Override
        public boolean isSelected(@NotNull AnActionEvent e) {
            return BrowseToolPanel.this.rawSearch;
        }

        @Override
        public void setSelected(@NotNull AnActionEvent e, boolean state) {
            BrowseToolPanel.this.rawSearch = state;
        }
    };
    group.add(rawSearch);
    pagingAction = createAnAction("Paging", "Paging Settings", AllIcons.General.GearPlain, e -> pagingSettingsPerformed(e), e -> e.getPresentation().setEnabled(isSearchEnabled()));
    group.add(pagingAction);
    searchAction = new AsyncAction<>("Search", AllIcons.Actions.Find) {

        @Override
        protected BackgroundableTask createTask(AnActionEvent e, Environment env) {
            return new BackgroundableTask(e.getProject(), "Searching objects", "Searching objects") {

                @Override
                protected void doRun(ProgressIndicator indicator) {
                    searchPerformed(e, indicator);
                }
            };
        }

        @Override
        protected boolean isActionEnabled(AnActionEvent evt) {
            return isSearchEnabled();
        }
    };
    group.add(searchAction);
    cancelAction = createAnAction("Cancel", AllIcons.Actions.Cancel, e -> cancelPerformed(e), e -> e.getPresentation().setEnabled(isCancelEnabled()));
    group.add(cancelAction);
    return group;
}
Also used : AllIcons(com.intellij.icons.AllIcons) ObjectType(com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType) com.evolveum.midpoint.prism.query(com.evolveum.midpoint.prism.query) MidPointUtils.createAnAction(com.evolveum.midpoint.studio.util.MidPointUtils.createAnAction) SchemaException(com.evolveum.midpoint.util.exception.SchemaException) RunnableUtils(com.evolveum.midpoint.studio.util.RunnableUtils) StringUtils(org.apache.commons.lang3.StringUtils) Environment(com.evolveum.midpoint.studio.impl.Environment) JBTextArea(com.intellij.ui.components.JBTextArea) DefaultMutableTreeTableNode(org.jdesktop.swingx.treetable.DefaultMutableTreeTableNode) ComboObjectTypes(com.evolveum.midpoint.studio.action.browse.ComboObjectTypes) JBUI(com.intellij.util.ui.JBUI) BackgroundableTask(com.evolveum.midpoint.studio.action.task.BackgroundableTask) CompoundBorder(javax.swing.border.CompoundBorder) Pair(com.evolveum.midpoint.studio.util.Pair) AsyncAction(com.evolveum.midpoint.studio.action.AsyncAction) Logger(com.intellij.openapi.diagnostic.Logger) UIAction(org.jdesktop.swingx.UIAction) Clipboard(java.awt.datatransfer.Clipboard) MidPointLocalizationService(com.evolveum.midpoint.studio.impl.service.MidPointLocalizationService) Collectors(java.util.stream.Collectors) JBScrollPane(com.intellij.ui.components.JBScrollPane) MidPointUtils(com.evolveum.midpoint.studio.util.MidPointUtils) Objects(java.util.Objects) ProgressIndicator(com.intellij.openapi.progress.ProgressIndicator) SimpleToolWindowPanel(com.intellij.openapi.ui.SimpleToolWindowPanel) List(java.util.List) ServiceManager(com.intellij.openapi.components.ServiceManager) ApplicationManager(com.intellij.openapi.application.ApplicationManager) QName(javax.xml.namespace.QName) DownloadAction(com.evolveum.midpoint.studio.action.browse.DownloadAction) NotNull(org.jetbrains.annotations.NotNull) ActionUtil(com.intellij.openapi.actionSystem.ex.ActionUtil) CheckboxAction(com.intellij.openapi.actionSystem.ex.CheckboxAction) EnvironmentService(com.evolveum.midpoint.studio.impl.EnvironmentService) NodeRenderer(com.intellij.ide.util.treeView.NodeRenderer) ArrayList(java.util.ArrayList) PrismContext(com.evolveum.midpoint.prism.PrismContext) StringSelection(java.awt.datatransfer.StringSelection) ComboQueryType(com.evolveum.midpoint.studio.action.browse.ComboQueryType) Project(com.intellij.openapi.project.Project) QueryType(com.evolveum.prism.xml.ns._public.query_3.QueryType) AbstractRoleType(com.evolveum.midpoint.xml.ns._public.common.common_3.AbstractRoleType) TreeUtil(com.intellij.util.ui.tree.TreeUtil) PrismParser(com.evolveum.midpoint.prism.PrismParser) PrismPropertyDefinition(com.evolveum.midpoint.prism.PrismPropertyDefinition) IOException(java.io.IOException) ActionEvent(java.awt.event.ActionEvent) JXTreeTable(org.jdesktop.swingx.JXTreeTable) java.awt(java.awt) com.intellij.openapi.actionSystem(com.intellij.openapi.actionSystem) SearchResultList(com.evolveum.midpoint.schema.SearchResultList) com.evolveum.midpoint.studio.impl.browse(com.evolveum.midpoint.studio.impl.browse) EqualFilterImpl(com.evolveum.midpoint.prism.impl.query.EqualFilterImpl) PrismConstants(com.evolveum.midpoint.prism.PrismConstants) OnePixelSplitter(com.intellij.ui.OnePixelSplitter) SubstringFilterImpl(com.evolveum.midpoint.prism.impl.query.SubstringFilterImpl) ObjectTypes(com.evolveum.midpoint.schema.constants.ObjectTypes) DeleteAction(com.evolveum.midpoint.studio.action.transfer.DeleteAction) MidPointService(com.evolveum.midpoint.studio.impl.MidPointService) MidPointClient(com.evolveum.midpoint.studio.impl.MidPointClient) javax.swing(javax.swing) CheckboxAction(com.intellij.openapi.actionSystem.ex.CheckboxAction) NotNull(org.jetbrains.annotations.NotNull) ComboObjectTypes(com.evolveum.midpoint.studio.action.browse.ComboObjectTypes) ObjectType(com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType) ComboQueryType(com.evolveum.midpoint.studio.action.browse.ComboQueryType) QueryType(com.evolveum.prism.xml.ns._public.query_3.QueryType) AbstractRoleType(com.evolveum.midpoint.xml.ns._public.common.common_3.AbstractRoleType) ProgressIndicator(com.intellij.openapi.progress.ProgressIndicator) ComboQueryType(com.evolveum.midpoint.studio.action.browse.ComboQueryType) BackgroundableTask(com.evolveum.midpoint.studio.action.task.BackgroundableTask) Environment(com.evolveum.midpoint.studio.impl.Environment)

Aggregations

PrismConstants (com.evolveum.midpoint.prism.PrismConstants)1 PrismContext (com.evolveum.midpoint.prism.PrismContext)1 PrismParser (com.evolveum.midpoint.prism.PrismParser)1 PrismPropertyDefinition (com.evolveum.midpoint.prism.PrismPropertyDefinition)1 EqualFilterImpl (com.evolveum.midpoint.prism.impl.query.EqualFilterImpl)1 SubstringFilterImpl (com.evolveum.midpoint.prism.impl.query.SubstringFilterImpl)1 com.evolveum.midpoint.prism.query (com.evolveum.midpoint.prism.query)1 SearchResultList (com.evolveum.midpoint.schema.SearchResultList)1 ObjectTypes (com.evolveum.midpoint.schema.constants.ObjectTypes)1 AsyncAction (com.evolveum.midpoint.studio.action.AsyncAction)1 ComboObjectTypes (com.evolveum.midpoint.studio.action.browse.ComboObjectTypes)1 ComboQueryType (com.evolveum.midpoint.studio.action.browse.ComboQueryType)1 DownloadAction (com.evolveum.midpoint.studio.action.browse.DownloadAction)1 BackgroundableTask (com.evolveum.midpoint.studio.action.task.BackgroundableTask)1 DeleteAction (com.evolveum.midpoint.studio.action.transfer.DeleteAction)1 Environment (com.evolveum.midpoint.studio.impl.Environment)1 EnvironmentService (com.evolveum.midpoint.studio.impl.EnvironmentService)1 MidPointClient (com.evolveum.midpoint.studio.impl.MidPointClient)1 MidPointService (com.evolveum.midpoint.studio.impl.MidPointService)1 com.evolveum.midpoint.studio.impl.browse (com.evolveum.midpoint.studio.impl.browse)1