Class AbstractSipRequestBuilder

java.lang.Object
io.github.lunasaw.sip.common.transmit.request.AbstractSipRequestBuilder
Direct Known Subclasses:
AckRequestBuilder, ByeRequestBuilder, InfoRequestBuilder, InviteRequestBuilder, MessageRequestBuilder, NotifyRequestBuilder, RegisterRequestBuilder, SubscribeRequestBuilder

public abstract class AbstractSipRequestBuilder extends Object
SIP请求构建器抽象基类 提供通用的SIP请求构建逻辑和模板方法
Author:
luna
  • Constructor Details

    • AbstractSipRequestBuilder

      public AbstractSipRequestBuilder()
  • Method Details

    • build

      public javax.sip.message.Request build(FromDevice fromDevice, ToDevice toDevice, SipMessage sipMessage, SubscribeInfo subscribeInfo)
      构建SIP请求的模板方法
      Parameters:
      fromDevice - 发送设备
      toDevice - 接收设备
      sipMessage - SIP消息内容
      subscribeInfo - 订阅信息(可选)
      Returns:
      SIP请求
    • build

      public javax.sip.message.Request build(FromDevice fromDevice, ToDevice toDevice, SipMessage sipMessage)
      构建SIP请求的模板方法(无订阅信息)
      Parameters:
      fromDevice - 发送设备
      toDevice - 接收设备
      sipMessage - SIP消息内容
      Returns:
      SIP请求
    • validateParameters

      protected void validateParameters(FromDevice fromDevice, ToDevice toDevice, SipMessage sipMessage)
      参数校验
    • processSubscribeInfo

      protected void processSubscribeInfo(SipMessage sipMessage, SubscribeInfo subscribeInfo)
      处理订阅信息
    • buildBaseRequest

      protected javax.sip.message.Request buildBaseRequest(FromDevice fromDevice, ToDevice toDevice, SipMessage sipMessage)
      构建基础SIP请求
    • addCustomHeaders

      protected void addCustomHeaders(javax.sip.message.Request request, SipMessage sipMessage)
      添加自定义头部
    • customizeRequest

      protected void customizeRequest(javax.sip.message.Request request, FromDevice fromDevice, ToDevice toDevice, SipMessage sipMessage)
      子类特定的请求定制化逻辑 默认空实现,子类可以重写
    • buildFromResponse

      public javax.sip.message.Request buildFromResponse(javax.sip.address.SipURI requestUri, SipMessage sipMessage, gov.nist.javax.sip.message.SIPResponse sipResponse)
      基于SIP响应构建请求的模板方法