Uploaded image for project: 'Forge'
  1. Forge
  2. FORGE-1007

Furnace container should support pluggable service providers.

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Major Major
    • 2.0.0.Alpha7
    • 2.0.0.Alpha6
    • Furnace (Container)
    • None

      11:49:28 AM lincolnthree1: gastaldi: I am considering creating a furnace-cdi addon
      11:50:22 AM lincolnthree1: if all addons depended on this, it would make it a lot easier to support pluggable addon containers, instead of assuming CDI based on beans.xml
      11:50:32 AM lincolnthree1: they could depend on that instead of furnace-api
      11:50:43 AM lincolnthree1: and it would no longer need to be <provided> scope
      11:51:21 AM lincolnthree1: i would say that it could wait for Forge 2.1
      11:51:23 AM lincolnthree1: but...
      11:51:29 AM lincolnthree1: it would likely not be a backwards compatible change.
      11:52:16 AM lincolnthree1: it's pretty complicated though
      11:52:22 AM lincolnthree1: so i'll probably put it off
      11:52:40 AM lincolnthree1: we need to get business value first
      11:52:42 AM lincolnthree1: and we don't need that atm
      11:53:08 AM lincolnthree1: but… what we could do is use the addon as a marker
      11:53:18 AM lincolnthree1: that would be simpler than actually implementing it all
      11:53:23 AM lincolnthree1: it would still bring in the APIs
      11:53:29 AM lincolnthree1: but wouldn't really change the internals
      11:55:24 AM gastaldi: hummm
      11:55:31 AM gastaldi: that would be interesting
      11:55:32 AM lincolnthree1: actually, that might very well work
      11:55:57 AM gastaldi: I think we should do it for 2.0
      11:56:00 AM lincolnthree1: in the end, this addon would register a service called "AddonInitializer" that handles the startup/shutdown of the addon (aka, addon Runnable)
      11:56:02 AM lincolnthree1: yeah me too
      11:56:15 AM lincolnthree1: Furnace could get that instance from the addon itself using ServiceLoader
      11:56:32 AM lincolnthree1: then it would call it and the lifecycle comes from the addon itself!!
      11:56:41 AM lincolnthree1: brilliant!
      11:57:07 AM lincolnthree1: a classloading-only addon just becomes one, then, that doesnt have an AddonInitializer
      11:57:10 AM lincolnthree1: I like it
      11:57:11 AM lincolnthree1: a lot
      11:57:58 AM gastaldi: JIRA that sh*t
      11:58:18 AM lincolnthree1: it maybe already
      11:58:23 AM lincolnthree1: but i'll add these notes if it is
      gegastaldi [~gastaldi@redhat/jboss/gastaldi] entered the room. (11:58:33 AM)
      mode (+o gegastaldi) by ChanServ (11:58:33 AM)
      12:00:04 PM lincolnthree1: gastaldi: getting lunch and relocating
      12:00:06 PM lincolnthree1: back in a bit
      12:00:35 PM gegastaldi: K
      12:02:17 PM gegastaldi: That would enable CDI extensions
      12:02:26 PM gegastaldi: On each addon
      12:02:43 PM lincolnthree1: gegastaldi: maybe
      12:02:46 PM lincolnthree1: gegastaldi: hopefully

              lincolnthree Lincoln Baxter III (Inactive)
              lincolnthree Lincoln Baxter III (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: