Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ecf-dev] OSGi-ECF-Mgmt-Ui-Vaadin - Regions

Hey,

i am working on the Vaadin UI for the ECF Management Repo [1].

Right now i have to make some base design decisions. I explored the implementations and tried to figure out, how to map to UI.

Now I am going to start with a first Vaadin component. A component to manage BundleMTO. The component will use the ecf.mgmt.IBundleManager. It offers a method #getBundles().

And here i need to make the first very common design decision.

#getBundles() is related to the bundleContext it is called from. There is the "OSGi subsystem service spec", the "region implementation by equinox" and the hook-services defined by OSGi core spec. These specs and implementations may influence the visibility of bundles, services, events,... 
And the visibility of bundles depends on the context (bundleContext) #getBundles is called from.


My question to you all: "How may a common UI for bundles look like, to reflect the issues above?"

In my opinion components to manage (display) bundles (and services) need the bundleContext as an input. Only if the "input bundleContext" is known, the visible bundles can be displayed. If input is null, then the "framework bundle (id==0)" should be used.


So i am thinking about a Master-Detail architecture.

The master shows all bundles visible to the "framework bundle (id==0)". If a bundle is selected in the master table, by a combo box or even by event admin (selected bundleContexts will be published by event admin), the detail view shows all visible bundles for the selected bundleContext.

And it should also be possible to select regions i guess. So "show all visible bundles for region x". 

In short:
A bundle component that shows all visible bundles.... 
  • needs a master showing all bundles by framework bundle
  • detail components needs to use an "input bundleContext" to determine all visible bundles filtered by issues above
  • if the input context is null, the system bundle is used to show bundles
  • components should provide a possibility to select the "input context" by an Ui selection element displaying all bundles based on the "framework bundle"

I think that architecture should meet all possible usecases. Inputs are very welcome.


[1] https://github.com/ECF/OSGIRemoteManagement

Thanks a lot,
Florian

Back to the top