com.ricebridge.csvman.test
Class CsvHandlerTest.TestLineProvider

java.lang.Object
  extended bycom.ricebridge.csvman.LineProviderSupportImpl
      extended bycom.ricebridge.csvman.CustomLineProvider
          extended bycom.ricebridge.csvman.test.CsvHandlerTest.TestLineProvider
All Implemented Interfaces:
LineProvider
Enclosing class:
CsvHandlerTest

public static final class CsvHandlerTest.TestLineProvider
extends CustomLineProvider


Field Summary
protected  List iData
           
 boolean iFailOnEndSave
           
 int iFailOnHasNextLine
           
 int iFailOnNextLine
           
 boolean iFailOnStartSave
           
protected  long iLineIndex
           
 StringBuffer sb
           
 
Constructor Summary
CsvHandlerTest.TestLineProvider(List pData)
           
 
Method Summary
 void endProcessImpl()
          Implement this method to receive notification that the saving of CSV data has ended.
 boolean hasNextLineImpl()
          Implement this method to let CSV Manager know that there is another line of data to save.
 String[] nextLineImpl()
          Implement this method to supply each data line as it is saved.
 void startProcessImpl()
          Implement this method to receive notification that the saving of CSV data is about to start.
 
Methods inherited from class com.ricebridge.csvman.CustomLineProvider
setCsvSpecImpl, setLineSpecImpl
 
Methods inherited from class com.ricebridge.csvman.LineProviderSupportImpl
endProcess, hasNextLine, nextLine, setCsvSpec, setLineSpec, startProcess
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sb

public StringBuffer sb

iFailOnStartSave

public boolean iFailOnStartSave

iFailOnEndSave

public boolean iFailOnEndSave

iFailOnNextLine

public int iFailOnNextLine

iFailOnHasNextLine

public int iFailOnHasNextLine

iData

protected List iData

iLineIndex

protected long iLineIndex
Constructor Detail

CsvHandlerTest.TestLineProvider

public CsvHandlerTest.TestLineProvider(List pData)
Method Detail

startProcessImpl

public void startProcessImpl()
Description copied from class: CustomLineProvider
Implement this method to receive notification that the saving of CSV data is about to start.

You can implement this method when you extend CustomLineProvider, but it is not required.

You can use this method to initialise any resource you need to process the CSV data. For example you can open a database connection to retrieve the data as it is saved.

This method is called after setCsvSpecImpl and setLineSpecImpl.

Overrides:
startProcessImpl in class CustomLineProvider
See Also:
endProcessImpl

endProcessImpl

public void endProcessImpl()
Description copied from class: CustomLineProvider
Implement this method to receive notification that the saving of CSV data has ended.

You can implement this method when you extend CustomLineProvider, but it is not required.

You can use this method to close any open resources that were used to handle the CSV data. For example you can close any open database connections.

This method is called last, after all hasNextLineImpl and nextLineImpl calls have been made.

Overrides:
endProcessImpl in class CustomLineProvider
See Also:
startProcessImpl

hasNextLineImpl

public boolean hasNextLineImpl()
Description copied from class: CustomLineProvider
Implement this method to let CSV Manager know that there is another line of data to save.

This method must be implemented when you extend CustomLineProvider.

Return true from this method so long as you have more data lines to save.

Specified by:
hasNextLineImpl in class CustomLineProvider
See Also:
LineProvider.hasNextLine, nextLineImpl

nextLineImpl

public String[] nextLineImpl()
Description copied from class: CustomLineProvider
Implement this method to supply each data line as it is saved.

This method must be implemented when you extend CustomLineProvider.

This method is where you will do the main work of providing the CSV data. Each time this method is called you will need to provide a new line of CSV data as a String[] array.

Error Handling: What happens when you cannot provide the line data for some reason? For example your database connection may fail. In this case, all you have to do is throw an Exception to let CSV Manager know about the problem. But note that if the CsvSpec.setIgnoreBadLines setting is true, then CSV Manager will not stop asking you for more data lines until you also return false from CustomLineProvider.hasNextLineImpl().

Specified by:
nextLineImpl in class CustomLineProvider
See Also:
LineProvider.nextLine, hasNextLineImpl


Copyright © 2003-2006 Ricebridge