1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.fourthline.cling.model.message.discovery;
17
18 import org.fourthline.cling.model.message.IncomingDatagramMessage;
19 import org.fourthline.cling.model.message.UpnpRequest;
20 import org.fourthline.cling.model.message.header.MANHeader;
21 import org.fourthline.cling.model.message.header.MXHeader;
22 import org.fourthline.cling.model.message.header.UpnpHeader;
23 import org.fourthline.cling.model.types.NotificationSubtype;
24
25
26
27
28 public class IncomingSearchRequest extends IncomingDatagramMessage<UpnpRequest> {
29
30 public IncomingSearchRequest(IncomingDatagramMessage<UpnpRequest> source) {
31 super(source);
32 }
33
34 public UpnpHeader getSearchTarget() {
35 return getHeaders().getFirstHeader(UpnpHeader.Type.ST);
36 }
37
38 public Integer getMX() {
39 MXHeader header = getHeaders().getFirstHeader(UpnpHeader.Type.MX, MXHeader.class);
40 if (header != null) {
41 return header.getValue();
42 }
43 return null;
44 }
45
46
47
48
49
50 public boolean isMANSSDPDiscover() {
51 MANHeader header = getHeaders().getFirstHeader(UpnpHeader.Type.MAN, MANHeader.class);
52 return header != null && header.getValue().equals(NotificationSubtype.DISCOVER.getHeaderString());
53 }
54
55 }