Giter VIP home page Giter VIP logo

sling-org-apache-sling-feature-extension-apiregions's Introduction

Build Status Test Status License feature

Apache Sling API Regions extension

This component contains extensions relating to the API Regions component. For more information about API Regions see https://github.com/apache/sling-org-apache-sling-feature/blob/master/apicontroller.md

The following extensions are registered via the ServiceLoader mechanism:

org.apache.sling.feature.builder.MergeHandler

Merge handlers are called when features are merged during the aggregation process.

APIRegionMergeHandler - This handler knows how to merge API Regions extensions and adds the org-feature key to the api-regions sections to record what feature this section originally belonged.

org.apache.sling.feature.builder.PostProcessHandler

PostProcessHandlers are called when a feature contains an api-regions section.

BundleMappingHandler - This handler creates a mapping file idbsnver.properties that maps the Artifact ID to a bundle symbolic name and version. A tilde ~ is used in the value of the map to separate BSN and version.

BundleArtifactFeatureHandler - This handler creates 3 mapping files:

  • bundles.properties: maps bundles to the original feature they were in. A bundle could be from more then one feature.
  • features.properties: maps features to regions. A feature can be in more than one region.
  • regions.properties: maps regions to packages. A region can expose more than one package.

The location of the files created by the BundleArtifactFeatureHandler handler is stored in a system property with name sling.feature.apiregions.resource. + filename. So to obtain the file name of the bundles.properties file, make the following call:

System.getProperty("sling.feature.apiregions.resource.bundles.properties")

These properties are read by the https://github.com/apache/sling-org-apache-sling-feature-apiregions component for runtime enforcement of the API Regions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.