Changed Bundle-Version of UPnP base driver, now it match the value
shown by the jar artifact
Fixed with hack the order of XML entites for the UPnP Exported device
(FELIX-79)
git-svn-id: https://svn.apache.org/repos/asf/incubator/felix/trunk@416765 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/org.apache.felix.upnp.basedriver/pom.xml b/org.apache.felix.upnp.basedriver/pom.xml
index 79c981f..b50771d 100644
--- a/org.apache.felix.upnp.basedriver/pom.xml
+++ b/org.apache.felix.upnp.basedriver/pom.xml
@@ -56,7 +56,7 @@
<osgiManifest>
<bundleName>UPnPBaseDriver</bundleName>
<bundleVendor>Apache Software Foundation</bundleVendor>
- <bundleVersion>1.0.0</bundleVersion>
+ <bundleVersion>0.1.0</bundleVersion>
<bundleDescription>
A Bundle implementation of the UPnP Service Specification R4 (not yet)
</bundleDescription>
diff --git a/org.apache.felix.upnp.basedriver/src/main/java/org/apache/felix/upnp/basedriver/export/BuildDevice.java b/org.apache.felix.upnp.basedriver/src/main/java/org/apache/felix/upnp/basedriver/export/BuildDevice.java
index 64864eb..a960d8d 100644
--- a/org.apache.felix.upnp.basedriver/src/main/java/org/apache/felix/upnp/basedriver/export/BuildDevice.java
+++ b/org.apache.felix.upnp.basedriver/src/main/java/org/apache/felix/upnp/basedriver/export/BuildDevice.java
@@ -96,16 +96,16 @@
devUPnP.setManufactureURL((String) sr.getProperty(UPnPDevice.MANUFACTURER_URL));
devUPnP.setModelDescription((String) sr.getProperty(UPnPDevice.MODEL_DESCRIPTION));
devUPnP.setModelName((String) sr.getProperty(UPnPDevice.MODEL_NAME));
- devUPnP.setUDN((String) sr.getProperty(UPnPDevice.UDN));
- devUPnP.setPresentationURL((String) sr.getProperty(UPnPDevice.PRESENTATION_URL));
- devUPnP.setUPC((String) sr.getProperty(UPnPDevice.UPC));
devUPnP.setModelNumber((String) sr.getProperty(UPnPDevice.MODEL_NUMBER));
devUPnP.setModelURL((String) sr.getProperty(UPnPDevice.MODEL_URL));
devUPnP.setSerialNumber((String) sr.getProperty(UPnPDevice.SERIAL_NUMBER));
+ devUPnP.setUDN((String) sr.getProperty(UPnPDevice.UDN));
+ devUPnP.setUPC((String) sr.getProperty(UPnPDevice.UPC));
devUPnP.setLocation("/gen-desc.xml");
addServices("",devUPnP,sr);
addDevices("",devUPnP,sr);
+ devUPnP.setPresentationURL((String) sr.getProperty(UPnPDevice.PRESENTATION_URL));
return devUPnP;
}
@@ -144,18 +144,19 @@
devUPnP.setManufactureURL((String) sr.getProperty(UPnPDevice.MANUFACTURER_URL));
devUPnP.setModelDescription((String) sr.getProperty(UPnPDevice.MODEL_DESCRIPTION));
devUPnP.setModelName((String) sr.getProperty(UPnPDevice.MODEL_NAME));
- devUPnP.setUDN((String) sr.getProperty(UPnPDevice.UDN));
- devUPnP.setPresentationURL((String) sr.getProperty(UPnPDevice.PRESENTATION_URL));
- devUPnP.setUPC((String) sr.getProperty(UPnPDevice.UPC));
devUPnP.setModelNumber((String) sr.getProperty(UPnPDevice.MODEL_NUMBER));
devUPnP.setModelURL((String) sr.getProperty(UPnPDevice.MODEL_URL));
devUPnP.setSerialNumber((String) sr.getProperty(UPnPDevice.SERIAL_NUMBER));
+ devUPnP.setUDN((String) sr.getProperty(UPnPDevice.UDN));
+ devUPnP.setUPC((String) sr.getProperty(UPnPDevice.UPC));
devUPnP.setLocation(id+"/gen-desc.xml");
addServices(id,devUPnP,sr);
addDevices(id,devUPnP,sr);
parent.addDevice(devUPnP); // twa: essential!!!!!!!
+ devUPnP.setPresentationURL((String) sr.getProperty(UPnPDevice.PRESENTATION_URL));
+
}
/**
@@ -190,35 +191,7 @@
ser.setDescriptionURL(id+"/service/"+i+"/gen-desc.xml");
ser.setControlURL(id+"/service/"+i+"/ctrl");
ser.setEventSubURL(id+"/service/"+i+"/event");
-
- UPnPStateVariable[] vars = services[i].getStateVariables();
- for (int j = 0; j < vars.length; j++) {
- StateVariable var = new StateVariable();
- var.setDataType(vars[j].getUPnPDataType());
- var.setName(vars[j].getName());
- var.setSendEvents(vars[j].sendsEvents());
- String[] values = vars[j].getAllowedValues();
- if(values!=null){
- AllowedValueList avl = new AllowedValueList(values);
- var.setAllowedValueList(avl);
- }else if(vars[j].getMaximum()!= null){
- AllowedValueRange avr = new AllowedValueRange(
- vars[j].getMaximum(),
- vars[j].getMinimum(),
- vars[j].getStep()
- );
- var.setAllowedValueRange(avr);
- }
- if(vars[j].getDefaultValue()!=null)
- try {
- var.setDefaultValue(Converter.toString(
- vars[j].getDefaultValue(),vars[j].getUPnPDataType()
- ));
- } catch (Exception ignored) {
- }
- ser.addStateVariable(var);
- }
-
+
UPnPAction[] actions = services[i].getActions();
for (int j = 0; j < actions.length; j++) {
Action act = new Action(ser.getServiceNode());
@@ -251,8 +224,36 @@
}
act.setArgumentList(al);
ser.addAction(act);
- }
+ }
+ UPnPStateVariable[] vars = services[i].getStateVariables();
+ for (int j = 0; j < vars.length; j++) {
+ StateVariable var = new StateVariable();
+ var.setDataType(vars[j].getUPnPDataType());
+ var.setName(vars[j].getName());
+ var.setSendEvents(vars[j].sendsEvents());
+ String[] values = vars[j].getAllowedValues();
+ if(values!=null){
+ AllowedValueList avl = new AllowedValueList(values);
+ var.setAllowedValueList(avl);
+ }else if(vars[j].getMaximum()!= null){
+ AllowedValueRange avr = new AllowedValueRange(
+ vars[j].getMaximum(),
+ vars[j].getMinimum(),
+ vars[j].getStep()
+ );
+ var.setAllowedValueRange(avr);
+ }
+ if(vars[j].getDefaultValue()!=null)
+ try {
+ var.setDefaultValue(Converter.toString(
+ vars[j].getDefaultValue(),vars[j].getUPnPDataType()
+ ));
+ } catch (Exception ignored) {
+ }
+ ser.addStateVariable(var);
+ }
+
Activator.bc.ungetService(sr);
}