182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanpackage javax.sip.header; 282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport java.text.ParseException; 482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport java.util.Calendar; 582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport java.util.List; 682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport java.util.Locale; 782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.InvalidArgumentException; 882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.address.Address; 982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanimport javax.sip.address.URI; 1082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 1182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyanpublic interface HeaderFactory { 1282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan void setPrettyEncoding(boolean flag); 1382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 1482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AcceptEncodingHeader createAcceptEncodingHeader(String encoding) 1582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 1682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 1782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AcceptHeader createAcceptHeader(String contentType, String contentSubType) 1882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 1982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 2082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AcceptLanguageHeader createAcceptLanguageHeader(Locale language); 2182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 2282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AlertInfoHeader createAlertInfoHeader(URI alertInfo); 2382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 2482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AllowEventsHeader createAllowEventsHeader(String eventType) 2582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 2682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 2782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AllowHeader createAllowHeader(String method) throws ParseException; 2882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 2982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AuthenticationInfoHeader createAuthenticationInfoHeader(String response) 3082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 3182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 3282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan AuthorizationHeader createAuthorizationHeader(String scheme) 3382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 3482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 3582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan CallIdHeader createCallIdHeader(String callId) throws ParseException; 3682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 3782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan CallInfoHeader createCallInfoHeader(URI callInfo); 3882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 3982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ContactHeader createContactHeader(); 4082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 4182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ContactHeader createContactHeader(Address address); 4282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 4382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ContentDispositionHeader createContentDispositionHeader( 4482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan String contentDispositionType) throws ParseException; 4582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 4682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ContentEncodingHeader createContentEncodingHeader(String encoding) 4782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 4882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 4982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ContentLanguageHeader createContentLanguageHeader(Locale contentLanguage); 5082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 5182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ContentLengthHeader createContentLengthHeader(int contentLength) 5282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 5382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 5482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ContentTypeHeader createContentTypeHeader(String contentType, 5582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan String contentSubType) throws ParseException; 5682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 5782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan /** 5882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan * @deprecated 5982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan * @see #createCSeqHeader(long, String) 6082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan */ 6182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan CSeqHeader createCSeqHeader(int sequenceNumber, String method) 6282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException, InvalidArgumentException; 6382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 6482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan CSeqHeader createCSeqHeader(long sequenceNumber, String method) 6582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException, InvalidArgumentException; 6682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 6782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan DateHeader createDateHeader(Calendar date); 6882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 6982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ErrorInfoHeader createErrorInfoHeader(URI errorInfo); 7082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 7182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan EventHeader createEventHeader(String eventType) throws ParseException; 7282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 7382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ExpiresHeader createExpiresHeader(int expires) 7482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 7582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 7682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ExtensionHeader createExtensionHeader(String name, String value) 7782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 7882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 7982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan FromHeader createFromHeader(Address address, String tag) 8082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 8182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 8282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan Header createHeader(String name, String value) throws ParseException; 8382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan Header createHeader(String headerText) throws ParseException; 8482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 8582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan List createHeaders(String headers) throws ParseException; 8682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 8782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan InReplyToHeader createInReplyToHeader(String callId) throws ParseException; 8882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 8982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan MaxForwardsHeader createMaxForwardsHeader(int maxForwards) 9082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 9182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 9282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan MimeVersionHeader createMimeVersionHeader(int majorVersion, 9382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan int minorVersion) throws InvalidArgumentException; 9482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 9582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan MinExpiresHeader createMinExpiresHeader(int minExpires) 9682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 9782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 9882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan OrganizationHeader createOrganizationHeader(String organization) 9982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 10082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 10182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan PriorityHeader createPriorityHeader(String priority) throws ParseException; 10282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 10382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ProxyAuthenticateHeader createProxyAuthenticateHeader(String scheme) 10482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 10582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 10682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ProxyAuthorizationHeader createProxyAuthorizationHeader(String scheme) 10782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 10882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 10982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ProxyRequireHeader createProxyRequireHeader(String optionTag) 11082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 11182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 11282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RAckHeader createRAckHeader(long rSeqNumber, long cSeqNumber, String method) 11382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException, ParseException; 11482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 11582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan /** 11682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan * @deprecated 11782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan * @see #createRAckHeader(long, long, String) 11882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan */ 11982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RAckHeader createRAckHeader(int rSeqNumber, int cSeqNumber, String method) 12082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException, ParseException; 12182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 12282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ReasonHeader createReasonHeader(String protocol, int cause, String text) 12382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException, ParseException; 12482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 12582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RecordRouteHeader createRecordRouteHeader(Address address); 12682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 12782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ReferToHeader createReferToHeader(Address address); 12882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 12982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ReplyToHeader createReplyToHeader(Address address); 13082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 13182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RequireHeader createRequireHeader(String optionTag) throws ParseException; 13282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 13382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RetryAfterHeader createRetryAfterHeader(int retryAfter) 13482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 13582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 13682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RouteHeader createRouteHeader(Address address); 13782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 13882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RSeqHeader createRSeqHeader(long sequenceNumber) 13982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 14082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 14182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan /** 14282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan * @deprecated 14382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan * @see #createRSeqHeader(long) 14482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan */ 14582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan RSeqHeader createRSeqHeader(int sequenceNumber) 14682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 14782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 14882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ServerHeader createServerHeader(List product) throws ParseException; 14982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 15082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan SIPETagHeader createSIPETagHeader(String etag) throws ParseException; 15182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 15282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan SIPIfMatchHeader createSIPIfMatchHeader(String etag) throws ParseException; 15382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 15482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan SubjectHeader createSubjectHeader(String subject) throws ParseException; 15582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 15682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan SubscriptionStateHeader createSubscriptionStateHeader( 15782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan String subscriptionState) throws ParseException; 15882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 15982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan SupportedHeader createSupportedHeader(String optionTag) 16082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 16182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 16282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan TimeStampHeader createTimeStampHeader(float timeStamp) 16382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException; 16482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 16582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ToHeader createToHeader(Address address, String tag) throws ParseException; 16682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 16782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan UnsupportedHeader createUnsupportedHeader(String optionTag) 16882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 16982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 17082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan UserAgentHeader createUserAgentHeader(List product) throws ParseException; 17182ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 17282ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan ViaHeader createViaHeader(String host, int port, String transport, 17382ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan String branch) throws InvalidArgumentException, ParseException; 17482ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 17582ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan WarningHeader createWarningHeader(String agent, int code, String comment) 17682ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws InvalidArgumentException, ParseException; 17782ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan 17882ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan WWWAuthenticateHeader createWWWAuthenticateHeader(String scheme) 17982ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan throws ParseException; 18082ea0633e3a0e2d77feed89f033e1dcf4a656c20Hung-ying Tyan} 181