Skip to content

Comments

[DQL] Executed DQL services will now be grouped by tenant in the Services tab#119

Merged
dorian-krefft-dt merged 3 commits intomainfrom
feature/dql/grouping-services-by-tenant
Feb 6, 2026
Merged

[DQL] Executed DQL services will now be grouped by tenant in the Services tab#119
dorian-krefft-dt merged 3 commits intomainfrom
feature/dql/grouping-services-by-tenant

Conversation

@dorian-krefft-dt
Copy link
Collaborator

@dorian-krefft-dt dorian-krefft-dt commented Feb 6, 2026

This helps to easily execute the same query on multiple tenants and compare values

image

…ices tab

This helps to easily execute the same query on multiple tenants and compare values
@dorian-krefft-dt dorian-krefft-dt self-assigned this Feb 6, 2026
Copilot AI review requested due to automatic review settings February 6, 2026 19:31
@dorian-krefft-dt dorian-krefft-dt changed the title [DQL] Executed DQL services will now be grouped by tenant in the Serv… [DQL] Executed DQL services will now be grouped by tenant in the Services tab Feb 6, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refactors DQL execution “Services” integration so executed queries are registered via a shared project-level services manager and can be grouped (notably by tenant) in the Services tool window, making it easier to execute/compare the same query across multiple tenants.

Changes:

  • Introduces a generic ProjectServicesManager + ManagedService(Group) contributor to register/group running executions in the IDE Services view.
  • Updates DQL execution actions/toolbar UI to use a new QueryConfigurationAction component set and new execute action id/class.
  • Adds tenant-based grouping (TenantServiceGroup) and adjusts runtime service execution lifecycle + UI wiring accordingly.

Reviewed changes

Copilot reviewed 43 out of 43 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
src/main/resources/messages/DQLBundle.properties Adds new service strings and renames execute action label key
src/main/resources/META-INF/plugin.xml Switches service contributor + action id/class for query execution
src/main/java/pl/thedeem/intellij/edql/EDQLFileType.java Uses shared icon source (Icons)
src/main/java/pl/thedeem/intellij/dql/services/ui/TenantServiceGroup.java New service grouping node for tenant-based grouping
src/main/java/pl/thedeem/intellij/dql/services/ui/DQLServicesManager.java Removes DQL-specific services manager (replaced by generic manager)
src/main/java/pl/thedeem/intellij/dql/services/ui/DQLServiceViewContributor.java Removes DQL-specific services contributor
src/main/java/pl/thedeem/intellij/dql/services/ui/DQLManagedService.java Removes DQL-specific service interface (replaced by ManagedService)
src/main/java/pl/thedeem/intellij/dql/services/query/DQLQueryConfigurationServiceImpl.java Adds updateConfiguration() to persist updated config on a file
src/main/java/pl/thedeem/intellij/dql/services/query/DQLQueryConfigurationService.java Exposes updateConfiguration() API
src/main/java/pl/thedeem/intellij/dql/exec/runConfiguration/ExecuteDQLRunConfiguration.java Registers executions via ProjectServicesManager and updates DQLExecutionService ctor usage
src/main/java/pl/thedeem/intellij/dql/exec/panel/DQLExecutionResult.java Ensures progress panel is shown while execution is running
src/main/java/pl/thedeem/intellij/dql/exec/DQLExecutionService.java Migrates to ManagedService, adds tenant grouping, updates lifecycle/actions, threading, and data context
src/main/java/pl/thedeem/intellij/dql/editor/gutter/DQLQueryConfigurationLineMarkerProvider.java Replaces old toolbar action with new QueryConfigurationAction popup
src/main/java/pl/thedeem/intellij/dql/editor/gutter/DQLFileQueryExecutionLineMarkerProvider.java Uses new execute action package and copies config before mutation
src/main/java/pl/thedeem/intellij/dql/editor/actions/TenantSelectorAction.java Updates tenant selection writeback API to use AnActionEvent data
src/main/java/pl/thedeem/intellij/dql/editor/actions/StartStopDQLExecutionAction.java Reworks start/stop logic to use ProjectServicesManager and better file resolution (incl injected contexts)
src/main/java/pl/thedeem/intellij/dql/editor/actions/SaveQueryConfigurationAction.java Switches to new data keys and adds explicit presentation (icon/text)
src/main/java/pl/thedeem/intellij/dql/editor/actions/QueryConfigurationTimeframeAction.java New custom component action for timeframe editing
src/main/java/pl/thedeem/intellij/dql/editor/actions/QueryConfigurationOptionsAction.java New custom component action for scan/max options with toggle
src/main/java/pl/thedeem/intellij/dql/editor/actions/QueryConfigurationAction.java New composed toolbar action hosting tenant/execute/timeframe/options/save actions
src/main/java/pl/thedeem/intellij/dql/editor/actions/ExecutionManagerAction.java Removes legacy execution manager toolbar implementation
src/main/java/pl/thedeem/intellij/dql/editor/actions/ExecuteDQLQueryAction.java Removes legacy execute action (moved to new package)
src/main/java/pl/thedeem/intellij/dql/editor/actions/AbstractTimeFieldAction.java Removes legacy text-field action implementation
src/main/java/pl/thedeem/intellij/dql/editor/actions/AbstractTextFieldAction.java Removes legacy text-field base implementation
src/main/java/pl/thedeem/intellij/dql/editor/actions/AbstractNumericFieldAction.java Removes legacy numeric text-field action implementation
src/main/java/pl/thedeem/intellij/dql/editor/DQLToolbarProvider.java Uses QueryConfigurationAction and supplies query configuration via UiDataProvider
src/main/java/pl/thedeem/intellij/dql/definition/model/QueryConfiguration.java Adds copy() helper for safer config mutation
src/main/java/pl/thedeem/intellij/dql/components/QueryTimeframeConfigurationComponent.java New reusable timeframe UI component
src/main/java/pl/thedeem/intellij/dql/components/QueryConfigurationComponent.java New reusable options UI component
src/main/java/pl/thedeem/intellij/dql/actions/ExecuteDQLQueryAction.java New execute action implementation using ProjectServicesManager
src/main/java/pl/thedeem/intellij/dql/actions/ActionUtils.java Removes legacy shared action helper utilities
src/main/java/pl/thedeem/intellij/dql/DQLIcon.java Switches to shared Icons interface
src/main/java/pl/thedeem/intellij/dpl/DPLIcon.java Switches to shared Icons interface
src/main/java/pl/thedeem/intellij/common/services/ProjectServicesManager.java New generic project-level service registry for Services view
src/main/java/pl/thedeem/intellij/common/services/ManagedServiceViewContributor.java New grouping contributor for Services view + grouping support
src/main/java/pl/thedeem/intellij/common/services/ManagedServiceGroup.java New group interface for Services view grouping
src/main/java/pl/thedeem/intellij/common/services/ManagedService.java New managed service interface with grouping and id
src/main/java/pl/thedeem/intellij/common/components/SimpleDataProviderPanel.java New helper panel implementing UiDataProvider
src/main/java/pl/thedeem/intellij/common/components/ResizableTextField.java New resizable text field with numeric/time validation support
src/main/java/pl/thedeem/intellij/common/StandardItemPresentation.java Strengthens nullability annotations
src/main/java/pl/thedeem/intellij/common/IntelliJUtils.java Adds helper to resolve project-relative files
src/main/java/pl/thedeem/intellij/common/Icons.java New shared Dynatrace icon holder

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 6, 2026

Qodana for JVM

It seems all right 👌

No new problems were found according to the checks applied

💡 Qodana analysis was run in the pull request mode: only the changed files were checked

View the detailed Qodana report

To be able to view the detailed Qodana report, you can either:

To get *.log files or any other Qodana artifacts, run the action with upload-result option set to true,
so that the action will upload the files as the job artifacts:

      - name: 'Qodana Scan'
        uses: JetBrains/qodana-action@v2025.3.1
        with:
          upload-result: true
Contact Qodana team

Contact us at qodana-support@jetbrains.com

@dorian-krefft-dt dorian-krefft-dt merged commit c9a4814 into main Feb 6, 2026
7 checks passed
@dorian-krefft-dt dorian-krefft-dt deleted the feature/dql/grouping-services-by-tenant branch February 8, 2026 21:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant