Merge "Remove "response" from yang."
[packetcable.git] / protocol_plugins.packetcable / src / main / java / org / pcmm / gates / impl / SubscriberID.java
1 /**
2  @header@
3  */
4 package org.pcmm.gates.impl;
5
6 import java.net.Inet4Address;
7 import java.net.InetAddress;
8 import java.net.UnknownHostException;
9
10 import org.pcmm.base.impl.PCMMBaseObject;
11 import org.pcmm.gates.ISubscriberID;
12
13 /**
14  *
15  */
16 public class SubscriberID extends PCMMBaseObject implements ISubscriberID {
17
18     /**
19      *
20      */
21     public SubscriberID() {
22         this(LENGTH, STYPE, SNUM);
23     }
24
25     /**
26      * @param data
27      */
28     public SubscriberID(byte[] data) {
29         super(data);
30     }
31
32     /**
33      * @param len
34      * @param sType
35      * @param sNum
36      */
37     public SubscriberID(short len, byte sType, byte sNum) {
38         super(len, sType, sNum);
39     }
40
41     /*
42      * (non-Javadoc)
43      *
44      * @see org.pcmm.gates.ISubscriberID#getSourceIPAddress()
45      */
46     @Override
47     public InetAddress getSourceIPAddress() {
48         try {
49             return Inet4Address.getByAddress(getBytes((short) 0, (short) 4));
50         } catch (UnknownHostException e) {
51             return null;
52         }
53     }
54
55     /*
56      * (non-Javadoc)
57      *
58      * @see
59      * org.pcmm.gates.ISubscriberID#setSourceIPAddress(java.net.InetAddress)
60      */
61     @Override
62     public void setSourceIPAddress(InetAddress address) {
63         setBytes(address.getAddress(), (short) 0);
64     }
65
66 }