@@ -18,25 +18,31 @@ public class GetDescriptionXml
18
18
public string UuId { get ; set ; }
19
19
}
20
20
21
- [ Route ( "/Dlna/contentdirectory/contentdirectory.xml" , "GET" , Summary = "Gets dlna content directory xml" ) ]
22
- [ Route ( "/Dlna/contentdirectory/contentdirectory" , "GET" , Summary = "Gets dlna content directory xml" ) ]
21
+ [ Route ( "/Dlna/{UuId}/ contentdirectory/contentdirectory.xml" , "GET" , Summary = "Gets dlna content directory xml" ) ]
22
+ [ Route ( "/Dlna/{UuId}/ contentdirectory/contentdirectory" , "GET" , Summary = "Gets dlna content directory xml" ) ]
23
23
public class GetContentDirectory
24
24
{
25
+ [ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
26
+ public string UuId { get ; set ; }
25
27
}
26
28
27
- [ Route ( "/Dlna/connectionmanager/connectionmanager.xml" , "GET" , Summary = "Gets dlna connection manager xml" ) ]
28
- [ Route ( "/Dlna/connectionmanager/connectionmanager" , "GET" , Summary = "Gets dlna connection manager xml" ) ]
29
+ [ Route ( "/Dlna/{UuId}/ connectionmanager/connectionmanager.xml" , "GET" , Summary = "Gets dlna connection manager xml" ) ]
30
+ [ Route ( "/Dlna/{UuId}/ connectionmanager/connectionmanager" , "GET" , Summary = "Gets dlna connection manager xml" ) ]
29
31
public class GetConnnectionManager
30
32
{
33
+ [ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
34
+ public string UuId { get ; set ; }
31
35
}
32
36
33
- [ Route ( "/Dlna/mediareceiverregistrar/mediareceiverregistrar.xml" , "GET" , Summary = "Gets dlna mediareceiverregistrar xml" ) ]
34
- [ Route ( "/Dlna/mediareceiverregistrar/mediareceiverregistrar" , "GET" , Summary = "Gets dlna mediareceiverregistrar xml" ) ]
37
+ [ Route ( "/Dlna/{UuId}/ mediareceiverregistrar/mediareceiverregistrar.xml" , "GET" , Summary = "Gets dlna mediareceiverregistrar xml" ) ]
38
+ [ Route ( "/Dlna/{UuId}/ mediareceiverregistrar/mediareceiverregistrar" , "GET" , Summary = "Gets dlna mediareceiverregistrar xml" ) ]
35
39
public class GetMediaReceiverRegistrar
36
40
{
41
+ [ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
42
+ public string UuId { get ; set ; }
37
43
}
38
44
39
- [ Route ( "/Dlna/contentdirectory/ {UuId}/control" , "POST" , Summary = "Processes a control request" ) ]
45
+ [ Route ( "/Dlna/{UuId}/contentdirectory /control" , "POST" , Summary = "Processes a control request" ) ]
40
46
public class ProcessContentDirectoryControlRequest : IRequiresRequestStream
41
47
{
42
48
[ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
@@ -45,7 +51,7 @@ public class ProcessContentDirectoryControlRequest : IRequiresRequestStream
45
51
public Stream RequestStream { get ; set ; }
46
52
}
47
53
48
- [ Route ( "/Dlna/connectionmanager/ {UuId}/control" , "POST" , Summary = "Processes a control request" ) ]
54
+ [ Route ( "/Dlna/{UuId}/connectionmanager /control" , "POST" , Summary = "Processes a control request" ) ]
49
55
public class ProcessConnectionManagerControlRequest : IRequiresRequestStream
50
56
{
51
57
[ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
@@ -54,7 +60,7 @@ public class ProcessConnectionManagerControlRequest : IRequiresRequestStream
54
60
public Stream RequestStream { get ; set ; }
55
61
}
56
62
57
- [ Route ( "/Dlna/mediareceiverregistrar/ {UuId}/control" , "POST" , Summary = "Processes a control request" ) ]
63
+ [ Route ( "/Dlna/{UuId}/mediareceiverregistrar /control" , "POST" , Summary = "Processes a control request" ) ]
58
64
public class ProcessMediaReceiverRegistrarControlRequest : IRequiresRequestStream
59
65
{
60
66
[ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
@@ -63,30 +69,34 @@ public class ProcessMediaReceiverRegistrarControlRequest : IRequiresRequestStrea
63
69
public Stream RequestStream { get ; set ; }
64
70
}
65
71
66
- [ Route ( "/Dlna/mediareceiverregistrar/ {UuId}/events" , Summary = "Processes an event subscription request" ) ]
72
+ [ Route ( "/Dlna/{UuId}/mediareceiverregistrar /events" , Summary = "Processes an event subscription request" ) ]
67
73
public class ProcessMediaReceiverRegistrarEventRequest
68
74
{
69
75
[ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
70
76
public string UuId { get ; set ; }
71
77
}
72
78
73
- [ Route ( "/Dlna/contentdirectory/ {UuId}/events" , Summary = "Processes an event subscription request" ) ]
79
+ [ Route ( "/Dlna/{UuId}/contentdirectory /events" , Summary = "Processes an event subscription request" ) ]
74
80
public class ProcessContentDirectoryEventRequest
75
81
{
76
82
[ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
77
83
public string UuId { get ; set ; }
78
84
}
79
85
80
- [ Route ( "/Dlna/connectionmanager/ {UuId}/events" , Summary = "Processes an event subscription request" ) ]
86
+ [ Route ( "/Dlna/{UuId}/connectionmanager /events" , Summary = "Processes an event subscription request" ) ]
81
87
public class ProcessConnectionManagerEventRequest
82
88
{
83
89
[ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
84
90
public string UuId { get ; set ; }
85
91
}
86
92
93
+ [ Route ( "/Dlna/{UuId}/icons/{Filename}" , "GET" , Summary = "Gets a server icon" ) ]
87
94
[ Route ( "/Dlna/icons/{Filename}" , "GET" , Summary = "Gets a server icon" ) ]
88
95
public class GetIcon
89
96
{
97
+ [ ApiMember ( Name = "UuId" , Description = "Server UuId" , IsRequired = false , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
98
+ public string UuId { get ; set ; }
99
+
90
100
[ ApiMember ( Name = "Filename" , Description = "The icon filename" , IsRequired = true , DataType = "string" , ParameterType = "path" , Verb = "GET" ) ]
91
101
public string Filename { get ; set ; }
92
102
}
@@ -108,7 +118,9 @@ public DlnaServerService(IDlnaManager dlnaManager, IContentDirectory contentDire
108
118
109
119
public object Get ( GetDescriptionXml request )
110
120
{
111
- var xml = _dlnaManager . GetServerDescriptionXml ( GetRequestHeaders ( ) , request . UuId ) ;
121
+ var url = Request . AbsoluteUri ;
122
+ var serverAddress = url . Substring ( 0 , url . IndexOf ( "/dlna/" , StringComparison . OrdinalIgnoreCase ) ) ;
123
+ var xml = _dlnaManager . GetServerDescriptionXml ( GetRequestHeaders ( ) , request . UuId , serverAddress ) ;
112
124
113
125
return ResultFactory . GetResult ( xml , "text/xml" ) ;
114
126
}
0 commit comments