Sling
  1. Sling
  2. SLING-2445

Deprecate DynamicClassLoaderProvider

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: Commons ClassLoader 1.2.4
    • Fix Version/s: Commons ClassLoader 1.3.0
    • Component/s: Commons
    • Labels:
      None

      Description

      The concept of the DynamicClassLoaderProvider - while looking attractive - doesn't work the way it has been intended. The major reason for this interface was dynamic class loading for the scripting support. However we can do this in a much cleaner way through the ClassLoaderWriter (separate issues will follow). A dynamic class loader provider has no way to tell the dynamic class loader manager, that it is not current anymore and a new instance needs to be created. Maybe we could come up with a clever way of doing this, but in the end the effort is not worth it as there is no other usage for this concept than scripting.
      In addition, it opens a door for circumventing the OSGi class loading completely and that's another good reason to forget about this.

      The idea is to:
      a) deprecate the interface
      b) do not call these providers anymore
      c) log a warning if a provider is found

        Activity

          People

          • Assignee:
            Carsten Ziegeler
            Reporter:
            Carsten Ziegeler
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development