You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Jean-Baptiste Onofré (JIRA)" <ji...@apache.org> on 2015/05/26 10:27:17 UTC

[jira] [Updated] (KARAF-368) Add "conflicts" configuration into features.xml

     [ https://issues.apache.org/jira/browse/KARAF-368?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Baptiste Onofré updated KARAF-368:
---------------------------------------
    Fix Version/s:     (was: 4.0.0.M3)

> Add "conflicts" configuration into features.xml
> -----------------------------------------------
>
>                 Key: KARAF-368
>                 URL: https://issues.apache.org/jira/browse/KARAF-368
>             Project: Karaf
>          Issue Type: New Feature
>          Components: karaf-core
>            Reporter: Andreas Pieber
>
> I'm coding at pax-wicket right now and find the following "problem": 
> In the following features.xml...
> {code}
>   <!-- Departmentstore example suite provided with paxwicket -->
>   <feature name="departmentstore" version="0.6.0-SNAPSHOT">
>     <feature version="0.6.0-SNAPSHOT">web</feature>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore/departmentstore-model/0.6.0-SNAPSHOT</bundle>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore.view/departmentstore-view-about/0.6.0-SNAPSHOT</bundle>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore.view/departmentstore-view-application/0.6.0-SNAPSHOT</bundle>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore.view/departmentstore-view-floor/0.6.0-SNAPSHOT</bundle>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore.view/departmentstore-view-franchisee/0.6.0-SNAPSHOT</bundle>
>   </feature>
>   <feature name="departmentstore-basic" version="0.6.0-SNAPSHOT">
>     <feature version="0.6.0-SNAPSHOT">web</feature>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore/departmentstore-service-basic/0.6.0-SNAPSHOT</bundle>
>   </feature>
>   <feature name="departmentstore-alternative" version="0.6.0-SNAPSHOT">
>     <feature version="0.6.0-SNAPSHOT">web</feature>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore/departmentstore-service-alternative/0.6.0-SNAPSHOT</bundle>
>   </feature>
> {code}
> ... I have the problem that both, departmentstore-basic and departmentstore-alternative depend on web AND departmentstore; but they "conflict" with each other. I know that we can't detect such a situation automatically BUT it would be cool to do something like the following
> {code}
>   <feature name="departmentstore-basic" version="0.6.0-SNAPSHOT">
>     <feature version="0.6.0-SNAPSHOT">web</feature>
>     <feature version="0.6.0-SNAPSHOT" conflicts=true>departmentstore-alternative</feature>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore/departmentstore-service-basic/0.6.0-SNAPSHOT</bundle>
>   </feature>
>   <feature name="departmentstore-alternative" version="0.6.0-SNAPSHOT">
>     <feature version="0.6.0-SNAPSHOT">web</feature>
>     <feature version="0.6.0-SNAPSHOT" conflicts=true>departmentstore-basic</feature>
>     <bundle>mvn:org.ops4j.pax.wicket.samples.departmentstore/departmentstore-service-alternative/0.6.0-SNAPSHOT</bundle>
>   </feature>
> {code}
> If I have departmentstore-basic install now and I do a...
> {code}
> feature:install departmentstore-alternative
> {code}
> ...something like the following should happen automatically...
> {code}
> features:uninstall departmentstore-basic
> features:install departmentstore-alternative
> {code}
> For one feature this is maybe trivial but think you 20 departmentstore implementations. This will require you to look up which is currently installed, uninstall it and then install the new one...
> WDYT?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)