package com.airlock.iam.common.infrastructure;

import com.airlock.iam.base.api.domain.model.exception.FailureException;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

public final class ResponseBodyWriter {
   public static void writeBodyWithoutCommittingResponse(String body, HttpServletResponse response) {
      try {
         response.setBufferSize(body.getBytes(response.getCharacterEncoding()).length);
         PrintWriter writer = response.getWriter();
         writer.write(body);
      } catch (IOException e) {
         throw new FailureException("Error writing response body: " + e.getMessage(), e);
      }
   }

   private ResponseBodyWriter() {
   }
}
