[Batchserver-cvs] batchserver/src/org/jmonks/batchserver/io FieldSpec.java, 1.3, 1.4 FileIO.java, 1
Brought to you by:
suresh_pragada
Update of /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/io In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv2270 Modified Files: FieldSpec.java FileIO.java FileReader.java FixedWidthFlatFileFieldSpec.java FixedWidthFlatFileReader.java payment-file-spec.xml Log Message: no message Index: FileIO.java =================================================================== RCS file: /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/io/FileIO.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** FileIO.java 26 May 2006 22:22:26 -0000 1.1 --- FileIO.java 2 Jun 2006 04:40:07 -0000 1.2 *************** *** 24,28 **** { ! return FileReader.getFileReader(filePath,fileSpecPath); } } --- 24,48 ---- { ! FileReader fileReader=null; ! FileSpec fileSpec=FileSpec.createFileSpec(fileSpecPath); ! if(fileSpec.getFileType()==FileType.FIXED_WIDTH_FLAT_FILE) ! { ! fileReader=new FixedWidthFlatFileReader(); ! } ! else if(fileSpec.getFileType()==FileType.DELIMITED_FLAT_FILE) ! { ! fileReader=null; // Create Demlited Flat file reader. ! fileReader.filePath=filePath; ! fileReader.fileSpec=fileSpec; ! } ! else ! { ! // Throw an exception. ! } ! ! fileReader.filePath=filePath; ! fileReader.fileSpec=fileSpec; ! fileReader.initialize(); ! return fileReader; } } Index: FileReader.java =================================================================== RCS file: /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/io/FileReader.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** FileReader.java 26 May 2006 22:22:26 -0000 1.1 --- FileReader.java 2 Jun 2006 04:40:07 -0000 1.2 *************** *** 11,14 **** --- 11,16 ---- package org.jmonks.batchserver.io; + import java.io.File; + *************** *** 17,53 **** * @author Suresh Pragada */ ! public abstract class FileReader { ! protected String filePath=null; ! ! protected FileSpec fileSpec=null; ! public static FileReader getFileReader(String filePath,String fileSpecPath) ! { ! FileReader fileReader=null; ! /** ! * Create the fileSpec. ! */ ! FileSpec fileSpec=FileSpec.createFileSpec(fileSpecPath); ! if(fileSpec.getFileType()==FileType.FIXED_WIDTH_FLAT_FILE) ! { ! fileReader=new FixedWidthFlatFileReader(); ! fileReader.filePath=filePath; ! fileReader.fileSpec=fileSpec; ! } ! else if(fileSpec.getFileType()==FileType.DELIMITED_FLAT_FILE) ! { ! fileReader=null; // Create Demlited Flat file reader. ! fileReader.filePath=filePath; ! fileReader.fileSpec=fileSpec; ! } ! else ! { ! // Throw an exception. ! } ! return fileReader; ! } ! protected abstract void initialize(); ! public abstract Record getNextRecord(); } --- 19,28 ---- * @author Suresh Pragada */ ! public interface FileReader { ! void initialize(File inputFile,FileSpec fileSpec); ! Record getNextRecord(); ! boolean hasMoreRecords(); } Index: FixedWidthFlatFileReader.java =================================================================== RCS file: /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/io/FixedWidthFlatFileReader.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** FixedWidthFlatFileReader.java 1 Jun 2006 22:11:41 -0000 1.2 --- FixedWidthFlatFileReader.java 2 Jun 2006 04:40:07 -0000 1.3 *************** *** 11,14 **** --- 11,21 ---- package org.jmonks.batchserver.io; + import java.io.BufferedReader; + import java.io.File; + import java.io.FileInputStream; + import java.io.IOException; + import java.io.InputStreamReader; + import org.apache.log4j.Logger; + /** * *************** *** 17,27 **** public class FixedWidthFlatFileReader extends FileReader { public void initialize() { ! } public Record getNextRecord() { return null; } } --- 24,61 ---- public class FixedWidthFlatFileReader extends FileReader { + private BufferedReader reader=null; + + private static Logger logger=Logger.getLogger(FixedWidthFlatFileReader.class); + public void initialize() { ! try ! { ! reader=new BufferedReader(new InputStreamReader(new FileInputStream(new File(super.filePath)))); ! } ! catch(IOException exception) ! { ! exception.printStackTrace(); ! logger.fatal("IO Exception while initializing the file reader. Message = " + exception.getMessage(),exception); ! throw FileParseException("IO Exception while initializing the file reader. Message = " + exception.getMessage()); ! } } + public Record getNextRecord() { + String record=reader.readLine(); return null; } + + public boolean hasMoreRecords() + { + } + + public boolean hasMoreRecords() + { + } + + public void initialize(File inputFile, FileSpec fileSpec) + { + } } Index: FixedWidthFlatFileFieldSpec.java =================================================================== RCS file: /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/io/FixedWidthFlatFileFieldSpec.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** FixedWidthFlatFileFieldSpec.java 1 Jun 2006 22:11:41 -0000 1.2 --- FixedWidthFlatFileFieldSpec.java 2 Jun 2006 04:40:07 -0000 1.3 *************** *** 33,39 **** * Creates a new instance of FixedWidthFlatFileFieldSpec */ ! protected FixedWidthFlatFileFieldSpec(String fieldName,Class fieldType) { ! super(fieldName,fieldType); } --- 33,39 ---- * Creates a new instance of FixedWidthFlatFileFieldSpec */ ! protected FixedWidthFlatFileFieldSpec(String fieldName) { ! super(fieldName); } *************** *** 51,66 **** { String fieldName=fieldSpecElement.getAttribute(FieldSpec.FIELD_NAME_ATTRIB_NAME); ! Class fieldType=null; ! try ! { ! fieldType=Class.forName(fieldSpecElement.getAttribute(FieldSpec.FIELD_TYPE_ATTRIB_NAME)); ! } ! catch(ClassNotFoundException exception) ! { ! exception.printStackTrace(); ! logger.fatal("Invalid field type configured for the field name = " + fieldName,exception); ! throw new FileSpecException("Invalid field type configured for the field name = " + fieldName + " Message = " + exception.getMessage()); ! } ! FieldSpec fieldSpec=new FixedWidthFlatFileFieldSpec(fieldName, fieldType); int startPosition=Integer.parseInt(fieldSpecElement.getAttribute(FixedWidthFlatFileFieldSpec.START_POSITION_ATTRIB_NAME)); --- 51,55 ---- { String fieldName=fieldSpecElement.getAttribute(FieldSpec.FIELD_NAME_ATTRIB_NAME); ! FieldSpec fieldSpec=new FixedWidthFlatFileFieldSpec(fieldName); int startPosition=Integer.parseInt(fieldSpecElement.getAttribute(FixedWidthFlatFileFieldSpec.START_POSITION_ATTRIB_NAME)); *************** *** 77,81 **** StringBuffer stringValue=new StringBuffer("{FixedWidthFlatFileFieldSpec "); stringValue.append("[fieldName = " + super.fieldName + "]"); - stringValue.append("[fieldType = " + super.fieldType.getName()+ "]"); stringValue.append("[startPosition = " + this.startPosition + "]"); stringValue.append("[endPosition = " + this.endPosition+ "]"); --- 66,69 ---- Index: FieldSpec.java =================================================================== RCS file: /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/io/FieldSpec.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** FieldSpec.java 1 Jun 2006 22:11:41 -0000 1.3 --- FieldSpec.java 2 Jun 2006 04:40:07 -0000 1.4 *************** *** 10,15 **** package org.jmonks.batchserver.io; ! ! import org.w3c.dom.Element; /** --- 10,14 ---- package org.jmonks.batchserver.io; ! import org.apache.log4j.Logger; /** *************** *** 21,37 **** protected String fieldName=null; - protected Class fieldType=null; - public static final String FIELD_SPEC_TAG_NAME = "field-spec"; public static final String FIELD_NAME_ATTRIB_NAME = "field-name"; ! public static final String FIELD_TYPE_ATTRIB_NAME = "field-type"; ! /** Creates a new instance of FieldSpec */ ! public FieldSpec(String fieldName,Class fieldType) { this.fieldName=fieldName; - this.fieldType=fieldType; } --- 20,32 ---- protected String fieldName=null; public static final String FIELD_SPEC_TAG_NAME = "field-spec"; public static final String FIELD_NAME_ATTRIB_NAME = "field-name"; ! private static Logger logger=Logger.getLogger(FieldSpec.class); ! public FieldSpec(String fieldName) { this.fieldName=fieldName; } *************** *** 40,48 **** return this.fieldName; } ! ! public Class getFieldType() ! { ! return this.fieldType; ! } ! } --- 35,38 ---- return this.fieldName; } ! } Index: payment-file-spec.xml =================================================================== RCS file: /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/io/payment-file-spec.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** payment-file-spec.xml 26 May 2006 22:22:26 -0000 1.1 --- payment-file-spec.xml 2 Jun 2006 04:40:07 -0000 1.2 *************** *** 2,19 **** <file-spec file-type="fixed-width-flat"> ! <record-spec record-type="header" start-with="1"> ! <field-spec field-name="timestamp" field-type="java.lang.String" start-pos="2" end-pos="9"/> </record-spec> <record-spec record-type="detail" starts-with="5"> ! <field-spec field-name="pmtId" field-type="java.lang.Long" start-pos="2" end-pos="11"/> ! <field-spec field-name="pmtAmt" field-type="java.lang.Double" start-pos="12" end-pos="21"/> ! <field-spec field-name="mpaId" field-type="java.lang.Long" start-pos="22" end-pos="31"/> ! <field-spec field-name="pmId" field-type="java.lang.Long" start-pos="32" end-pos="41"/> </record-spec> ! <record-spec record-type="trailor" start-with="6"> ! <field-spec field-name="grandAmount" field-type="java.lang.Double" start-pos="2" end-pos="9"/> </record-spec> <!-- <record-spec record-type="detail" delimiter="|"> ! <field-spec field-name="pmtId" field-type="java.lang.Long" index="1"/> </record-spec> --> </file-spec> --- 2,19 ---- <file-spec file-type="fixed-width-flat"> ! <record-spec record-type="header" starts-with="1"> ! <field-spec field-name="timestamp" start-pos="2" end-pos="9"/> </record-spec> <record-spec record-type="detail" starts-with="5"> ! <field-spec field-name="pmtId" start-pos="2" end-pos="11"/> ! <field-spec field-name="pmtAmt" start-pos="12" end-pos="21"/> ! <field-spec field-name="mpaId" start-pos="22" end-pos="31"/> ! <field-spec field-name="pmId" start-pos="32" end-pos="41"/> </record-spec> ! <record-spec record-type="trailor" starts-with="6"> ! <field-spec field-name="grandAmount" start-pos="2" end-pos="9"/> </record-spec> <!-- <record-spec record-type="detail" delimiter="|"> ! <field-spec field-name="pmtId" index="1"/> </record-spec> --> </file-spec> |