Bug 551562 - IProvisioningAgent#getService(Class) breaks API
Summary: IProvisioningAgent#getService(Class) breaks API
Status: RESOLVED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: p2 (show other bugs)
Version: 4.11   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: 4.14 M1   Edit
Assignee: Karsten Thoms CLA
QA Contact:
URL:
Whiteboard:
Keywords: api, regression
Depends on: 542420
Blocks:
  Show dependency tree
 
Reported: 2019-09-27 08:47 EDT by Karsten Thoms CLA
Modified: 2019-10-02 06:15 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Karsten Thoms CLA 2019-09-27 08:47:14 EDT
The addition of method IProvisioningAgent#getService(Class<T>) breaks the API for other implementors of IProvisioningAgent. As example org.eclipse.cbi.p2repo.p2.util.BackgroundProvisioningAgent from the CBI Aggregator project breaks because of this:
  The type BackgroundProvisioningAgent must implement the inherited abstract method IProvisioningAgent.getService(Class<T>)

To solve this the method getService(Class) should become a default method which returns getService(String) with the given class name.
Comment 1 Eclipse Genie CLA 2019-09-27 08:55:07 EDT
New Gerrit change created: https://git.eclipse.org/r/150247
Comment 2 Lars Vogel CLA 2019-10-02 06:15:06 EDT
Thanks, Karsten.