That is possible by using bundleContext.getAllServiceReferences(class=service class,null) and then traverse the ServiceReferences to find whose getBundle().getSymbolicName/getVersion matches your bundle.
But, as I wrote above, is there any need to know such information? -Rex 2009/12/16 Jack Cai <[email protected]> > By "using" I mean service wiring, i.e., bundles that have a live instance > of a service exported by this bundle. Is this possible? > > -Jack > > > On Wed, Dec 16, 2009 at 10:39 AM, Delos <[email protected]> wrote: > >> *Thanks Rex. >> >> There is a method "getRequiringBundles()" in BundleStateMbean defined in >> RFC 139. I hope to get the bundle list for Jack's request. Do you think it >> has taken #1 into account?* >> >> 2009/12/16 Rex Wang <[email protected]> >> >> >>> >>> 2009/12/15 Jack Cai <[email protected]> >>> >>> Nice work. A few comments - >>>> >>>> 1. Better add a "filter" or alike text before textbox D >>>> 2. Area B is a little far away from the selection checkboxes, suggest to >>>> move them closer. By design, users always need to select some bundles by >>>> checking the check boxes and then move the mouse to the action buttons in >>>> B. >>>> So the nearer, the better >>>> 3. It looks like the buddle information page is pretty lightweight. Have >>>> we considered to embed it into the list page? As a pop up or expandable >>>> area... >>>> 4. Might want to add paging function >>>> 5. Might want to use icon to show the status >>>> >>>> Also, will it be interesting to show what other bundles are currently >>>> using a certain bundle? >>> >>> There are three kinds of "using": >>> 1. import-package/required-bundle wiring >>> 2. service wiring >>> 3. geronimo bundle dependency >>> for #1, that means a view to show which one imports the packages the >>> bundle exports. >>> for #2, I think we don't need to care about that, because even if a >>> service provider bundle is uninstalled, the bundle using the service object >>> can still run without problems. OSGi framework will maintain the service >>> object for this bundle until it un-gets the service. >>> for #3, that is the current dependency viewer in the debug-view Portlet. >>> >>> So, do you mean the #1? That will be great to display such information. >>> >>> -Rex >>> >>>> >>>> -Jack >>>> >>>> >>>> On Tue, Dec 15, 2009 at 5:19 PM, Delos <[email protected]> wrote: >>>> >>>>> Hi all, >>>>> >>>>> OSGI Bundle is a new item for Geronimo admin console and RFC 139 >>>>> defines many Mbeans used to get bundle information in OSGI environment. So >>>>> it's necessary for admin console to show the information of OSGI bundles. >>>>> >>>>> Therefore, Rodger and I mocked up a couple of portlets. Here are some >>>>> screenshots for the mock UI. As you can see, we have two portlets here, to >>>>> show the bundle list and bundle information. It's a initial draft based on >>>>> Dojo widgets without full javascript implementation. >>>>> >>>>> Screenshot 1: >>>>> https://svn.apache.org/repos/asf/geronimo/sandbox/delos/dojoBundleList_anntation.JPG >>>>> Screenshot 2: >>>>> https://svn.apache.org/repos/asf/geronimo/sandbox/delos/singlebundle.JPG >>>>> >>>>> In the attachment, 1 is the bundle list portlet, while 2 is the bundle >>>>> information portlet. Bundle list portlet gives a list of installed >>>>> bundles;besides, the portlet also allow user to stop/start/uninstall >>>>> bundles. Bundle information portlet is much simpler, it only display the >>>>> bundle information in OSGI framework. Mbeans defined in RFC 139 is a way >>>>> to >>>>> obtain the information. >>>>> >>>>> For better illustration, I added some markers (A,B,C,D,E) in snapshot >>>>> 1. >>>>> >>>>> A - With these widgets, user can install any bundle from file system. >>>>> If "start" is checked, the bundle will be started automatically after it's >>>>> installed.Meanwhile, user can also specify the start level of this bundle. >>>>> I'm not sure if the "Deploy New" portlet will be applicable for OSGI >>>>> bundles, so I just mock the installation UI according to Web console of >>>>> Felix. >>>>> >>>>> B - All the possible actions can be taken to bundles. Every bundle can >>>>> be selected through the checkbox in front of it. Each time an action is >>>>> taken to all the selected bundles. If the action is not applicable for >>>>> some >>>>> bundles, these bundles will be ignored. >>>>> >>>>> C - Each column in the table can be sorted by clicking the column >>>>> header. The up arrow stands for sort asending while the down arrow stands >>>>> for sort desending. >>>>> >>>>> D - The textbox here is used to filter bundles by symbolic name. Only >>>>> the bundles with symbolic name containing specified text will be shown. If >>>>> no text provided, all the bundles will show >>>>> >>>>> E - The drop down list here gives the possible status of an installed >>>>> bundle - "resolved","starting","active","stopping". It's used to filter >>>>> bundles by status. If one status is selected, only bundle with status the >>>>> same as selected value will be shown. If no value is selected, all the >>>>> bundles will be shown. >>>>> >>>>> That's all for the snapshot. Any comments? >>>>> >>>>> Thanks a lot! >>>>> >>>>> >>>>> -- >>>>> Best Regards, >>>>> >>>>> Delos >>>>> >>>> >>>> >>> >> >> >> -- >> Best Regards, >> >> Delos >> > >
