[ https://issues.apache.org/jira/browse/CAY-2268?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikita Timofeev closed CAY-2268. -------------------------------- Resolution: Fixed https://github.com/apache/cayenne/commit/9cc58c63fd1243d982dac4f00ac0270ba3b9efce > DI: Refactor ListBuilder API ambiguities for before() / after() bindings > ------------------------------------------------------------------------ > > Key: CAY-2268 > URL: https://issues.apache.org/jira/browse/CAY-2268 > Project: Cayenne > Issue Type: Improvement > Components: Core Library > Reporter: Nikita Timofeev > Assignee: Nikita Timofeev > Labels: DI > Fix For: 4.0.M6 > > > There are some problems and ambiguities with API for adding ordered > dependencies: > # you can call {{after()}} / {{before()}} without adding anything first, that > will cause NPE > # right order of calls is not clear: {{add().after()}} or {{after().add()}} > Suggested API modification: > # remove {{UnorderedListBuilder}}, keep everything in {{ListBuilder}} > # add methods with explicit before\after parameters: > {code} > ListBuilder<T> addAfter(Class<? extends T> interfaceType, Class<? extends > T> afterType); > ListBuilder<T> addAfter(T value, Class<? extends T> afterType); > ListBuilder<T> addAllAfter(Collection<T> values, Class<? extends T> > afterType); > ListBuilder<T> insertBefore(Class<? extends T> interfaceType, Class<? > extends T> beforeType); > ListBuilder<T> insertBefore(T value, Class<? extends T> beforeType); > ListBuilder<T> insertAllBefore(Collection<T> values, Class<? extends T> > beforeType); > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)