Jump to: navigation, search

Auto-conf meeting logs

August 6 2007

Markus explained how to use OS-specific fragments.

Aug 06 11:35:44 <onnadi3>	I still haven't figured out how to incorporate code from OS-specific fragments
Aug 06 11:35:54 <onnadi3>	I haven't worked on that bug since I posted it
Aug 06 11:36:04 <onnadi3>	~196660
Aug 06 11:36:42 <lemmy>	bugzilla is probably still down
Aug 06 11:37:13 <onnadi3>	I can access it just fine. (why didn't KOS-MOS autocomplete?)
Aug 06 11:37:59 <lemmy>	bugzilla was down earlier today. maybe KOS-MOS needs a restart?!
Aug 06 11:38:15 <onnadi3>	strange
Aug 06 11:39:14 <KOS-MOS>	See bug 196660 - https://bugs.eclipse.org/bugs/show_bug.cgi?id=196660
Aug 06 11:39:20 <onnadi3>	yay!
Aug 06 11:40:21 <onnadi3>	So, have you ever written OS-specific fragments before?
Aug 06 11:40:40 <lemmy>	yep
Aug 06 11:41:13 <onnadi3>	Could you send me the fragment's manifest or any other code so I can figure out how to do it in Discovery?
Aug 06 11:43:37 <lemmy>	onnadi3, swt itself uses fragments.
Aug 06 11:43:46 <lemmy>	which are pretty much platform dependent.
Aug 06 11:44:28 <onnadi3>	I just can't figure out how to make certain code/classes appear on one OS and not in another
Aug 06 11:44:42 <onnadi3>	Perhaps its not too important. We could alway just bundle em all together
Aug 06 11:45:36 <lemmy>	we could
Aug 06 11:46:40 <onnadi3>	okay
Aug 06 11:46:43 <lemmy>	the interfaces of each fragment has to be the same, but the impl might differ. actually i would move the interfaces into the host plug-in and let the fragments implement the interfaces.
Aug 06 11:47:32 <lemmy>	making certain classes appear only on a certain os kinda destroys the fragment purpose anyway.
Aug 06 11:47:39 <onnadi3>	So, we'd publish a JREFinder-win or JREFinder-osx?
Aug 06 11:47:47 <lemmy>	nope
Aug 06 11:48:18 <lemmy>	we publish a jrefinder and a jrefinder-win-fragment and a jrefinder-osx-fragment.
Aug 06 11:48:42 <lemmy>	a customer deployes all three inside osgi and osgi takes care of loading the right fragment.
Aug 06 11:49:01 <lemmy>	osgi checks the platform filter to determine which fragment to load.
Aug 06 11:50:23 <--	moksha_anderson (n=mr_ander@ppe75-1-87-88-113-246.dsl.club-internet.fr) has left #eclipse-soc
Aug 06 11:50:34 <onnadi3>	Hmm, but then we're back at square one because I don't know how to set the OS filter. I've really tried and tried but there seems to be no articles that explain how to do it
Aug 06 11:50:57 <lemmy>	swt demonstrates it perfectly. Just extract org.eclipse.swt_3.3.0.vNNNN.jar and org.eclipse.swt.os.ws.arch.NNNN.jar
Aug 06 11:51:26 <lemmy>	onnadi3, os filters are explained in the osgi r4 spec. either the compendium or the core.
Aug 06 11:51:37 <onnadi3>	oh
Aug 06 11:52:16 <onnadi3>	I have the core here. Let me check it again
Aug 06 11:52:17 <lemmy>	in our case it is even easier than it is for swt. we don't need to care about arch and ws. we only need to care about os.
Aug 06 11:52:38 <lemmy>	(& (osgi.os=linux) (osgi.arch=x86))
Aug 06 11:53:04 <lemmy>	it's a ldap style "query".
Aug 06 11:56:00 <onnadi3>	Hmm, I found a small section in core about fragments. I think once I look through that and then through the jars (I didn't think of looking there), I'll be able to get this figured out
Aug 06 11:56:44 <lemmy>	in our case the platform filter will probably look just like "(osgi.os=linux)" and "(osgi.os=win32)"...
Aug 06 11:58:03 <onnadi3>	cool
Aug 06 11:59:58 <onnadi3>	Ah, I'm beginning to understand it now. The section on filters is hidden in the "Service Layer" section. That's how come I'd never seen it before