def insertIssueVersionEvent()

in app/services/editions/db/IssueQueries.scala [368:415]


  def insertIssueVersionEvent(event: PublishEvent) = DB localTx {
    implicit session =>
      Try {
        logger.info(s"saving issue version event message:${event.message}")(
          event.toLogMarker
        )
        sql"""
        INSERT INTO issue_versions_events (
          version_id
          , event_time
          , status
          , message
        )
        VALUES (
          ${event.version}
          , ${event.timestamp}
          , ${event.status.toString}
          , ${event.message}
        );
      """.execute.apply()
      } match {
        case Success(_) => {
          logger.info(
            s"successfully inserted issue version event message:${event.message}"
          )(event.toLogMarker)
          true
        }
        case Failure(exception: PSQLException)
            if exception.getSQLState == ForeignKeyViolationSQLState => {
          logger.warn(
            "Foreign key constraint violation encountered when inserting issue version event"
          )(event.toLogMarker)
          true
        }
        case Failure(exception: PSQLException) => {
          logger.warn(
            s"Postgres exception (${exception.getMessage}) encountered when inserting issue version event"
          )(event.toLogMarker)
          true
        }
        case Failure(exception) => {
          logger.warn(
            "Non-database exception (${exception.getMessage}) encountered when inserting issue version event"
          )(event.toLogMarker)
          true
        }
      }
  }