[
https://issues.apache.org/jira/browse/FELIX-2579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Lars-Erik Kimmel updated FELIX-2579:
------------------------------------
Attachment: BuildDevice.java
a fixed BuildDevice.java
> deviceType in desciption of subdevices missing
> ----------------------------------------------
>
> Key: FELIX-2579
> URL: https://issues.apache.org/jira/browse/FELIX-2579
> Project: Felix
> Issue Type: Bug
> Reporter: Lars-Erik Kimmel
> Priority: Minor
> Attachments: BuildDevice.java
>
>
> The desciption lacks of deviceType for subdevices.
> It can be pinned down to BuildDevice, where only in the description of the
> root device the deviceType with the highest supported version is added to the
> document.
> a simple workaround helps by introducing a method made of the code in the
> build of the root device:
> private static void setDeviceTypeWithHighestVersion(Device devUPnP,
> ServiceReference sr) {
> Object aux = sr.getProperty(UPnPDevice.TYPE);
> if(aux==null){
> devUPnP.setDeviceType(null);
> }else if(aux instanceof String){
> devUPnP.setDeviceType((String) aux);
> }else if(aux instanceof String[]){
> //The property key UPnP.device.type should be a String
> String[] v = (String[]) aux;
> int maxindex=0;
> int
> max=Integer.parseInt(v[0].substring(v[0].lastIndexOf(":")+1));
> int tmp;
> for (int i = 1; i < v.length; i++) {
>
> tmp=Integer.parseInt(v[i].substring(v[i].lastIndexOf(":")+1));
> if(max<tmp){
> max=tmp;
> maxindex=i;
> }
> }
> devUPnP.setDeviceType(v[maxindex]);
> }
> }
> And call
> setDeviceTypeWithHighestVersion(devUPnP, sr);
> in buildRootDeviceNode(..) and buildDevice(..)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.