FileDocCategorySizeDatePackage
DataAccessImportExportHelper.javaAPI DocExample2068Thu May 05 05:37:36 BST 2005com.samscdrental.importexport

DataAccessImportExportHelper

public class DataAccessImportExportHelper extends Object

Title: Sams CD Rental Store

Description:

Copyright: Copyright (c) 2004

Company:

author
Ken Pugh
version
1.0

Fields Summary
private static final String
ERROR_OPENING
private static final String
ERROR_CLOSING
private static final String
ERROR_READING
Constructors Summary
Methods Summary
public voidaddCDDiscsFromFile(java.lang.String filename, java.lang.String nameForErrors, AddFromFileInterface addFromFile)

		BufferedReader in = null;
		FileReader fileReader = null;
		StringBuffer errorString = new StringBuffer();
		boolean errorOccurred = false;
		try
		{
			fileReader = new FileReader( filename );
			in = new BufferedReader( fileReader );
		}
		catch ( FileNotFoundException exception )
		{
			throw new ImportFileDeviation( ERROR_OPENING + nameForErrors +
										   ": " + filename, exception );
		}
		try
		{
			String line = null;
			// Keep reading till the end of the file
			while ( ( line = in.readLine() ) != null )
			{
				if ( line.length() > 0 )
				{
					try
					{
						addFromFile.addToCollection( line );
					}
					catch ( ParseLineDeviation e )
					{
						errorString.append( e.getMessage() +
											System.getProperty( "line.separator" ) );
						errorOccurred = true;

					}
				}
			}
		}
		catch ( IOException exception )
		{
			throw new ImportFormatDeviation( ERROR_READING + nameForErrors +
											 ": " +
											 filename );

		}
		finally
		{
			try
			{
				in.close();
			}
			catch ( IOException exception )
			{
				throw new SeriousErrorException(
					ERROR_CLOSING + nameForErrors +
					": " + filename, exception );
			}
		}
		if ( errorOccurred )
		{
			throw new ImportFormatDeviation( errorString.toString() );
		}
		return;