-
Notifications
You must be signed in to change notification settings - Fork 129
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[MRESOLVER-467][MRESOLVER-468] Pull out shared HTTP stuff #410
Conversation
Currently we have 3 HTTP transports and each have quite some overlap. Pull these out, introduce new "shared HTTP" module for those. --- https://issues.apache.org/jira/browse/MRESOLVER-467
@Singleton | ||
@Named | ||
public final class DefaultChecksumExtractor implements ChecksumExtractor { | ||
private final Map<String, Strategy> strategies; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you need this empty interface?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To distinguish component types, otherwise on inject it would be a loop -> failure (entry point would like to inject itself), hence using subtype. Also, later on, the Strategy interface MAY become different, while currently it does not.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are right, separated them out.
Currently we have 3 HTTP transports and each have quite some overlap. Pull these out. Included checksums in all three, but Jetty and JDK transports also redefine same constants as well.
Another issue touched here is "stabilizing" (and exposing intermediate components) on RepositorySystem supplier.
https://issues.apache.org/jira/browse/MRESOLVER-467
https://issues.apache.org/jira/browse/MRESOLVER-468