TexWriterImpl.java 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * Copyright (c) 2025. Andrew Grant Carrick Software. All rights reserved
  3. *
  4. */
  5. package scot.carricksoftware.grantswriter.writer;
  6. import org.apache.logging.log4j.LogManager;
  7. import org.apache.logging.log4j.Logger;
  8. import org.springframework.stereotype.Component;
  9. import scot.carricksoftware.grantswriter.writer.latex.LatexDocumentEnd;
  10. import scot.carricksoftware.grantswriter.writer.latex.LatexDocumentStart;
  11. @Component
  12. public class TexWriterImpl implements TexWriter {
  13. private static final Logger logger = LogManager.getLogger(TexWriterImpl.class);
  14. private final FileWriter fileWriter;
  15. private final LatexDocumentStart docStart;
  16. private final LatexDocumentEnd docEnd;
  17. public TexWriterImpl(FileWriter fileWriter, LatexDocumentStart docStart, LatexDocumentEnd docEnd) {
  18. this.fileWriter = fileWriter;
  19. this.docStart = docStart;
  20. this.docEnd = docEnd;
  21. }
  22. @Override
  23. public void write(String filename) throws Exception {
  24. logger.info("TexWriter::write");
  25. fileWriter.init(filename);
  26. docStart.write();
  27. docEnd.write();
  28. fileWriter.close();
  29. }
  30. }