Enhancement #2819
View::getCommandList() API deprecation
Status: | CLOSED | Start date: | ||
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | - | % Done: | 100% | |
Category: | - | |||
Target version: | v1.6.0 | |||
Resolution: | NEEDINFO: | No |
Description
The getCommandList() API and the underlying Command pattern based implementation is complex and difficult to extend.
Implement a new API to talk to Framework components:- HTTP response
- User Notifications (Validation errors)
- System Processes (Tasks)
Related issues
Associated revisions
New DependencyInjector class. Refs #2819
- Provides a more flexible module initialization, leveraging the
existing setter methods.
- Replaces the old callbacks mechanism.
Api doc: document deprecated methods. Refs #2819
ViewInterface: getCommandList() is deprecated. Refs #2819
Use Dependency Injection to replace the command pattern.
Xhtml renderer (useFile): use base URL paths. Refs #2819
Removed getCommandList() calls. Refs #2819
Applied in classes:
- Xhtml renderer
- Resource module
Framework: build DI container and PDP on each request. Refs #2819
Added deprecation warnings. Refs #2819
Framework: refactor of moduleLoader creation. Refs #2819
Removed CommandInterface. Refs #2819
Backward compatibility provided by LegacyCommandBag class.
ResponseInterface: HttpResponse implementation. Refs #2819
Deprecated AbstractRenderer::hashToDatasource. Refs #2819
Use \Nethgui\Widget\XhtmlWidget::hashToDatasource
Fix httpRedirection() for non-JS clients. Refs #2819
DI: added DependencyConsumer interface. Refs #2819
Model split. Refs #2819
Help, Menu, Notification, Resouce system modules have been refactored
to use a specific Model class.
Request: receive User as an external dependency. Refs #2819
The User object was previously resurrected from Session.
DependencyInjector: use Pimple as DI Container. Refs #2819
HttpResponse class: moved to Utility namespace. Refs #2819
Pimple in Framework. Refs #2819
Use DI for Login/Session processing. Refs #2819
Help/Read: override default root view template, to show help document. Refs #2819
Build Main module on each handle() call. Refs #2819
Set HTTP status 400 "Request validation error". Refs #2819
Main: handle default module redirection (Dashboard) with nextPath(). Refs #2819
LegacyCommandBag: setDecoratorTemplate() setDecoratorParameter() backward implementation. Refs #2819
Authorization/User: provide session continuity with Nethgui 1.5. Refs #2819
Restored the Serializable interface for backward compatibility. The
state of a valid session is retained and upgraded to the new format
automatically.
History
#1 Updated by Davide Principi about 7 years ago
- Status changed from TRIAGED to ON_DEV
- Assignee set to Davide Principi
- % Done changed from 20 to 30
#2 Updated by Davide Principi about 7 years ago
- Status changed from ON_DEV to MODIFIED
- Assignee deleted (
Davide Principi) - % Done changed from 30 to 60
Follow downstream QA: see #2820
#3 Updated by Davide Principi about 7 years ago
- Status changed from MODIFIED to ON_QA
- % Done changed from 60 to 70
#4 Updated by Davide Principi almost 7 years ago
- Related to Enhancement #2820: Embed Nethgui 1.6.0 into httpd-admin RPM added
#5 Updated by Davide Principi almost 7 years ago
- Status changed from ON_QA to VERIFIED
- % Done changed from 70 to 90
Verified by #2820
#6 Updated by Davide Principi almost 7 years ago
- Status changed from VERIFIED to CLOSED
- % Done changed from 90 to 100
Embedded into nethserver-httpd-admin-1.3.0-2.ns6.noarch
, repo nethserver-updates