|
View:
New views
3 Messages
—
Rating Filter:
Alert me
|
|
|
|
|
|
Re: constructing servicesHi Stephan,
> Those services *are* instantiated at the global service manager. It is > only that they are not typically instantiated with a statically known > name (where xyz.create is superior to smgr.createInstance("xyz")), but > rather with a computed one (where xyz.create would be of no use, at > least in your typical UNO language binding). Again, take a look at the > UriReferenceFactory example. Ah, I didn't understand that you were aiming at the URI scheme parsers, not their factory. Got it now, thanks :) > The simple UNOIDL syntax "service Service: Interface;" does cause > default constructors to be generated. Do you know any cases where > inadvertently the special-case syntax "service Service: Interface {};" > was used instead? Maybe we can still fix those. No, I don't know them. I just tried to construct a pretty round-about argument that a) people seem to know constructors too little b) if they knew, they would use new-style services more often (as this noticably decreases overhead when constructing such services) c) such subtle differences might repel people from using them. Anyway, not really a big deal, as said, just slightly unexpected. > The idea was to move service instantiation into the language bindings > (so, e.g., in C++ a class implementing a service would probably have C++ > class constructors matching the UNO service constructors, or static > factory methods, etc.). That's something I didn't dare to suggest :). Moving the ctor handling to the factories, instead of the current "always default-construct and then late-initialize" would be even better. For instance, implementations can get rid of all their "not initialized" handling, in case somebody creates them bypassing the explicit ctors, and does *not* subsequently initialize them. > The current XImplementation stuff is seen as a > gross hack to implement service constructors (at least by me). +1 > Unfortunately, this somehow keeps slipping on the urgent todo list... Sad enough. Whenever I implement constructors, I find it pretty ugly to do all this manual initialization coding. Ciao Frank -- - Frank Schönheit, Software Engineer frank.schoenheit@... - - Sun Microsystems http://www.sun.com/staroffice - - OpenOffice.org Base http://dba.openoffice.org - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --------------------------------------------------------------------- To unsubscribe, e-mail: interface-discuss-unsubscribe@... For additional commands, e-mail: interface-discuss-help@... |
|
|
|
| Free embeddable forum powered by Nabble | Forum Help |