Comments (14)
Follows up #38
from quarkus.
@mkouba isn't this done?
from quarkus.
I'm not sure. @manovotn could you pls verify the relevant functionalities?
from quarkus.
@cescoffier @mkouba
Well, Arc deliberately doesn't implement specialization so there's that.
Other than that, in type-level inheritance, we seem to be missing qualifier and stereotype inheritance while scope and interceptor bindings work.
Member-level inheritance seems to work fully.
I've written these tests to try that out - https://github.com/manovotn/quarkus/tree/inheritanceRules
from quarkus.
FTR, CDI spec recommends that qualifiers should not declare @Inherited
:
qualifier types should not be declared @inherited,
so that's definitely of minor priority.
As for stereotypes, those would be nice to have feature, but probably not mandatory right away.
It would require deep recursive search through annotations because stereotypes can declare another stereotypes...
from quarkus.
I can confirm that stereotype inheritance doesn't work, as well as transitive stereotypes (stereotype declared on another stereotype). I added some @Disabled
tests for these in a mostly-unrelated PR (#13553).
from quarkus.
so I have start to work on it but I am stuck because jandex seems to not return annotation of superclass got from classInfo.
I am maybe thinking to change completly the code and init all BeanInfo then enriched with qualifer/stereotype inherited
wdyt ? Or there is a solution to
@mkouba
Btw, I copy past the test from @manovotn but I will try to do my own later and add other test.
from quarkus.
CC @Ladicek - is it something doable?
from quarkus.
I am stuck because jandex seems to not return annotation of superclass got from classInfo.
That's intentional and well-documented. You need to walk the class hiearchy instead.
from quarkus.
@mkouba Considering recent developments in CDI Lite and extensions, I think the annotation store in ArC should probably always include all annotations of a class (including inherited ones). This is a little more complicated for scope annotations, and I didn't really think it through yet, so this is more like a heads up than a definitive claim :-)
from quarkus.
I think the annotation store in ArC should probably always include all annotations of a class (including inherited ones)
I assume that you mean the annotations declared on superclasses and annotated with @Inherited
?
from quarkus.
Yes.
from quarkus.
@Ladicek might be worth an issue with some details so we keep track of it?
from quarkus.
At some point, sure. I need to think more about it.
from quarkus.
Related Issues (20)
- Flyway dev UI should allow me to create a migration script HOT 1
- Option `quarkus.log.syslog.max-length` ignores text of the message HOT 2
- Integration tests against AWS deployed services
- Kubernetes Job does not inherit customization made to the Kubernetes deployment HOT 5
- Running Quarkus CLI rewrites gradle.properties HOT 1
- Add -DmicroOnly or similar to quarkus:update
- Multipart @FormParam on EntityPart not working according to Jakarta RESTful Web Services 3.1 HOT 3
- Remove @RestClient annotation and handle like normal bean HOT 19
- Scheduler: introduce a build item equivalent of quarkus.scheduler.start-mode=forced HOT 1
- Documentation describing Basic authentication stress additional complexity while this complexity is handled by extensions providing IdentityProvider HOT 6
- Add pagination fields in response or headers for rest-data-panache HOT 1
- HibernateException: A collection with cascade="all-delete-orphan" was no longer referenced by the owning entity instance HOT 7
- CDI not working with @QuarkusComponentTest HOT 6
- [Extension Proposal] AsyncAPI generator HOT 4
- continous testing - problem with @Nested @Nested: java.nio.file.FileSystemNotFoundException: Provider "quarkus" not installed
- Error Quarkus Native Build step org.apache.camel.quarkus.core.deployment.CamelProcessor#camelServices threw an exception: java.nio.file.ClosedFileSystemException HOT 2
- Quarkus OIDC CredentialsProvider integration resolves secrets during BuildStep HOT 3
- QuarkusComponentTest -> No ParameterResolver registered for parameter HOT 2
- Grpc code generation disregards include and exclude HOT 2
- Ping-Pong quarkus HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quarkus.