-
Notifications
You must be signed in to change notification settings - Fork 6
Release 7.0.0 - revision 2 updates #304
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
tuplle
wants to merge
187
commits into
release/7.0.0
Choose a base branch
from
release/7.0.0-rev2
base: release/7.0.0
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- implemented plugin registration
- plugin registration server
- plugin unregistration server - plugin executin basics
- implemented execution for plugin
- implemented execution for plugin
- added injector to action delegate
- added injector to action delegate
- added injector to action delegate
- modified injector
- moved meta objects
- modified injector - added name attribute to plugin
- added logging
- modified convention
- modified convention
- modified pom - added conditional on property
- add or update javadoc - optimize imports in DemoRunner - implement PluginRunner - make Plugin.identifier indexed - refactor in PluginRegistrationService - refactor methods in PluginService - fix warning in ClassToStringConverter - fix properties for plugin management - update gRPC version
- move methods in PluginService
- implement PluginRegistrationServiceTest
- implement PluginServiceTest
- implement unregistration of plugin
- implement PluginRegistrationServiceTest.testUnregister
- rework plugin as process - update plugin runner - remove plugin models and repository - add method in ImportHelper - mark method ImportHelper.populateDataset as deprecated - add error logging in PluginRegistrationService - create plugin constants in PluginConstants - create plugin utils in PluginUtils - update javadoc - fix and update tests
- update error response in PluginRegistrationService
- add and use custom exceptions - implement request validation in PluginRegistrationService - fix error handling in PluginService - fix import in PluginService - update and add tests in PluginRegistrationServiceTest
- update tests to test PluginInjector protected methods
- implement CreateOrUpdateOutcomeTest
- add translations into plugin processes - fix logging in PluginService
- fix uninjecting outdated metadata when activating plugin in PluginService - update tests in PluginRegistrationServiceTest - fix actions in test_plugin_injector.xml
- add attribute in GetOrCreateOutcome - fix handling of overlapping methods in request - add test for overlapping methods in PluginRegistrationServiceTest
- In the constructor for `Task` (domain `Task` to DTO), the mapping of the user field was updated to set `userId` by fetching the string ID (`task.getUser().getStringId()`) instead of creating a `User` object (`User.createUser(...`). - These changes simplify the `Task` class by focusing on storing the `userId` directly instead of the complete `User` object.
- Added `@ConditionalOnMissingBean` annotation to the `actionDelegate` bean to ensure it is only created if not already defined. - Renamed `Module` to `NaeModule` throughout `ActionDelegate.groovy` for consistency with naming conventions.
- Added `userRealmId` property to the `Task` class with getters and setters for better user realm tracking. - Updated `TaskService` to handle `userRealmId` during task start, delegation, and completion processes. - Removed `@NoArgsConstructor` annotations from `ElasticCase` and `ElasticTask` to enforce proper instantiation via constructors. - Added `@JsonIgnore` to the `getUserRealmId` method for serialization behavior control. These changes enhance task user identification and support future implementation of multi-realm capabilities.
- Added `userRealmId` property to the `Task` class with getters and setters for better user realm tracking. - Updated `TaskService` to handle `userRealmId` during task start, delegation, and completion processes. - Removed `@NoArgsConstructor` annotations from `ElasticCase` and `ElasticTask` to enforce proper instantiation via constructors. - Added `@JsonIgnore` to the `getUserRealmId` method for serialization behavior control. These changes enhance task user identification and support future implementation of multi-realm capabilities.
- reverted noargsconstructor - added userRealmId to builder constructor
[NAE-2115] Task search on Search Node
- Remove `@JsonIgnore` annotation from overridden `getTasks` method
- Added transformation methods `transformCaseFieldField` and `transformFilterFieldField` to `ElasticCaseMappingService`. - Introduced new classes `CaseField` and `FilterField` in both `elastic` and `spring.elastic` domains. - Updated `I18nField` to include `translations` using a `Map<String, String>` and annotated it appropriately for ElasticSearch. - Enhanced `GetDataEvent` to handle null values safely in `getMessage`. - Modified `User` domain to handle `tel` attribute when `attributes` is null. - Fixed formatting of multiple methods for better readability. - Updated `docker-compose.yml` to correct misplaced `networks` and `volumes` definition.
…alization - Introduced a `getValue` method to multiple field classes (`MapField`, `DataField`, `UserField`, `CaseField`, `DateField`, and others) to standardize data retrieval from field objects. - Created a new `ImmediateField` class for representing immediate data fields in `ElasticCase`. - Updated `ElasticCase` to include handling for `immediateData` with proper mapping from `ImmediateField`. - Refactored imports across the affected classes to use `java.util.*` and streamline code. - Enhanced `FileField` with support for file paths and proper serialization via `getValue`. - Updated various field structure definitions to ensure clarity and consistency in field data management. This change improves maintainability and provides better support for advanced data retrieval and serialization of field objects.
- Corrects the condition to check if the user is null before accessing its realmId. Prevents potential NullPointerException when the user object is not initialized.
Adjusted null and boundary checks in `getValue` methods to prevent runtime exceptions and ensure data integrity. Added validation for filter type in `ActionDelegate` to avoid illegal arguments and improved string handling for robustness.
[NAE-2119] Fix menuItem
Introduced annotations (`EntryPoint` and `EntryPointMethod`) and corresponding domain models (`Plugin`, `EntryPoint`, `Method`, and `ListenerFilter`) to support a plugin architecture. These enable defining and managing plugins, their methods, and listener filters for remote invocation.
Introduced a new interface to define plugin registration configuration. It includes methods for retrieving the plugin name, version, and entry points. This provides a foundation for standardizing plugin integration.
Introduced core classes and services to enable a plugin architecture. This includes plugin injection, entry point management, and dynamic meta-class updates for ActionDelegate. The changes set the foundation for extensible plugin support within the system.
Introduced core classes and services to enable a plugin architecture. This includes plugin injection, entry point management, and dynamic meta-class updates for ActionDelegate. The changes set the foundation for extensible plugin support within the system.
The EntryPointLoaderService interface was unused and redundant, so it has been deleted to simplify the codebase. This helps maintain cleaner and more maintainable code.
Replaced the use of EntryPointLoaderService with ApplicationContext to retrieve PluginRegistrationConfiguration beans. This simplifies the process of loading plugins and their entry points, consolidating configuration management and improving maintainability.
Updated the PluginRunner to assign the plugin version from the configuration file instead of using a hardcoded value. This ensures better flexibility and easier version management for plugins.
Introduced PluginHolder as a new field in ActionDelegate and initialized it in the constructor. This change supports enhanced plugin management within the ActionDelegate logic.
- Enhanced PluginInjector with improved meta-class injection logic and documentation. - Updated PluginRegistrationConfiguration to include metadata retrieval.
- Introduced @target and @retention annotations for ListenerFilter definition. - Ensured compatibility with method-level usage and set retention policy at runtime.
[NAE-2129] Inject Plugin JAR into Community Edition
Introduced `unInject` method to remove plugins from the meta-class system, disabling their dynamic calls. Updated `updateMetaClasses` to handle both injection and removal actions.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
bugfix
A change that fixes a bug
critical
A change that is critical to a release and must not be omitted
improvement
A change that improves on an existing feature
new feature
A change that introduces new functionality
update
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
A lot of changed.
More description TBD.
Dependencies
Third party dependencies
Blocking Pull requests
<Depends on #(PR id)>/
How Has Been This Tested?
Test Configuration
<Please describe configuration for tests to run if applicable, like program parameters, host OS, VM configuration etc.>
Checklist: