1/*
2* Conditions Of Use
3*
4* This software was developed by employees of the National Institute of
5* Standards and Technology (NIST), an agency of the Federal Government
6* and others.
7* Pursuant to title 15 Untied States Code Section 105, works of NIST
8* employees are not subject to copyright protection in the United States
9* and are considered to be in the public domain.  As a result, a formal
10* license is not needed to use the software.
11*
12* This software is provided by NIST as a service and is expressly
13* provided "AS IS."  NIST MAKES NO WARRANTY OF ANY KIND, EXPRESS, IMPLIED
14* OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTY OF
15* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT
16* AND DATA ACCURACY.  NIST does not warrant or make any representations
17* regarding the use of the software or the results thereof, including but
18* not limited to the correctness, accuracy, reliability or usefulness of
19* the software.
20*
21* Permission to use this software is contingent upon your acceptance
22* of the terms of this agreement.
23*
24*/
25
26/*******************************************
27 * PRODUCT OF PT INOVACAO - EST DEPARTMENT *
28 *******************************************/
29
30
31package gov.nist.javax.sip.header.ims;
32
33
34import java.text.ParseException;
35import javax.sip.header.Header;
36import javax.sip.header.Parameters;
37
38
39/**
40 * <p>P-Access-Network-Info SIP P-Header </p>
41 * <p>This header carries information relating to the access network between
42 * the UAC and its serving proxy in the home network.</p>
43 *
44 * <p>IETF RFC3455 + 3GPP TS 24.229-720 (2005-12)</p>
45 * <p>Sintax: </p>
46 * <pre>
47 * P-Access-Network-Info  = "P-Access-Network-Info": access-type *(; access-info)
48 *
49 * access-type    = "IEEE-802.11a" / "IEEE-802.11b" / "3GPP-GERAN" / "3GPP-UTRAN-FDD" /
50 *                   "3GPP-UTRAN-TDD" / "ADSL" / "ADSL2" / "ADSL2+" / "RADSL" / "SDSL" /
51 *                   "HDSL" / "HDSL2" / "G.SHDSL" / "VDSL" / "IDSL" / "3GPP2-1X" /
52 *                   "3GPP2-1XHRPD" /token
53 *
54 * access-info            = cgi-3gpp / utran-cell-id-3gpp / dsl-location /
55 *                          ci-3gpp2 / extension-access-info
56 * cgi-3gpp               = "cgi-3gpp" EQUAL (token / quoted-string)
57 * utran-cell-id-3gpp     = "utran-cell-id-3gpp" EQUAL (token / quoted-string)
58 * dsl-location           = "dsl-location" EQUAL (token / quoted-string)
59 * ci-3gpp2               = "ci-3gpp2" EQUAL (token / quoted-string)
60 * extension-access-info  = gen-value
61 * gen-value              = token / host / quoted-string
62 * </pre>
63 *
64 * @author Miguel Freitas (IT) PT-Inovacao
65 */
66
67
68public interface PAccessNetworkInfoHeader extends Parameters, Header
69{
70
71    public final static String NAME = "P-Access-Network-Info";
72
73    // access type
74    public static final String IEEE_802_11 = "IEEE-802.11";
75    public static final String IEEE_802_11A = "IEEE-802.11a";
76    public static final String IEEE_802_11B = "IEEE-802.11b";
77    public static final String IEEE_802_11G = "IEEE-802.11g";
78    public static final String GGGPP_GERAN = "3GPP-GERAN";
79    public static final String GGGPP_UTRAN_FDD = "3GPP-UTRAN-FDD";
80    public static final String GGGPP_UTRAN_TDD = "3GPP-UTRAN-TDD";
81    public static final String GGGPP_CDMA2000 = "3GPP-CDMA2000";
82    public static final String ADSL = "ADSL";
83    public static final String ADSL2 = "ADSL2";
84    public static final String ADSL2p = "ADSL2+";
85    public static final String RADSL = "RADSL";
86    public static final String SDSL = "SDSL";
87    public static final String HDSL = "HDSL";
88    public static final String HDSL2 = "HDSL2";
89    public static final String GSHDSL = "G.SHDSL";
90    public static final String VDSL = "VDSL";
91    public static final String IDSL = "IDSL";
92    public static final String GGGPP2_1X = "3GPP2-1X";
93    public static final String GGGPP2_1XHRPD = "3GPP2-1XHRPD";
94
95
96
97    public void setAccessType(String accessTypeVal) throws ParseException;
98    public String getAccessType();
99
100
101    public void setCGI3GPP(String cgi) throws ParseException;
102    public String getCGI3GPP();
103
104
105    public void setUtranCellID3GPP(String utranCellID) throws ParseException;
106    public String getUtranCellID3GPP();
107
108
109    public void setDSLLocation(String dslLocation) throws ParseException;
110    public String getDSLLocation();
111
112
113    public void setCI3GPP2(String ci2Gpp2) throws ParseException;
114    public String getCI3GPP2();
115
116
117    public void setExtensionAccessInfo(Object extendAccessInfo) throws ParseException;
118    public Object getExtensionAccessInfo();
119
120
121
122
123}
124