test_class.file: step-plans/step-plans-base-artefacts/src/test/java/step/datapool/file/CSVReaderDataPoolTest.java
test_class.identifier: CSVReaderDataPoolTest
test_class.superclass: extends AbstractArtefactTest
test_case.body: @Test
  	public void testCSVReaderDataPoolToString() {		
  		DataSet<?> pool = getDataPool("File.csv");
  		Assert.assertEquals("Col1=row11 Col2=row12 Col3=row13 Col4= Col5=", ((SimpleStringMap)pool.next().getValue()).toString());
  		pool.close();
  	}
test_case.class_method_signature: CSVReaderDataPoolTest.testCSVReaderDataPoolToString()
test_case.full_signature: @Test public void testCSVReaderDataPoolToString()
test_case.identifier: testCSVReaderDataPoolToString
test_case.invocations: getDataPool assertEquals toString getValue next close
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testCSVReaderDataPoolToString()
focal_class.declarator: logger = LoggerFactory.getLogger(CSVReaderDataPool.class)
focal_class.modifier: public static final
focal_class.original_string: public static final Logger logger = LoggerFactory.getLogger(CSVReaderDataPool.class);
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: headers
focal_class.modifier: protected
focal_class.original_string: protected Vector<String> headers;
focal_class.type: Vector<String>
focal_class.var_name: headers
focal_class.declarator: delimiter
focal_class.modifier: protected
focal_class.original_string: protected String delimiter;
focal_class.type: String
focal_class.var_name: delimiter
focal_class.declarator: hasChanges = new AtomicBoolean(false)
focal_class.modifier: protected
focal_class.original_string: protected AtomicBoolean hasChanges = new AtomicBoolean(false);
focal_class.type: AtomicBoolean
focal_class.var_name: hasChanges
focal_class.declarator: tempFile
focal_class.modifier: protected
focal_class.original_string: protected File tempFile;
focal_class.type: File
focal_class.var_name: tempFile
focal_class.declarator: tempFileWriter
focal_class.modifier: protected
focal_class.original_string: protected PrintWriter tempFileWriter;
focal_class.type: PrintWriter
focal_class.var_name: tempFileWriter
focal_class.file: step-plans/step-plans-base-artefacts/src/main/java/step/datapool/file/CSVReaderDataPool.java
focal_class.identifier: CSVReaderDataPool
focal_class.class_method_signature: CSVReaderDataPool.CSVReaderDataPool(CSVDataPool configuration)
focal_class.full_signature: public  CSVReaderDataPool(CSVDataPool configuration)
focal_class.identifier: CSVReaderDataPool
focal_class.modifiers: public
focal_class.parameters: (CSVDataPool configuration)
focal_class.signature:  CSVReaderDataPool(CSVDataPool configuration)
focal_class.class_method_signature: CSVReaderDataPool.init()
focal_class.full_signature: @Override public void init()
focal_class.identifier: init
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void init()
focal_class.class_method_signature: CSVReaderDataPool.close()
focal_class.full_signature: @Override public void close()
focal_class.identifier: close
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void close()
focal_class.class_method_signature: CSVReaderDataPool.writeRow(DataPoolRow row)
focal_class.full_signature: @Override public void writeRow(DataPoolRow row)
focal_class.identifier: writeRow
focal_class.modifiers: @Override public
focal_class.parameters: (DataPoolRow row)
focal_class.return: void
focal_class.signature: void writeRow(DataPoolRow row)
focal_class.class_method_signature: CSVReaderDataPool.isWriteQueueSupportEnabled()
focal_class.full_signature: @Override protected boolean isWriteQueueSupportEnabled()
focal_class.identifier: isWriteQueueSupportEnabled
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isWriteQueueSupportEnabled()
focal_class.class_method_signature: CSVReaderDataPool.isWriteEnabled()
focal_class.full_signature: private boolean isWriteEnabled()
focal_class.identifier: isWriteEnabled
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isWriteEnabled()
focal_class.class_method_signature: CSVReaderDataPool.postProcess(String line)
focal_class.full_signature: @Override public Object postProcess(String line)
focal_class.identifier: postProcess
focal_class.modifiers: @Override public
focal_class.parameters: (String line)
focal_class.return: Object
focal_class.signature: Object postProcess(String line)
focal_class.class_method_signature: CSVReaderDataPool.getHeaders(String readOneLine)
focal_class.full_signature: public Vector<String> getHeaders(String readOneLine)
focal_class.identifier: getHeaders
focal_class.modifiers: public
focal_class.parameters: (String readOneLine)
focal_class.return: Vector<String>
focal_class.signature: Vector<String> getHeaders(String readOneLine)
focal_class.class_method_signature: CSVReaderDataPool.splitCSV(String readOneLine)
focal_class.full_signature: public Vector<String> splitCSV(String readOneLine)
focal_class.identifier: splitCSV
focal_class.modifiers: public
focal_class.parameters: (String readOneLine)
focal_class.return: Vector<String>
focal_class.signature: Vector<String> splitCSV(String readOneLine)
focal_class.class_method_signature: CSVReaderDataPool.doFirst_()
focal_class.full_signature: @Override public void doFirst_()
focal_class.identifier: doFirst_
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void doFirst_()
focal_class.class_method_signature: CSVReaderDataPool.addRow(Object row)
focal_class.full_signature: @Override public void addRow(Object row)
focal_class.identifier: addRow
focal_class.modifiers: @Override public
focal_class.parameters: (Object row)
focal_class.return: void
focal_class.signature: void addRow(Object row)
focal_class.superclass: extends FileReaderDataPool
focal_method.body: @Override
  	public void close() {
  		super.close();
  
  		try {
  			tempFileWriter.close();
  			// persist the changes if necessary
  			if (isWriteEnabled() && hasChanges.get()) {
  				// move the initial file
  				File initialFile = new File(filePath + ".initial");
  				Files.move(new File(filePath), initialFile);
  				// replace the initial file by the temporary file containing the changes
  				Files.move(tempFile, new File(filePath));
  				// delete the initial file
  				initialFile.delete();
  			}
  			tempFile.delete();
  		} catch (IOException e) {
  			logger.error("Error while closing the CSV dataset", e);
  		}
  	}
focal_method.class_method_signature: CSVReaderDataPool.close()
focal_method.full_signature: @Override public void close()
focal_method.identifier: close
focal_method.invocations: close close isWriteEnabled get move move delete delete error
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: void
focal_method.signature: void close()