1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.fourthline.cling.model.message.header;
17
18 import org.seamless.util.io.HexBin;
19
20
21
22
23
24
25 public class InterfaceMacHeader extends UpnpHeader<byte[]> {
26
27 public InterfaceMacHeader() {
28 }
29
30 public InterfaceMacHeader(byte[] value) {
31 setValue(value);
32 }
33
34 public InterfaceMacHeader(String s) {
35 setString(s);
36 }
37
38 public void setString(String s) throws InvalidHeaderException {
39 byte[] bytes = HexBin.stringToBytes(s, ":");
40 setValue(bytes);
41 if (bytes.length != 6) {
42 throw new InvalidHeaderException("Invalid MAC address: " + s);
43 }
44 }
45
46 public String getString() {
47 return HexBin.bytesToString(getValue(), ":");
48 }
49
50 @Override
51 public String toString() {
52 return "(" + getClass().getSimpleName() + ") '" + getString() + "'";
53 }
54 }