• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package gov.nist.javax.sip.header.ims;
2 /*
3 * Conditions Of Use
4 *
5 * This software was developed by employees of the National Institute of
6 * Standards and Technology (NIST), an agency of the Federal Government.
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 import java.text.ParseException;
28 import gov.nist.javax.sip.header.SIPHeader;
29 import javax.sip.header.ExtensionHeader;
30 /**
31  *
32  * @author aayush.bhatnagar
33  * Rancore Technologies Pvt Ltd, Mumbai India.
34  *
35  */
36 public class PAssertedService extends SIPHeader implements PAssertedServiceHeader, SIPHeaderNamesIms, ExtensionHeader{
37 
38     private String subServiceIds;
39     private String subAppIds;
40 
PAssertedService(String name)41     protected PAssertedService(String name) {
42         super(NAME);
43     }
44 
PAssertedService()45     public PAssertedService()
46     {
47         super(P_ASSERTED_SERVICE);
48     }
49 
50     @Override
encodeBody()51     protected String encodeBody() {
52         StringBuffer retval = new StringBuffer();
53 
54          retval.append(ParameterNamesIms.SERVICE_ID);
55 
56             if(this.subServiceIds!=null)
57             {
58                 retval.append(ParameterNamesIms.SERVICE_ID_LABEL).append(".");
59 
60             retval.append(this.getSubserviceIdentifiers());
61             }
62 
63             else if(this.subAppIds!=null)
64             {
65                 retval.append(ParameterNamesIms.APPLICATION_ID_LABEL).append(".");
66                 retval.append(this.getApplicationIdentifiers());
67             }
68 
69         return retval.toString();
70     }
71 
setValue(String value)72     public void setValue(String value) throws ParseException {
73         throw new ParseException(value,0);
74 
75     }
76 
getApplicationIdentifiers()77     public String getApplicationIdentifiers() {
78         if(this.subAppIds.charAt(0)=='.')
79         {
80             return this.subAppIds.substring(1);
81         }
82         return this.subAppIds;
83     }
84 
getSubserviceIdentifiers()85     public String getSubserviceIdentifiers() {
86         if(this.subServiceIds.charAt(0)=='.')
87         {
88             return this.subServiceIds.substring(1);
89         }
90         return this.subServiceIds;
91     }
setApplicationIdentifiers(String appids)92     public void setApplicationIdentifiers(String appids) {
93         this.subAppIds = appids;
94 
95     }
96 
setSubserviceIdentifiers(String subservices)97     public void setSubserviceIdentifiers(String subservices) {
98         this.subServiceIds = subservices;
99 
100     }
101 
equals(Object other)102     public boolean equals(Object other)
103     {
104         return (other instanceof PAssertedServiceHeader) && super.equals(other);
105 
106     }
107 
108 
clone()109     public Object clone() {
110         PAssertedService retval = (PAssertedService) super.clone();
111         return retval;
112     }
113 
114 
115 }
116