Skip to content

Commit

Permalink
bnd, better description
Browse files Browse the repository at this point in the history
  • Loading branch information
stbischof committed Oct 25, 2018
1 parent f6a1ddd commit 2f43066
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 5 deletions.
39 changes: 34 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,45 @@
# ds.resolve

## reproduce:

### bndtools/eclipse

push the resolve button at ds.resolve/resolveActive.bndrun

### commands
```
git clone https://github.com/stbischof/ds.resolve.git
cd ds.resolve
java -jar biz.aQute.bnd-4.1.0.jar clean
java -jar biz.aQute.bnd-4.1.0.jar _par
java -jar biz.aQute.bnd-4.1.0.jar resolve resolve --write ds.resolve/resolveActive.bndrun
git diff
```

### results:
```
+-runbundles: \
+ ds.resolve.b;version=snapshot,\
+ ds.resolve.cap;version=snapshot,\
+ ds.resolve.capfora;version=snapshot,\
+ ds.resolve.req;version=snapshot,\
+ org.apache.felix.scr;version='[2.1.0,2.1.1)'
```

## description
try to resolve `bundle req`
- `bundle req` has the requirement `namespace="ns",name="name"`


so we look for the same capability `namespace="ns",name="name"`
- bundle cap has the capability `namespace="ns",name="name"`
- but `bundle cap` has also a Requirement `osgi.service;filter:="(objectClass=java.lang.Readable)";effective:=active;cardinality:=multiple` whick could be providet by itsselve `osgi.service;objectClass:List<String>="java.lang.Readable"` (target property of @Reference is not processed)
- but `bundle cap` has also a Requirement `osgi.service;filter:="(objectClass=java.lang.Readable)";effective:=active;cardinality:=multiple`.
- this could be providet by itsselve `osgi.service;objectClass:List<String>="java.lang.Readable"` (target property of @Reference is not processed)

### Issues:
- it resolves `bundle capfora` which provides a capability that is required by `bundle a` -> provides also the capability that is required from `bundle cap` ( `osgi.service;objectClass:List<String>="java.lang.Readable"`).
- But in this case `bundle a` is not in the resolveresult
- bundle b is also resolved. (not needet, cap has the needet capability by its own)

BUT THE RESULT IS THAT:
it resolves `bundle capfora` which provides a capability that is required by `bundle a` -> provides also the capability that is required from `bundle cap` ( `osgi.service;objectClass:List<String>="java.lang.Readable"`). But in this case `bundle a` is not in the resolveresult


When uncomment @Component(property = "type=test") in DefaultReadable there are some other Results i could not explaine
Binary file added biz.aQute.bnd-4.1.0.jar
Binary file not shown.

0 comments on commit 2f43066

Please sign in to comment.