Uploaded image for project: 'Sling'
  1. Sling
  2. SLING-3352

Expose OSGI configuration via HTTP

    XMLWordPrintableJSON

Details

    Description

      We need a safe way to expose OSGI configuration via HTTP.

      Requirements:

      • all configs for a certain factory should be manageable
      • they should have associated JCR nodes that contain the config properties
      • only configs that are available through ConfigurationAdmin should be available
      • the HTTP urls should have friendly names
      • (Optional) the implementation should be general enough to be used for other configs other than replication if needed

      For example: a configuration with name publish for org.apache.sling.replication.agent.impl.ReplicationAgentServiceFactory
      should be mapped to /etc/replication/agent/publish

      Problems with current implementation of JCR nodes created by JCR installed:

      • Configuration files are read and created from /apps/.../config or /libs/.../config, and there is no easy way to determine which are active in the ConfigurationAdmin
      • There is no way to restrict a repository path to create only configuration from a specified factory (making it unusable with relaxed ACLs)
      • The url of a configuration is unfriendly (it contains the fully qualified name of the factory)
      • The node types are not homogenous making it hard to use in a client application (some are nt:file, some are sling:OsgiConfig)

      Attachments

        1. SLING-3352.patch
          41 kB
          Marius Petria
        2. SLING-3352.4.patch
          132 kB
          Marius Petria
        3. SLING-3352.3.patch
          49 kB
          Marius Petria
        4. SLING-3352.2.patch
          32 kB
          Marius Petria
        5. SLING-3352.1.patch
          51 kB
          Marius Petria

        Activity

          People

            teofili Tommaso Teofili
            mpetria Marius Petria
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: