Giter Club home page Giter Club logo

design's Issues

DS 1.4 Component Property Type Annotations: Allow elements which only optionally create component properties

Although https://docs.osgi.org/specification/osgi.cmpn/7.0.0/service.component.html#service.component-component.property.value.coercion states

If there is no corresponding component property for a component property type method, the component property type method must:
...
Return null for String, Class, and enum.

This behaviour cannot be leveraged with annotations used on components. So if you want to use the annotation to express a specific component property to be either a String or not set at all, you cannot do that with an element of an already existing annotation (as JLS does not allow null as default value)

For a concrete use case look at https://issues.apache.org/jira/browse/SLING-2938?focusedCommentId=17199448&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17199448

DS: Allow conditions for a class being available to the classloader

Sometimes DS implementations should only become active if certain classes can be loaded. Usually this is determined while the service is retrieved (i.e. BundleContext.getService() is being called). It would be beneficial to prevent the service registration altogether in that case (e.g. to allow a fallback implementation of the same service take its place).

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.