[ 
https://issues.apache.org/jira/browse/FLINK-25725?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Junhan Yang updated FLINK-25725:
--------------------------------
    Description: 
Use a fractal folder structure:
 * routers
 * services (services that are only provided in current module)
 * layouts (components for layout purpose only)
 * modules (modules that are not relevant to routing)

All services of apis should be located at "src/app/services/" and provided in 
root. Other non-api services should be located and provided in the 
corresponding module scope.

For modules like task-manager and job-manager, use an injection token to allow 
potential configuration object customizing/overriding individual 
component/variable (e.g. rewrite a new chart node component and inject it 
through the injection token), increasing these modules' reusability (also a 
better DI practice).

  was:
Use a fractal folder structure:
 * routers
 * services (services that are only provided in current module)
 * layouts (components for layout purpose only)
 * modules (modules that are not relevant to routing)

All services of apis should be located at "src/app/services/" and provided in 
root. Other non-api services should be located and provided in the 
corresponding module scope.

For modules like task-manager and job-manager, use an injection token to enable 
potential configuration object customizing/overriding of individual 
component/variable (e.g. rewrite a new chart node component and inject it 
through the injection token), increasing these modules' reusability (also a 
better DI practice).


> Refactor web-dashboard's folder structure and use Angular DI injection token 
> for better reusability
> ---------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-25725
>                 URL: https://issues.apache.org/jira/browse/FLINK-25725
>             Project: Flink
>          Issue Type: Technical Debt
>          Components: Runtime / Web Frontend
>            Reporter: Junhan Yang
>            Priority: Major
>
> Use a fractal folder structure:
>  * routers
>  * services (services that are only provided in current module)
>  * layouts (components for layout purpose only)
>  * modules (modules that are not relevant to routing)
> All services of apis should be located at "src/app/services/" and provided in 
> root. Other non-api services should be located and provided in the 
> corresponding module scope.
> For modules like task-manager and job-manager, use an injection token to 
> allow potential configuration object customizing/overriding individual 
> component/variable (e.g. rewrite a new chart node component and inject it 
> through the injection token), increasing these modules' reusability (also a 
> better DI practice).



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to