Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] IWeavingServiceFactory.createWeavingService takes a BundleDescription

I will be at EclipseCon.  If you and/or Martin are there, perhaps we can get together to discuss the details there as well.

Tom



Inactive hide details for Andrew Eisenberg ---03/11/2013 06:11:01 PM---Thanks for the advice. I have the workspace set up now aAndrew Eisenberg ---03/11/2013 06:11:01 PM---Thanks for the advice. I have the workspace set up now and the hook is being activated.  Unfortunate

From: Andrew Eisenberg <andrew@xxxxxxxxxxxx>
To: Thomas Watson/Austin/IBM@IBMUS,
Cc: Equinox development mailing list <equinox-dev@xxxxxxxxxxx>, mlippert@xxxxxxxxxx
Date: 03/11/2013 06:11 PM
Subject: Re: [equinox-dev] IWeavingServiceFactory.createWeavingService takes a BundleDescription
Sent by: andrew.eisenberg@xxxxxxxxx





Thanks for the advice. I have the workspace set up now and the hook is being activated.  Unfortunately, the weaving is not happening.  I'll have to explore a bit more and I'll bring Martin Lippert into the conversation as well (since he's the original author of Equinox Weaving).  After we learn a bit more, we'll get back to you.

On Fri, Mar 8, 2013 at 1:48 PM, Thomas Watson <tjwatson@xxxxxxxxxx> wrote:
    It is a bit more involved to deploy this into your Kepler instance.  You have to be running a Kepler instance with a workspace that has loaded both the org.eclipse.osgi and org.eclipse.osgi.compatibility.state projects.  Then you have to export the projects using "Export->Plug-in Development->Deployable plug-ins and fragments" and for the destination you have to select "Install into host. Repository:".  This will deploy the new framework to your running installation and you must then restart Eclipse.  If all goes well Eclipse will restart successfully on the new framework.

    Note that this is not ready for prime-time, so I suggest you do this on a Kepler installation that you don't mind blowing up.  I find it easier to just run Eclipse on the new framework by launching a self-hosted Eclipse instance from your Eclipse workspace while you have the org.eclipse.osgi and org.eclipse.osgi.compatibility.state projects loaded.

    Tom



    Inactive hide details for Andrew Eisenberg ---03/08/2013 03:34:50 PM---Hi Tom, Thanks for taking a look at this.  AJDT is one oAndrew Eisenberg ---03/08/2013 03:34:50 PM---Hi Tom, Thanks for taking a look at this.  AJDT is one of the main consumers

    From:
    Andrew Eisenberg <andrew@xxxxxxxxxxxx>
    To:
    Equinox development mailing list <equinox-dev@xxxxxxxxxxx>,
    Date:
    03/08/2013 03:34 PM
    Subject:
    Re: [equinox-dev] IWeavingServiceFactory.createWeavingService takes a BundleDescription
    Sent by:
    equinox-dev-bounces@xxxxxxxxxxx





    Hi Tom,

    Thanks for taking a look at this.  AJDT is one of the main consumers
    of org.eclipse.equinox.weaving.hook through the
    org.eclipse.equinox.weaving.aspectj bundle.  It looks like you have
    also updated the org.eclipse.equinox.weaving.aspectj bundle.  I will
    get a chance to try this out next week.  Just to be sure, if I check
    out this branch of equinox and drop the osgi bundle into Kepler, will
    things hang together?

    regards,
    Andrew

    On Fri, Mar 8, 2013 at 12:57 PM, Thomas Watson <
    tjwatson@xxxxxxxxxx> wrote:
    > Keep in mind this is a discussion for Luna, not Kepler.  I have been
    > spending some time lately around the new framework implementation based on
    > the OSGi R5 generic capability/requirement model.
    >
    > I was looking at porting the Equinox weaving hooks
    > (org.eclipse.equinox.weaving.hook) over to a new Equinox framework
    > implementation that is based internally on the generic
    > capability/requirement model of the OSGi R5 specification.  This framework
    > implementation no longer is based on the old Equinox resolver API
    > (org.eclipse.osgi.service.resolver).  As such the weaving hook
    > implementation no longer has access to BundleDescription objects or a State
    > object at runtime.  Instead it would have access to
    > org.osgi.framework.wiring.BundleRevsion/BundleWiring objects.
    >
    > How disruptive would it be to make a breaking API change to
    > org.eclipse.equinox.service.weaving.IWeavingServiceFactory to take a
    > org.osgi.framework.wiring.BundleRevsion instead of the old
    > org.eclipse.osgi.service.resolver.BundleDescription and no longer take a
    > org.eclipse.osgi.service.resolver.State?
    >
    > I noticed the bundle org.eclipse.equinox.weaving.hook exports the package
    > org.eclipse.equinox.service.weaving with no version (defaulting to 0.0.0).
    > For the next release I suggest we bump this version to 1.0.0 and indicate a
    > breaking change for implementors of
    > org.eclipse.equinox.service.weaving.IWeavingServiceFactory.  I'm not sure
    > how many others outside of the org.eclipse.equinox.weaving.aspectj bundle
    > implement this interface.  But without this type of change I see no way to
    > support Equinox Weaving on the new framework.  Beyond this I still want
    > someone to investigate moving as much of the Equiniox weaving hooks onto the
    > standard OSGi WeavingHook services [1].
    >
    > If you want to see the work I have done so far then load up the
    > twatson/container branches from both the rt.equinox.framework [2] and
    > rt.equinox.bundles [3] git repositories.  You should be able to self-host
    > Eclipse if you load up the framework project (org.eclipse.osg) and the
    > compatibility state project (org.eclipse.osgi.compatibility.state) which
    > provides an implementation of the old equinox PlatformAdmin/State mainly to
    > support PDE.  I have not done any testing of the weaving hook changes.  I
    > only spent the morning getting rid of compile errors which pointed me to
    > this API issue with BundleDescription in the Equinox Weaving API.
    >
    > [1]
    https://bugs.eclipse.org/bugs/show_bug.cgi?id=377422
    > [2]
    >
    http://git.eclipse.org/c/equinox/rt.equinox.framework.git/log/?h=twatson/container
    > [3]
    >
    http://git.eclipse.org/c/equinox/rt.equinox.bundles.git/log/?h=twatson/container
    >
    >
    > Tom
    >
    >
    > _______________________________________________
    > equinox-dev mailing list
    >
    equinox-dev@xxxxxxxxxxx
    >
    https://dev.eclipse.org/mailman/listinfo/equinox-dev
    >
    _______________________________________________
    equinox-dev mailing list

    equinox-dev@xxxxxxxxxxx
    https://dev.eclipse.org/mailman/listinfo/equinox-dev


GIF image


Back to the top