[rygel] data: Transform XML files for better IOP
- From: Zeeshan Ali Khattak <zeeshanak src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rygel] data: Transform XML files for better IOP
- Date: Wed, 15 Sep 2010 11:58:35 +0000 (UTC)
commit 0cb7fe4244533ac900497f185237f833f13ecf0f
Author: Zeeshan Ali (Khattak) <zeeshanak gnome org>
Date: Wed Sep 15 14:24:27 2010 +0300
data: Transform XML files for better IOP
Generate XML files from templates at build time so we can strip out
newlines and leading whitespace to improve our IOP with some devices in
the market that use some crappy XML parsers.
data/xml/AVTransport2.xml | 575 --------------------
data/xml/AVTransport2.xml.in | 575 ++++++++++++++++++++
data/xml/ConnectionManager.xml | 167 ------
data/xml/ConnectionManager.xml.in | 167 ++++++
data/xml/ContentDirectory.xml | 407 --------------
data/xml/ContentDirectory.xml.in | 407 ++++++++++++++
data/xml/Makefile.am | 20 +-
.../{MediaRenderer2.xml => MediaRenderer2.xml.in} | 0
data/xml/{MediaServer2.xml => MediaServer2.xml.in} | 0
data/xml/RenderingControl2.xml | 194 -------
data/xml/RenderingControl2.xml.in | 194 +++++++
...ar1.xml => X_MS_MediaReceiverRegistrar1.xml.in} | 0
12 files changed, 1356 insertions(+), 1350 deletions(-)
---
diff --git a/data/xml/AVTransport2.xml.in b/data/xml/AVTransport2.xml.in
new file mode 100644
index 0000000..4ed9b2c
--- /dev/null
+++ b/data/xml/AVTransport2.xml.in
@@ -0,0 +1,575 @@
+<?xml version="1.0"?>
+<!--============================================================
+Title: UPnP AV AV-Transport Service (AVT) Template
+
+Purpose:
+To identify the required/optional actions and state variables
+and the required allowed values defined by this service type.
+
+Note:
+This file uses tabs (not spaces) for block indentation.
+Any updates to this file should maintain this convention.
+This includes disabling any automatic tab-to-space conversion
+feature provided by your editor.
+================================================================-->
+<scpd>
+ <serviceStateTable>
+ <stateVariable>
+ <name>TransportState</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>STOPPED</allowedValue>
+ <allowedValue>PLAYING</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>TransportStatus</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>OK</allowedValue>
+ <allowedValue>ERROR_OCCURRED</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentMediaCategory</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>NO_MEDIA</allowedValue>
+ <allowedValue>TRACK_AWARE</allowedValue>
+ <allowedValue>TRACK_UNAWARE</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>PlaybackStorageMedium</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>RecordStorageMedium</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>PossiblePlaybackStorageMedia</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>PossibleRecordStorageMedia</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentPlayMode</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>NORMAL</allowedValue>
+ </allowedValueList>
+ <defaultValue>NORMAL</defaultValue>
+ </stateVariable>
+
+ <stateVariable>
+ <name>TransportPlaySpeed</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>1</allowedValue>
+ </allowedValueList>
+ <defaultValue>1</defaultValue>
+ </stateVariable>
+
+ <stateVariable>
+ <name>RecordMediumWriteStatus</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentRecordQualityMode</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>PossibleRecordQualityModes</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>NumberOfTracks</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ <allowedValueRange>
+ <minimum>0</minimum>
+ </allowedValueRange>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentTrack</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ <allowedValueRange>
+ <minimum>0</minimum>
+ <step>1</step>
+ </allowedValueRange>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentTrackDuration</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentMediaDuration</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentTrackMetaData</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentTrackURI</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>AVTransportURI</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>AVTransportURIMetaData</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>NextAVTransportURI</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>NextAVTransportURIMetaData</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>RelativeTimePosition</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>AbsoluteTimePosition</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>RelativeCounterPosition</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>i4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>AbsoluteCounterPosition</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>i4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>LastChange</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_SeekMode</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>TRACK_NR</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_SeekTarget</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_InstanceID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+ </serviceStateTable>
+
+ <actionList>
+ <action>
+ <name>SetAVTransportURI</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentURI</name>
+ <direction>in</direction>
+ <relatedStateVariable>AVTransportURI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentURIMetaData</name>
+ <direction>in</direction>
+ <relatedStateVariable>AVTransportURIMetaData</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetMediaInfo</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NrTracks</name>
+ <direction>out</direction>
+ <relatedStateVariable>NumberOfTracks</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>MediaDuration</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentMediaDuration</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentURI</name>
+ <direction>out</direction>
+ <relatedStateVariable>AVTransportURI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentURIMetaData</name>
+ <direction>out</direction>
+ <relatedStateVariable>AVTransportURIMetaData</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NextURI</name>
+ <direction>out</direction>
+ <relatedStateVariable>NextAVTransportURI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NextURIMetaData</name>
+ <direction>out</direction>
+ <relatedStateVariable>NextAVTransportURIMetaData</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>PlayMedium</name>
+ <direction>out</direction>
+ <relatedStateVariable>PlaybackStorageMedium</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RecordMedium</name>
+ <direction>out</direction>
+ <relatedStateVariable>RecordStorageMedium</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>WriteStatus</name>
+ <direction>out</direction>
+ <relatedStateVariable>RecordMediumWriteStatus</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetMediaInfo_Ext</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentType</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentMediaCategory</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NrTracks</name>
+ <direction>out</direction>
+ <relatedStateVariable>NumberOfTracks</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>MediaDuration</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentMediaDuration</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentURI</name>
+ <direction>out</direction>
+ <relatedStateVariable>AVTransportURI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentURIMetaData</name>
+ <direction>out</direction>
+ <relatedStateVariable>AVTransportURIMetaData</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NextURI</name>
+ <direction>out</direction>
+ <relatedStateVariable>NextAVTransportURI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NextURIMetaData</name>
+ <direction>out</direction>
+ <relatedStateVariable>NextAVTransportURIMetaData</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>PlayMedium</name>
+ <direction>out</direction>
+ <relatedStateVariable>PlaybackStorageMedium</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RecordMedium</name>
+ <direction>out</direction>
+ <relatedStateVariable>RecordStorageMedium</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>WriteStatus</name>
+ <direction>out</direction>
+ <relatedStateVariable>RecordMediumWriteStatus</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetTransportInfo</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentTransportState</name>
+ <direction>out</direction>
+ <relatedStateVariable>TransportState</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentTransportStatus</name>
+ <direction>out</direction>
+ <relatedStateVariable>TransportStatus</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentSpeed</name>
+ <direction>out</direction>
+ <relatedStateVariable>TransportPlaySpeed</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetPositionInfo</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Track</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentTrack</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TrackDuration</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentTrackDuration</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TrackMetaData</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentTrackMetaData</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TrackURI</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentTrackURI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RelTime</name>
+ <direction>out</direction>
+ <relatedStateVariable>RelativeTimePosition</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>AbsTime</name>
+ <direction>out</direction>
+ <relatedStateVariable>AbsoluteTimePosition</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RelCount</name>
+ <direction>out</direction>
+ <relatedStateVariable>RelativeCounterPosition</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>AbsCount</name>
+ <direction>out</direction>
+ <relatedStateVariable>AbsoluteCounterPosition</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetDeviceCapabilities</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>PlayMedia</name>
+ <direction>out</direction>
+ <relatedStateVariable>PossiblePlaybackStorageMedia</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RecMedia</name>
+ <direction>out</direction>
+ <relatedStateVariable>PossibleRecordStorageMedia</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RecQualityModes</name>
+ <direction>out</direction>
+ <relatedStateVariable>PossibleRecordQualityModes</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetTransportSettings</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>PlayMode</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentPlayMode</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RecQualityMode</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentRecordQualityMode</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>Stop</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>Play</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Speed</name>
+ <direction>in</direction>
+ <relatedStateVariable>TransportPlaySpeed</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>Pause</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>Seek</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Unit</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SeekMode</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Target</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SeekTarget</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>Next</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>Previous</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ </actionList>
+</scpd>
+
diff --git a/data/xml/ConnectionManager.xml.in b/data/xml/ConnectionManager.xml.in
new file mode 100644
index 0000000..7fa40e8
--- /dev/null
+++ b/data/xml/ConnectionManager.xml.in
@@ -0,0 +1,167 @@
+<?xml version="1.0"?>
+<!--============================================================
+Title: UPnP AV Connection Manager Service (CM) Template
+
+Purpose:
+To identify the required/optional actions and state variables
+and the required allowed values defined by this service type.
+
+Note:
+This file uses tabs (not spaces) for block indentation.
+Any updates to this file should maintain this convention.
+This includes disabling any automatic tab-to-space conversion
+feature provided by your editor.
+================================================================-->
+<scpd xmlns="urn:schemas-upnp-org:service-1-0">
+ <specVersion>
+ <major>1</major>
+ <minor>0</minor>
+ </specVersion>
+ <serviceStateTable>
+ <stateVariable>
+ <name>SourceProtocolInfo</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>SinkProtocolInfo</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>CurrentConnectionIDs</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_ConnectionStatus</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>OK</allowedValue>
+ <allowedValue>ContentFormatMismatch</allowedValue>
+ <allowedValue>InsufficientBandwidth</allowedValue>
+ <allowedValue>UnreliableChannel</allowedValue>
+ <allowedValue>Unknown</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_ConnectionManager</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_Direction</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>Input</allowedValue>
+ <allowedValue>Output</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_ProtocolInfo</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_ConnectionID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>i4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_AVTransportID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>i4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_RcsID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>i4</dataType>
+ </stateVariable>
+ </serviceStateTable>
+
+ <actionList>
+ <action>
+ <name>GetProtocolInfo</name>
+ <argumentList>
+ <argument>
+ <name>Source</name>
+ <direction>out</direction>
+ <relatedStateVariable>SourceProtocolInfo</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Sink</name>
+ <direction>out</direction>
+ <relatedStateVariable>SinkProtocolInfo</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetCurrentConnectionIDs</name>
+ <argumentList>
+ <argument>
+ <name>ConnectionIDs</name>
+ <direction>out</direction>
+ <relatedStateVariable>CurrentConnectionIDs</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetCurrentConnectionInfo</name>
+ <argumentList>
+ <argument>
+ <name>ConnectionID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_ConnectionID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RcsID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_RcsID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>AVTransportID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_AVTransportID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>ProtocolInfo</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_ProtocolInfo</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>PeerConnectionManager</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_ConnectionManager</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>PeerConnectionID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_ConnectionID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Direction</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Direction</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Status</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_ConnectionStatus</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ </actionList>
+</scpd>
diff --git a/data/xml/ContentDirectory.xml.in b/data/xml/ContentDirectory.xml.in
new file mode 100644
index 0000000..e569c20
--- /dev/null
+++ b/data/xml/ContentDirectory.xml.in
@@ -0,0 +1,407 @@
+<?xml version="1.0"?>
+<!--============================================================
+Title: UPnP AV Content Directory Service (CDS) Template
+
+Purpose:
+To identify the required/optional actions and state variables
+and the required allowed values defined by this service type.
+
+Note:
+This file uses tabs (not spaces) for block indentation.
+Any updates to this file should maintain this convention.
+This includes disabling any automatic tab-to-space conversion
+feature provided by your editor.
+================================================================-->
+<scpd xmlns="urn:schemas-upnp-org:service-1-0">
+ <specVersion>
+ <major>1</major>
+ <minor>0</minor>
+ </specVersion>
+ <serviceStateTable>
+ <stateVariable>
+ <name>SearchCapabilities</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>SortCapabilities</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>SystemUpdateID</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>ContainerUpdateIDs</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>FeatureList</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_ObjectID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_Result</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_BrowseFlag</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>BrowseMetadata</allowedValue>
+ <allowedValue>BrowseDirectChildren</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_Filter</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_SortCriteria</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_Index</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_Count</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_UpdateID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>A_ARG_TYPE_SearchCriteria</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>A_ARG_TYPE_URI</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>uri</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>A_ARG_TYPE_TransferID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>TransferIDs</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>A_ARG_TYPE_TransferStatus</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>COMPLETED</allowedValue>
+ <allowedValue>ERROR</allowedValue>
+ <allowedValue>IN_PROGRESS</allowedValue>
+ <allowedValue>STOPPED</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>A_ARG_TYPE_TransferLength</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>A_ARG_TYPE_TransferTotal</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ </serviceStateTable>
+
+ <actionList>
+ <action>
+ <name>GetSearchCapabilities</name>
+ <argumentList>
+ <argument>
+ <name>SearchCaps</name>
+ <direction>out</direction>
+ <relatedStateVariable>SearchCapabilities</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetSortCapabilities</name>
+ <argumentList>
+ <argument>
+ <name>SortCaps</name>
+ <direction>out</direction>
+ <relatedStateVariable>SortCapabilities</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetSystemUpdateID</name>
+ <argumentList>
+ <argument>
+ <name>Id</name>
+ <direction>out</direction>
+ <relatedStateVariable>SystemUpdateID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>GetFeatureList</name>
+ <argumentList>
+ <argument>
+ <name>FeatureList</name>
+ <direction>out</direction>
+ <relatedStateVariable>FeatureList</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+
+ <action>
+ <name>Browse</name>
+ <argumentList>
+ <argument>
+ <name>ObjectID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_ObjectID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>BrowseFlag</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_BrowseFlag</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Filter</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Filter</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>StartingIndex</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Index</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RequestedCount</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>SortCriteria</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SortCriteria</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Result</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Result</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NumberReturned</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TotalMatches</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>UpdateID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_UpdateID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>Search</name>
+ <argumentList>
+ <argument>
+ <name>ContainerID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_ObjectID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>SearchCriteria</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SearchCriteria</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Filter</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Filter</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>StartingIndex</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Index</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RequestedCount</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>SortCriteria</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SortCriteria</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Result</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Result</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NumberReturned</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TotalMatches</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>UpdateID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_UpdateID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>CreateObject</name>
+ <argumentList>
+ <argument>
+ <name>ContainerID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_ObjectID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Elements</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Result</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>ObjectID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_ObjectID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Result</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Result</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>ImportResource</name>
+ <argumentList>
+ <argument>
+ <name>SourceURI</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_URI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>DestinationURI</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_URI</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TransferID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_TransferID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>GetTransferProgress</name>
+ <argumentList>
+ <argument>
+ <name>TransferID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_TransferID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TransferStatus</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_TransferStatus</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TransferLength</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_TransferLength</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TransferTotal</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_TransferTotal</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>StopTransferResource</name>
+ <argumentList>
+ <argument>
+ <name>TransferID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_TransferID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ </actionList>
+</scpd>
diff --git a/data/xml/Makefile.am b/data/xml/Makefile.am
index 3963648..ad82af3 100644
--- a/data/xml/Makefile.am
+++ b/data/xml/Makefile.am
@@ -1,10 +1,16 @@
-xml_DATA = MediaServer2.xml \
- MediaRenderer2.xml \
- ContentDirectory.xml \
- ConnectionManager.xml \
- AVTransport2.xml \
- RenderingControl2.xml \
- X_MS_MediaReceiverRegistrar1.xml
+xml_in_files = MediaServer2.xml.in \
+ MediaRenderer2.xml.in \
+ ContentDirectory.xml.in \
+ ConnectionManager.xml.in \
+ AVTransport2.xml.in \
+ RenderingControl2.xml.in \
+ X_MS_MediaReceiverRegistrar1.xml.in
+
+xml_DATA = $(xml_in_files:.xml.in=.xml)
+
+# Strip newlines and leading spaces from XML files as not all devices like them
+$(xml_DATA): $(xml_in_files) Makefile
+ @cat < $(@:.xml=.xml.in) | sed -re "s,^ +,,g" | tr -d "\n" > $@
xmldir = $(datadir)/rygel/xml
diff --git a/data/xml/MediaRenderer2.xml b/data/xml/MediaRenderer2.xml.in
similarity index 100%
rename from data/xml/MediaRenderer2.xml
rename to data/xml/MediaRenderer2.xml.in
diff --git a/data/xml/MediaServer2.xml b/data/xml/MediaServer2.xml.in
similarity index 100%
rename from data/xml/MediaServer2.xml
rename to data/xml/MediaServer2.xml.in
diff --git a/data/xml/RenderingControl2.xml.in b/data/xml/RenderingControl2.xml.in
new file mode 100644
index 0000000..59af6f1
--- /dev/null
+++ b/data/xml/RenderingControl2.xml.in
@@ -0,0 +1,194 @@
+<?xml version="1.0"?>
+<!--============================================================
+Title: UPnP AV Rendering Control Service (RCS) Template
+
+Purpose:
+To identify the required/optional actions and state variables
+and the required allowed values defined by this service type.
+
+Note:
+This file uses tabs (not spaces) for block indentation.
+Any updates to this file should maintain this convention.
+This includes disabling any automatic tab-to-space conversion
+feature provided by your editor.
+================================================================-->
+<scpd>
+ <serviceStateTable>
+ <stateVariable>
+ <name>LastChange</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>PresetNameList</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>Mute</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>boolean</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>Volume</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui2</dataType>
+ <allowedValueRange>
+ <minimum>0</minimum>
+ <step>1</step>
+ </allowedValueRange>
+ </stateVariable>
+
+ <stateVariable>
+ <Optional/>
+ <name>A_ARG_TYPE_Channel</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>Master</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_InstanceID</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+
+ <stateVariable>
+ <name>A_ARG_TYPE_PresetName</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>FactoryDefaults</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+ </serviceStateTable>
+
+ <actionList>
+ <action>
+ <name>ListPresets</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentPresetNameList</name>
+ <direction>out</direction>
+ <relatedStateVariable>PresetNameList</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <name>SelectPreset</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>PresetName</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_PresetName</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>GetMute</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Channel</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentMute</name>
+ <direction>out</direction>
+ <relatedStateVariable>Mute</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>SetMute</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Channel</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>DesiredMute</name>
+ <direction>in</direction>
+ <relatedStateVariable>Mute</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>GetVolume</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Channel</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>CurrentVolume</name>
+ <direction>out</direction>
+ <relatedStateVariable>Volume</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+
+ <action>
+ <Optional/>
+ <name>SetVolume</name>
+ <argumentList>
+ <argument>
+ <name>InstanceID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Channel</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>DesiredVolume</name>
+ <direction>in</direction>
+ <relatedStateVariable>Volume</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ </actionList>
+</scpd>
diff --git a/data/xml/X_MS_MediaReceiverRegistrar1.xml b/data/xml/X_MS_MediaReceiverRegistrar1.xml.in
similarity index 100%
rename from data/xml/X_MS_MediaReceiverRegistrar1.xml
rename to data/xml/X_MS_MediaReceiverRegistrar1.xml.in
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]