Uploaded image for project: 'Felix'
  1. Felix
  2. FELIX-4507

[DS] "persistent" factory components

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • scr-1.8.0
    • scr-2.0.0
    • None

    Description

      The lifecycle constraints of factory components make them generally useless. This introduces a different kind of factory component where:

      • the componentFactory service is always registered irrespective of whether any references are available
      • the components created by newInstance act like regular components created by config admin factory pids; the component is present whether or not references are available and the instance comes and goes as references come and go. Calling dispose removes the component.
      • a modify method is added to the ComponentInstance returned from newInstance. (the ComponentInstance implements a new, extension, interface with the modify method)

      There are some consequences, such as ComponentInstance.getInstance() may return null and may not always return the same object.

      This behavior can be turned on for a particular component with a "extension" attribute in the component descriptor
      xmlns:felix="http://felix.apache.org/xmlns/scr/extensions/v1.0.0"
      felix:persistentFactoryComponent="true"

      Attachments

        Activity

          People

            djencks David Jencks
            djencks David Jencks
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: