qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Huston" <shus...@riverace.com>
Subject RE: Question about exporting qmf-gen-generated symbols
Date Wed, 06 May 2009 20:53:42 GMT
Hi Andrew,

> On Tue, 2009-05-05 at 18:01 -0400, Steve Huston wrote:
> > I've been working on building the ACL plugin on Windows. The
plugin
> > links against the broker library to pick up the qmf-gen-generated
> > ACL-related classes/events. This is failing on Windows because the
> > qmf-gen stuff isn't inserting export directives.
> > 
> > Much more than just the ACL stuff gets generated with the same
> > templates, so I'm wondering if there's a better way to fix the
build
> > than by exporting lots of things that aren't needed.
> > 
> > One idea I had was to add a property to the xml file that 
> says "export
> > this". Is this a sane thing to do? Is the xml file's schema 
> defined as
> > an industry format that's not changeable?
> > 
> > Any other ideas? It won't really hurt anything to export all the
> > symbols (that's effectively what's done on Linux/gcc), but 
> seems like
> > killing a fly with a bazooka.
> 
> I think that probably the correct way to do this is for the broker
to
> export some object via something like getBlah() which exposes the
> managment interface used by the acl plugin.
>
> I think it's a better architecture for a plugin to request it's
target
> for more or less all things it needs to plug into.

Right. That's quite a job in this case, though. More than I have
available time to tackle.

> I'm not sure if the generated header are set up to make this 
> possible or
> not so I can't say if this is actually feasible in the short term
> though.

Part could be. For example, the ACL plugin creates a QMF-scoped Acl
object. This could probably be obtained using a factory in the broker
with a common interface. However, the ACL plugin code raises events,
and each call to raiseEvent creates a separately typed object and the
constructors for all those must be exported from the broker lib for
this to work. Changing the way the events work would be a large part
of this if some other scheme were to be implemented.

Also, to keep track of further discussion of this area I created
QPID-1842.

Thanks,
-Steve


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Mime
View raw message