You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by do...@apache.org on 2007/05/01 01:15:18 UTC
svn commit: r533875 [23/30] - in
/incubator/felix/sandbox/donsez/upnp.devicegen: ./ doc/ generation/
generation/res/ generation/res/device/ generation/res/service/ manifest/
src/ src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/
src...
Added: incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ConnectionManager.java
URL: http://svn.apache.org/viewvc/incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ConnectionManager.java?view=auto&rev=533875
==============================================================================
--- incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ConnectionManager.java (added)
+++ incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ConnectionManager.java Mon Apr 30 16:15:05 2007
@@ -0,0 +1,1182 @@
+
+/*
+__BANNER__
+*/
+// this file was generated at 1-May-2007 12:59 AM by ${author}
+package org.apache.felix.upnp.devicegen.media.service;
+
+import java.util.Dictionary;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Map;
+
+import org.osgi.framework.*;
+import org.osgi.service.upnp.*;
+import org.apache.felix.upnp.devicegen.util.*;
+import org.apache.felix.upnp.devicegen.holder.*;
+
+import org.apache.felix.upnp.devicegen.media.model.*;
+import org.apache.felix.upnp.devicegen.media.impl.*;
+
+
+
+public class ConnectionManager extends AbstractUPnPService {
+
+
+ private ConnectionManagerModel model;
+
+ /**
+ * constructor
+ */
+ public ConnectionManager(
+ UPnPDevice upnpDevice,
+ String serviceId,
+ String serviceType,
+ String version,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpDevice,
+ serviceId,
+ serviceType,
+ version
+ );
+ this.model=model;
+
+
+ stateVariables=new HashMap();
+
+
+
+ stateVariables.put(
+ "SourceProtocolInfo",
+ new SourceProtocolInfoStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "SinkProtocolInfo",
+ new SinkProtocolInfoStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "CurrentConnectionIDs",
+ new CurrentConnectionIDsStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_ConnectionStatus",
+ new A_ARG_TYPE_ConnectionStatusStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_ConnectionManager",
+ new A_ARG_TYPE_ConnectionManagerStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_Direction",
+ new A_ARG_TYPE_DirectionStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_ProtocolInfo",
+ new A_ARG_TYPE_ProtocolInfoStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_ConnectionID",
+ new A_ARG_TYPE_ConnectionIDStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_AVTransportID",
+ new A_ARG_TYPE_AVTransportIDStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_RcsID",
+ new A_ARG_TYPE_RcsIDStateVariable(this,model)
+ );
+
+ actions=new HashMap();
+
+
+
+ actions.put(
+ "GetProtocolInfo",
+ new GetProtocolInfoAction(this,model)
+ );
+
+
+
+ actions.put(
+ "PrepareForConnection",
+ new PrepareForConnectionAction(this,model)
+ );
+
+
+
+ actions.put(
+ "ConnectionComplete",
+ new ConnectionCompleteAction(this,model)
+ );
+
+
+
+ actions.put(
+ "GetCurrentConnectionIDs",
+ new GetCurrentConnectionIDsAction(this,model)
+ );
+
+
+
+ actions.put(
+ "GetCurrentConnectionInfo",
+ new GetCurrentConnectionInfoAction(this,model)
+ );
+
+ }
+
+ // UPnPStateVariable classes
+
+
+
+// class SourceProtocolInfoStateVariable
+public class SourceProtocolInfoStateVariable
+ extends AbstractUPnPStateVariable
+
+ implements UPnPStateVariableDescriptor{
+
+ public final static String NAME="SourceProtocolInfo";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public SourceProtocolInfoStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ true,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+
+ return model.getSourceProtocolInfoStateVariableValue();
+
+ }
+};
+
+
+// class SinkProtocolInfoStateVariable
+public class SinkProtocolInfoStateVariable
+ extends AbstractUPnPStateVariable
+
+ implements UPnPStateVariableDescriptor{
+
+ public final static String NAME="SinkProtocolInfo";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public SinkProtocolInfoStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ true,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+
+ return model.getSinkProtocolInfoStateVariableValue();
+
+ }
+};
+
+
+// class CurrentConnectionIDsStateVariable
+public class CurrentConnectionIDsStateVariable
+ extends AbstractUPnPStateVariable
+
+ implements UPnPStateVariableDescriptor{
+
+ public final static String NAME="CurrentConnectionIDs";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public CurrentConnectionIDsStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ true,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+
+ return model.getCurrentConnectionIDsStateVariableValue();
+
+ }
+};
+
+
+// class A_ARG_TYPE_ConnectionStatusStateVariable
+public class A_ARG_TYPE_ConnectionStatusStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_ConnectionStatus";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public A_ARG_TYPE_ConnectionStatusStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ /*
+ List allowedValueList=new LinkedList();
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","OK"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","ContentFormatMismatch"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","InsufficientBandwidth"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","UnreliableChannel"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","Unknown"));
+
+ this.setallowedValueList(allowedValueList);
+ */
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_ConnectionManagerStateVariable
+public class A_ARG_TYPE_ConnectionManagerStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_ConnectionManager";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public A_ARG_TYPE_ConnectionManagerStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_DirectionStateVariable
+public class A_ARG_TYPE_DirectionStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_Direction";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public A_ARG_TYPE_DirectionStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ /*
+ List allowedValueList=new LinkedList();
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","Input"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","Output"));
+
+ this.setallowedValueList(allowedValueList);
+ */
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_ProtocolInfoStateVariable
+public class A_ARG_TYPE_ProtocolInfoStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_ProtocolInfo";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public A_ARG_TYPE_ProtocolInfoStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_ConnectionIDStateVariable
+public class A_ARG_TYPE_ConnectionIDStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_ConnectionID";
+ public final static String DATATYPE="i4";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public A_ARG_TYPE_ConnectionIDStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_AVTransportIDStateVariable
+public class A_ARG_TYPE_AVTransportIDStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_AVTransportID";
+ public final static String DATATYPE="i4";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public A_ARG_TYPE_AVTransportIDStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_RcsIDStateVariable
+public class A_ARG_TYPE_RcsIDStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_RcsID";
+ public final static String DATATYPE="i4";
+
+ // HERE specific state variable members
+ private ConnectionManagerModel model;
+
+ public A_ARG_TYPE_RcsIDStateVariable(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+ // UPnPAction classes
+
+
+
+public class GetProtocolInfoAction extends AbstractUPnPAction {
+
+ ConnectionManagerModel model;
+
+ // HERE specific action members
+
+ public GetProtocolInfoAction(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ "GetProtocolInfo",
+ ""
+ );
+ this.model=model;
+
+ addOutArg(
+ "Source",
+ upnpService.getStateVariable("SourceProtocolInfo")
+ );
+
+ addOutArg(
+ "Sink",
+ upnpService.getStateVariable("SinkProtocolInfo")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ StringHolder source = new StringHolder();
+ StringHolder sink = new StringHolder();
+
+
+ // invoke model
+
+ model.getProtocolInfo(
+ source,
+
+sink
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("Source",source.getObject());
+ // java.lang.String
+ _result.put("Sink",sink.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class PrepareForConnectionAction extends AbstractUPnPAction {
+
+ ConnectionManagerModel model;
+
+ // HERE specific action members
+
+ public PrepareForConnectionAction(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ "PrepareForConnection",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "RemoteProtocolInfo",
+ upnpService.getStateVariable("A_ARG_TYPE_ProtocolInfo")
+ );
+
+ addInArg(
+ "PeerConnectionManager",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionManager")
+ );
+
+ addInArg(
+ "PeerConnectionID",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionID")
+ );
+
+ addInArg(
+ "Direction",
+ upnpService.getStateVariable("A_ARG_TYPE_Direction")
+ );
+
+ addOutArg(
+ "ConnectionID",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionID")
+ );
+
+ addOutArg(
+ "AVTransportID",
+ upnpService.getStateVariable("A_ARG_TYPE_AVTransportID")
+ );
+
+ addOutArg(
+ "RcsID",
+ upnpService.getStateVariable("A_ARG_TYPE_RcsID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String remoteProtocolInfo = (java.lang.String) _args.get("RemoteProtocolInfo");
+ java.lang.String peerConnectionManager = (java.lang.String) _args.get("PeerConnectionManager");
+ java.lang.Integer peerConnectionID = (java.lang.Integer) _args.get("PeerConnectionID");
+ java.lang.String direction = (java.lang.String) _args.get("Direction");
+ IntegerHolder connectionID = new IntegerHolder();
+ IntegerHolder aVTransportID = new IntegerHolder();
+ IntegerHolder rcsID = new IntegerHolder();
+
+
+ // invoke model
+
+ model.prepareForConnection(
+ StringHolder.toValue(
+ remoteProtocolInfo)
+ ,
+
+StringHolder.toValue(
+ peerConnectionManager)
+ ,
+
+IntegerHolder.toValue(
+ peerConnectionID)
+ ,
+
+StringHolder.toValue(
+ direction)
+ ,
+
+connectionID,
+
+aVTransportID,
+
+rcsID
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("ConnectionID",connectionID.getObject());
+ // java.lang.Integer
+ _result.put("AVTransportID",aVTransportID.getObject());
+ // java.lang.Integer
+ _result.put("RcsID",rcsID.getObject());
+ // java.lang.Integer
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class ConnectionCompleteAction extends AbstractUPnPAction {
+
+ ConnectionManagerModel model;
+
+ // HERE specific action members
+
+ public ConnectionCompleteAction(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ "ConnectionComplete",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ConnectionID",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.Integer connectionID = (java.lang.Integer) _args.get("ConnectionID");
+
+
+ // invoke model
+
+ model.connectionComplete(
+ IntegerHolder.toValue(
+ connectionID)
+
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class GetCurrentConnectionIDsAction extends AbstractUPnPAction {
+
+ ConnectionManagerModel model;
+
+ // HERE specific action members
+
+ public GetCurrentConnectionIDsAction(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ "GetCurrentConnectionIDs",
+ ""
+ );
+ this.model=model;
+
+ addOutArg(
+ "ConnectionIDs",
+ upnpService.getStateVariable("CurrentConnectionIDs")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ StringHolder connectionIDs = new StringHolder();
+
+
+ // invoke model
+
+ model.getCurrentConnectionIDs(
+ connectionIDs
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("ConnectionIDs",connectionIDs.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class GetCurrentConnectionInfoAction extends AbstractUPnPAction {
+
+ ConnectionManagerModel model;
+
+ // HERE specific action members
+
+ public GetCurrentConnectionInfoAction(
+ UPnPService upnpService,
+ ConnectionManagerModel model
+ ){
+ super(
+ upnpService,
+ "GetCurrentConnectionInfo",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ConnectionID",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionID")
+ );
+
+ addOutArg(
+ "RcsID",
+ upnpService.getStateVariable("A_ARG_TYPE_RcsID")
+ );
+
+ addOutArg(
+ "AVTransportID",
+ upnpService.getStateVariable("A_ARG_TYPE_AVTransportID")
+ );
+
+ addOutArg(
+ "ProtocolInfo",
+ upnpService.getStateVariable("A_ARG_TYPE_ProtocolInfo")
+ );
+
+ addOutArg(
+ "PeerConnectionManager",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionManager")
+ );
+
+ addOutArg(
+ "PeerConnectionID",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionID")
+ );
+
+ addOutArg(
+ "Direction",
+ upnpService.getStateVariable("A_ARG_TYPE_Direction")
+ );
+
+ addOutArg(
+ "Status",
+ upnpService.getStateVariable("A_ARG_TYPE_ConnectionStatus")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.Integer connectionID = (java.lang.Integer) _args.get("ConnectionID");
+ IntegerHolder rcsID = new IntegerHolder();
+ IntegerHolder aVTransportID = new IntegerHolder();
+ StringHolder protocolInfo = new StringHolder();
+ StringHolder peerConnectionManager = new StringHolder();
+ IntegerHolder peerConnectionID = new IntegerHolder();
+ StringHolder direction = new StringHolder();
+ StringHolder status = new StringHolder();
+
+
+ // invoke model
+
+ model.getCurrentConnectionInfo(
+ IntegerHolder.toValue(
+ connectionID)
+ ,
+
+rcsID,
+
+aVTransportID,
+
+protocolInfo,
+
+peerConnectionManager,
+
+peerConnectionID,
+
+direction,
+
+status
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("RcsID",rcsID.getObject());
+ // java.lang.Integer
+ _result.put("AVTransportID",aVTransportID.getObject());
+ // java.lang.Integer
+ _result.put("ProtocolInfo",protocolInfo.getObject());
+ // java.lang.String
+ _result.put("PeerConnectionManager",peerConnectionManager.getObject());
+ // java.lang.String
+ _result.put("PeerConnectionID",peerConnectionID.getObject());
+ // java.lang.Integer
+ _result.put("Direction",direction.getObject());
+ // java.lang.String
+ _result.put("Status",status.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+}
Propchange: incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ConnectionManager.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ContentDirectory.java
URL: http://svn.apache.org/viewvc/incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ContentDirectory.java?view=auto&rev=533875
==============================================================================
--- incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ContentDirectory.java (added)
+++ incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ContentDirectory.java Mon Apr 30 16:15:05 2007
@@ -0,0 +1,2566 @@
+
+/*
+__BANNER__
+*/
+// this file was generated at 1-May-2007 12:59 AM by ${author}
+package org.apache.felix.upnp.devicegen.media.service;
+
+import java.util.Dictionary;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Map;
+
+import org.osgi.framework.*;
+import org.osgi.service.upnp.*;
+import org.apache.felix.upnp.devicegen.util.*;
+import org.apache.felix.upnp.devicegen.holder.*;
+
+import org.apache.felix.upnp.devicegen.media.model.*;
+import org.apache.felix.upnp.devicegen.media.impl.*;
+
+
+
+public class ContentDirectory extends AbstractUPnPService {
+
+
+ private ContentDirectoryModel model;
+
+ /**
+ * constructor
+ */
+ public ContentDirectory(
+ UPnPDevice upnpDevice,
+ String serviceId,
+ String serviceType,
+ String version,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpDevice,
+ serviceId,
+ serviceType,
+ version
+ );
+ this.model=model;
+
+
+ stateVariables=new HashMap();
+
+
+
+ stateVariables.put(
+ "TransferIDs",
+ new TransferIDsStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_ObjectID",
+ new A_ARG_TYPE_ObjectIDStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_Result",
+ new A_ARG_TYPE_ResultStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_SearchCriteria",
+ new A_ARG_TYPE_SearchCriteriaStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_BrowseFlag",
+ new A_ARG_TYPE_BrowseFlagStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_Filter",
+ new A_ARG_TYPE_FilterStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_SortCriteria",
+ new A_ARG_TYPE_SortCriteriaStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_Index",
+ new A_ARG_TYPE_IndexStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_Count",
+ new A_ARG_TYPE_CountStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_UpdateID",
+ new A_ARG_TYPE_UpdateIDStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_TransferID",
+ new A_ARG_TYPE_TransferIDStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_TransferStatus",
+ new A_ARG_TYPE_TransferStatusStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_TransferLength",
+ new A_ARG_TYPE_TransferLengthStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_TransferTotal",
+ new A_ARG_TYPE_TransferTotalStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_TagValueList",
+ new A_ARG_TYPE_TagValueListStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "A_ARG_TYPE_URI",
+ new A_ARG_TYPE_URIStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "SearchCapabilities",
+ new SearchCapabilitiesStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "SortCapabilities",
+ new SortCapabilitiesStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "SystemUpdateID",
+ new SystemUpdateIDStateVariable(this,model)
+ );
+
+
+
+ stateVariables.put(
+ "ContainerUpdateIDs",
+ new ContainerUpdateIDsStateVariable(this,model)
+ );
+
+ actions=new HashMap();
+
+
+
+ actions.put(
+ "GetSearchCapabilities",
+ new GetSearchCapabilitiesAction(this,model)
+ );
+
+
+
+ actions.put(
+ "GetSortCapabilities",
+ new GetSortCapabilitiesAction(this,model)
+ );
+
+
+
+ actions.put(
+ "GetSystemUpdateID",
+ new GetSystemUpdateIDAction(this,model)
+ );
+
+
+
+ actions.put(
+ "Browse",
+ new BrowseAction(this,model)
+ );
+
+
+
+ actions.put(
+ "Search",
+ new SearchAction(this,model)
+ );
+
+
+
+ actions.put(
+ "CreateObject",
+ new CreateObjectAction(this,model)
+ );
+
+
+
+ actions.put(
+ "DestroyObject",
+ new DestroyObjectAction(this,model)
+ );
+
+
+
+ actions.put(
+ "UpdateObject",
+ new UpdateObjectAction(this,model)
+ );
+
+
+
+ actions.put(
+ "ImportResource",
+ new ImportResourceAction(this,model)
+ );
+
+
+
+ actions.put(
+ "ExportResource",
+ new ExportResourceAction(this,model)
+ );
+
+
+
+ actions.put(
+ "StopTransferResource",
+ new StopTransferResourceAction(this,model)
+ );
+
+
+
+ actions.put(
+ "GetTransferProgress",
+ new GetTransferProgressAction(this,model)
+ );
+
+
+
+ actions.put(
+ "DeleteResource",
+ new DeleteResourceAction(this,model)
+ );
+
+
+
+ actions.put(
+ "CreateReference",
+ new CreateReferenceAction(this,model)
+ );
+
+ }
+
+ // UPnPStateVariable classes
+
+
+
+// class TransferIDsStateVariable
+public class TransferIDsStateVariable
+ extends AbstractUPnPStateVariable
+
+ implements UPnPStateVariableDescriptor{
+
+ public final static String NAME="TransferIDs";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public TransferIDsStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ true,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+
+ return model.getTransferIDsStateVariableValue();
+
+ }
+};
+
+
+// class A_ARG_TYPE_ObjectIDStateVariable
+public class A_ARG_TYPE_ObjectIDStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_ObjectID";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_ObjectIDStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_ResultStateVariable
+public class A_ARG_TYPE_ResultStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_Result";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_ResultStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_SearchCriteriaStateVariable
+public class A_ARG_TYPE_SearchCriteriaStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_SearchCriteria";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_SearchCriteriaStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_BrowseFlagStateVariable
+public class A_ARG_TYPE_BrowseFlagStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_BrowseFlag";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_BrowseFlagStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ /*
+ List allowedValueList=new LinkedList();
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","BrowseMetadata"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","BrowseDirectChildren"));
+
+ this.setallowedValueList(allowedValueList);
+ */
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_FilterStateVariable
+public class A_ARG_TYPE_FilterStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_Filter";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_FilterStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_SortCriteriaStateVariable
+public class A_ARG_TYPE_SortCriteriaStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_SortCriteria";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_SortCriteriaStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_IndexStateVariable
+public class A_ARG_TYPE_IndexStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_Index";
+ public final static String DATATYPE="ui4";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_IndexStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_CountStateVariable
+public class A_ARG_TYPE_CountStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_Count";
+ public final static String DATATYPE="ui4";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_CountStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_UpdateIDStateVariable
+public class A_ARG_TYPE_UpdateIDStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_UpdateID";
+ public final static String DATATYPE="ui4";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_UpdateIDStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_TransferIDStateVariable
+public class A_ARG_TYPE_TransferIDStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_TransferID";
+ public final static String DATATYPE="ui4";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_TransferIDStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_TransferStatusStateVariable
+public class A_ARG_TYPE_TransferStatusStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_TransferStatus";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_TransferStatusStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ /*
+ List allowedValueList=new LinkedList();
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","COMPLETED"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","ERROR"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","IN_PROGRESS"));
+
+ allowedValueList.add(UPnPDataTypeUtil.instanciateObject("string","STOPPED"));
+
+ this.setallowedValueList(allowedValueList);
+ */
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_TransferLengthStateVariable
+public class A_ARG_TYPE_TransferLengthStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_TransferLength";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_TransferLengthStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_TransferTotalStateVariable
+public class A_ARG_TYPE_TransferTotalStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_TransferTotal";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_TransferTotalStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_TagValueListStateVariable
+public class A_ARG_TYPE_TagValueListStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_TagValueList";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_TagValueListStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class A_ARG_TYPE_URIStateVariable
+public class A_ARG_TYPE_URIStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="A_ARG_TYPE_URI";
+ public final static String DATATYPE="uri";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public A_ARG_TYPE_URIStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class SearchCapabilitiesStateVariable
+public class SearchCapabilitiesStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="SearchCapabilities";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public SearchCapabilitiesStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class SortCapabilitiesStateVariable
+public class SortCapabilitiesStateVariable
+ extends AbstractUPnPStateVariable
+
+ {
+
+ public final static String NAME="SortCapabilities";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public SortCapabilitiesStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ false,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+ return null;
+ }
+};
+
+
+// class SystemUpdateIDStateVariable
+public class SystemUpdateIDStateVariable
+ extends AbstractUPnPStateVariable
+
+ implements UPnPStateVariableDescriptor{
+
+ public final static String NAME="SystemUpdateID";
+ public final static String DATATYPE="ui4";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public SystemUpdateIDStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ true,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+
+ return model.getSystemUpdateIDStateVariableValue();
+
+ }
+};
+
+
+// class ContainerUpdateIDsStateVariable
+public class ContainerUpdateIDsStateVariable
+ extends AbstractUPnPStateVariable
+
+ implements UPnPStateVariableDescriptor{
+
+ public final static String NAME="ContainerUpdateIDs";
+ public final static String DATATYPE="string";
+
+ // HERE specific state variable members
+ private ContentDirectoryModel model;
+
+ public ContainerUpdateIDsStateVariable(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ NAME,
+ DATATYPE,
+ null, // TODO defaultValue changed for
+ null, // TODO step changed for
+ null, // TODO step changed for
+ null, // TODO minimum changed for
+ null, // TODO maximum changed for
+ // sendEventsAttribute
+ true,
+ true // TODO required changed for OR
+ );
+
+ this.model=model;
+
+
+ }
+
+ // TODO
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+
+ /**
+ * invoked for the first notification just after a subscription
+ * @see it.cnr.isti.niche.osgi.upnp.util.UPnPStateVariableDescriptor#getValue()
+ */
+ public Object getValue(){
+
+ return model.getContainerUpdateIDsStateVariableValue();
+
+ }
+};
+
+
+ // UPnPAction classes
+
+
+
+public class GetSearchCapabilitiesAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public GetSearchCapabilitiesAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "GetSearchCapabilities",
+ ""
+ );
+ this.model=model;
+
+ addOutArg(
+ "SearchCaps",
+ upnpService.getStateVariable("SearchCapabilities")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ StringHolder searchCaps = new StringHolder();
+
+
+ // invoke model
+
+ model.getSearchCapabilities(
+ searchCaps
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("SearchCaps",searchCaps.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class GetSortCapabilitiesAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public GetSortCapabilitiesAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "GetSortCapabilities",
+ ""
+ );
+ this.model=model;
+
+ addOutArg(
+ "SortCaps",
+ upnpService.getStateVariable("SortCapabilities")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ StringHolder sortCaps = new StringHolder();
+
+
+ // invoke model
+
+ model.getSortCapabilities(
+ sortCaps
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("SortCaps",sortCaps.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class GetSystemUpdateIDAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public GetSystemUpdateIDAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "GetSystemUpdateID",
+ ""
+ );
+ this.model=model;
+
+ addOutArg(
+ "Id",
+ upnpService.getStateVariable("SystemUpdateID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ LongHolder id = new LongHolder();
+
+
+ // invoke model
+
+ model.getSystemUpdateID(
+ id
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("Id",id.getObject());
+ // java.lang.Long
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class BrowseAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public BrowseAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "Browse",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ObjectID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ addInArg(
+ "BrowseFlag",
+ upnpService.getStateVariable("A_ARG_TYPE_BrowseFlag")
+ );
+
+ addInArg(
+ "Filter",
+ upnpService.getStateVariable("A_ARG_TYPE_Filter")
+ );
+
+ addInArg(
+ "StartingIndex",
+ upnpService.getStateVariable("A_ARG_TYPE_Index")
+ );
+
+ addInArg(
+ "RequestedCount",
+ upnpService.getStateVariable("A_ARG_TYPE_Count")
+ );
+
+ addInArg(
+ "SortCriteria",
+ upnpService.getStateVariable("A_ARG_TYPE_SortCriteria")
+ );
+
+ addOutArg(
+ "Result",
+ upnpService.getStateVariable("A_ARG_TYPE_Result")
+ );
+
+ addOutArg(
+ "NumberReturned",
+ upnpService.getStateVariable("A_ARG_TYPE_Count")
+ );
+
+ addOutArg(
+ "TotalMatches",
+ upnpService.getStateVariable("A_ARG_TYPE_Count")
+ );
+
+ addOutArg(
+ "UpdateID",
+ upnpService.getStateVariable("A_ARG_TYPE_UpdateID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String objectID = (java.lang.String) _args.get("ObjectID");
+ java.lang.String browseFlag = (java.lang.String) _args.get("BrowseFlag");
+ java.lang.String filter = (java.lang.String) _args.get("Filter");
+ java.lang.Long startingIndex = (java.lang.Long) _args.get("StartingIndex");
+ java.lang.Long requestedCount = (java.lang.Long) _args.get("RequestedCount");
+ java.lang.String sortCriteria = (java.lang.String) _args.get("SortCriteria");
+ StringHolder result = new StringHolder();
+ LongHolder numberReturned = new LongHolder();
+ LongHolder totalMatches = new LongHolder();
+ LongHolder updateID = new LongHolder();
+
+
+ // invoke model
+
+ model.browse(
+ StringHolder.toValue(
+ objectID)
+ ,
+
+StringHolder.toValue(
+ browseFlag)
+ ,
+
+StringHolder.toValue(
+ filter)
+ ,
+
+LongHolder.toValue(
+ startingIndex)
+ ,
+
+LongHolder.toValue(
+ requestedCount)
+ ,
+
+StringHolder.toValue(
+ sortCriteria)
+ ,
+
+result,
+
+numberReturned,
+
+totalMatches,
+
+updateID
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("Result",result.getObject());
+ // java.lang.String
+ _result.put("NumberReturned",numberReturned.getObject());
+ // java.lang.Long
+ _result.put("TotalMatches",totalMatches.getObject());
+ // java.lang.Long
+ _result.put("UpdateID",updateID.getObject());
+ // java.lang.Long
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class SearchAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public SearchAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "Search",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ContainerID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ addInArg(
+ "SearchCriteria",
+ upnpService.getStateVariable("A_ARG_TYPE_SearchCriteria")
+ );
+
+ addInArg(
+ "Filter",
+ upnpService.getStateVariable("A_ARG_TYPE_Filter")
+ );
+
+ addInArg(
+ "StartingIndex",
+ upnpService.getStateVariable("A_ARG_TYPE_Index")
+ );
+
+ addInArg(
+ "RequestedCount",
+ upnpService.getStateVariable("A_ARG_TYPE_Count")
+ );
+
+ addInArg(
+ "SortCriteria",
+ upnpService.getStateVariable("A_ARG_TYPE_SortCriteria")
+ );
+
+ addOutArg(
+ "Result",
+ upnpService.getStateVariable("A_ARG_TYPE_Result")
+ );
+
+ addOutArg(
+ "NumberReturned",
+ upnpService.getStateVariable("A_ARG_TYPE_Count")
+ );
+
+ addOutArg(
+ "TotalMatches",
+ upnpService.getStateVariable("A_ARG_TYPE_Count")
+ );
+
+ addOutArg(
+ "UpdateID",
+ upnpService.getStateVariable("A_ARG_TYPE_UpdateID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String containerID = (java.lang.String) _args.get("ContainerID");
+ java.lang.String searchCriteria = (java.lang.String) _args.get("SearchCriteria");
+ java.lang.String filter = (java.lang.String) _args.get("Filter");
+ java.lang.Long startingIndex = (java.lang.Long) _args.get("StartingIndex");
+ java.lang.Long requestedCount = (java.lang.Long) _args.get("RequestedCount");
+ java.lang.String sortCriteria = (java.lang.String) _args.get("SortCriteria");
+ StringHolder result = new StringHolder();
+ LongHolder numberReturned = new LongHolder();
+ LongHolder totalMatches = new LongHolder();
+ LongHolder updateID = new LongHolder();
+
+
+ // invoke model
+
+ model.search(
+ StringHolder.toValue(
+ containerID)
+ ,
+
+StringHolder.toValue(
+ searchCriteria)
+ ,
+
+StringHolder.toValue(
+ filter)
+ ,
+
+LongHolder.toValue(
+ startingIndex)
+ ,
+
+LongHolder.toValue(
+ requestedCount)
+ ,
+
+StringHolder.toValue(
+ sortCriteria)
+ ,
+
+result,
+
+numberReturned,
+
+totalMatches,
+
+updateID
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("Result",result.getObject());
+ // java.lang.String
+ _result.put("NumberReturned",numberReturned.getObject());
+ // java.lang.Long
+ _result.put("TotalMatches",totalMatches.getObject());
+ // java.lang.Long
+ _result.put("UpdateID",updateID.getObject());
+ // java.lang.Long
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class CreateObjectAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public CreateObjectAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "CreateObject",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ContainerID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ addInArg(
+ "Elements",
+ upnpService.getStateVariable("A_ARG_TYPE_Result")
+ );
+
+ addOutArg(
+ "ObjectID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ addOutArg(
+ "Result",
+ upnpService.getStateVariable("A_ARG_TYPE_Result")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String containerID = (java.lang.String) _args.get("ContainerID");
+ java.lang.String elements = (java.lang.String) _args.get("Elements");
+ StringHolder objectID = new StringHolder();
+ StringHolder result = new StringHolder();
+
+
+ // invoke model
+
+ model.createObject(
+ StringHolder.toValue(
+ containerID)
+ ,
+
+StringHolder.toValue(
+ elements)
+ ,
+
+objectID,
+
+result
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("ObjectID",objectID.getObject());
+ // java.lang.String
+ _result.put("Result",result.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class DestroyObjectAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public DestroyObjectAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "DestroyObject",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ObjectID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String objectID = (java.lang.String) _args.get("ObjectID");
+
+
+ // invoke model
+
+ model.destroyObject(
+ StringHolder.toValue(
+ objectID)
+
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class UpdateObjectAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public UpdateObjectAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "UpdateObject",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ObjectID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ addInArg(
+ "CurrentTagValue",
+ upnpService.getStateVariable("A_ARG_TYPE_TagValueList")
+ );
+
+ addInArg(
+ "NewTagValue",
+ upnpService.getStateVariable("A_ARG_TYPE_TagValueList")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String objectID = (java.lang.String) _args.get("ObjectID");
+ java.lang.String currentTagValue = (java.lang.String) _args.get("CurrentTagValue");
+ java.lang.String newTagValue = (java.lang.String) _args.get("NewTagValue");
+
+
+ // invoke model
+
+ model.updateObject(
+ StringHolder.toValue(
+ objectID)
+ ,
+
+StringHolder.toValue(
+ currentTagValue)
+ ,
+
+StringHolder.toValue(
+ newTagValue)
+
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class ImportResourceAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public ImportResourceAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "ImportResource",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "SourceURI",
+ upnpService.getStateVariable("A_ARG_TYPE_URI")
+ );
+
+ addInArg(
+ "DestinationURI",
+ upnpService.getStateVariable("A_ARG_TYPE_URI")
+ );
+
+ addOutArg(
+ "TransferID",
+ upnpService.getStateVariable("A_ARG_TYPE_TransferID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String sourceURI = (java.lang.String) _args.get("SourceURI");
+ java.lang.String destinationURI = (java.lang.String) _args.get("DestinationURI");
+ LongHolder transferID = new LongHolder();
+
+
+ // invoke model
+
+ model.importResource(
+ StringHolder.toValue(
+ sourceURI)
+ ,
+
+StringHolder.toValue(
+ destinationURI)
+ ,
+
+transferID
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("TransferID",transferID.getObject());
+ // java.lang.Long
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class ExportResourceAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public ExportResourceAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "ExportResource",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "SourceURI",
+ upnpService.getStateVariable("A_ARG_TYPE_URI")
+ );
+
+ addInArg(
+ "DestinationURI",
+ upnpService.getStateVariable("A_ARG_TYPE_URI")
+ );
+
+ addOutArg(
+ "TransferID",
+ upnpService.getStateVariable("A_ARG_TYPE_TransferID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String sourceURI = (java.lang.String) _args.get("SourceURI");
+ java.lang.String destinationURI = (java.lang.String) _args.get("DestinationURI");
+ LongHolder transferID = new LongHolder();
+
+
+ // invoke model
+
+ model.exportResource(
+ StringHolder.toValue(
+ sourceURI)
+ ,
+
+StringHolder.toValue(
+ destinationURI)
+ ,
+
+transferID
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("TransferID",transferID.getObject());
+ // java.lang.Long
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class StopTransferResourceAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public StopTransferResourceAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "StopTransferResource",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "TransferID",
+ upnpService.getStateVariable("A_ARG_TYPE_TransferID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.Long transferID = (java.lang.Long) _args.get("TransferID");
+
+
+ // invoke model
+
+ model.stopTransferResource(
+ LongHolder.toValue(
+ transferID)
+
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class GetTransferProgressAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public GetTransferProgressAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "GetTransferProgress",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "TransferID",
+ upnpService.getStateVariable("A_ARG_TYPE_TransferID")
+ );
+
+ addOutArg(
+ "TransferStatus",
+ upnpService.getStateVariable("A_ARG_TYPE_TransferStatus")
+ );
+
+ addOutArg(
+ "TransferLength",
+ upnpService.getStateVariable("A_ARG_TYPE_TransferLength")
+ );
+
+ addOutArg(
+ "TransferTotal",
+ upnpService.getStateVariable("A_ARG_TYPE_TransferTotal")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.Long transferID = (java.lang.Long) _args.get("TransferID");
+ StringHolder transferStatus = new StringHolder();
+ StringHolder transferLength = new StringHolder();
+ StringHolder transferTotal = new StringHolder();
+
+
+ // invoke model
+
+ model.getTransferProgress(
+ LongHolder.toValue(
+ transferID)
+ ,
+
+transferStatus,
+
+transferLength,
+
+transferTotal
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("TransferStatus",transferStatus.getObject());
+ // java.lang.String
+ _result.put("TransferLength",transferLength.getObject());
+ // java.lang.String
+ _result.put("TransferTotal",transferTotal.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class DeleteResourceAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public DeleteResourceAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "DeleteResource",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ResourceURI",
+ upnpService.getStateVariable("A_ARG_TYPE_URI")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String resourceURI = (java.lang.String) _args.get("ResourceURI");
+
+
+ // invoke model
+
+ model.deleteResource(
+ StringHolder.toValue(
+ resourceURI)
+
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+
+public class CreateReferenceAction extends AbstractUPnPAction {
+
+ ContentDirectoryModel model;
+
+ // HERE specific action members
+
+ public CreateReferenceAction(
+ UPnPService upnpService,
+ ContentDirectoryModel model
+ ){
+ super(
+ upnpService,
+ "CreateReference",
+ ""
+ );
+ this.model=model;
+
+ addInArg(
+ "ContainerID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ addInArg(
+ "ObjectID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ addOutArg(
+ "NewID",
+ upnpService.getStateVariable("A_ARG_TYPE_ObjectID")
+ );
+
+ }
+
+ /**
+ * @see org.osgi.service.upnp.UPnPAction#invoke(java.util.Dictionary)
+ */
+ public Dictionary invoke(Dictionary _args) throws Exception {
+
+ java.lang.String containerID = (java.lang.String) _args.get("ContainerID");
+ java.lang.String objectID = (java.lang.String) _args.get("ObjectID");
+ StringHolder newID = new StringHolder();
+
+
+ // invoke model
+
+ model.createReference(
+ StringHolder.toValue(
+ containerID)
+ ,
+
+StringHolder.toValue(
+ objectID)
+ ,
+
+newID
+ );
+
+ // build returned Dictionary
+ Dictionary _result = new Hashtable();
+
+ _result.put("NewID",newID.getObject());
+ // java.lang.String
+ return _result.isEmpty()?null:_result;
+ }
+
+
+ public void start(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+
+ public void stop(BundleContext bundleContext) throws Exception {
+ // TODO
+ }
+};
+
+}
Propchange: incubator/felix/sandbox/donsez/upnp.devicegen/src/main/java/org/apache/felix/upnp/devicegen/media/service/ContentDirectory.java
------------------------------------------------------------------------------
svn:eol-style = native