@Override
  public Priority getPriority() {
    if (!priorityAdded) {
      String header =
          (getHeaders() == null) ? null : getHeaders().getValues(SipConstants.HEADER_PRIORITY);

      if (header != null) {
        try {
          setPriority(Priority.valueOf(header));
        } catch (Exception e) {
          Context.getCurrentLogger().info(e.getMessage());
        }
      }

      priorityAdded = true;
    }

    return super.getPriority();
  }