thanks for the comments.
how does the history shows lines removed?
How can I keep those lines I commented out in my code but not in the patch?

=========================
BJ Freeman
http://bjfreeman.elance.com
Strategic Power Office with Supplier Automation 
<http://www.businessesnetwork.com/automation/viewforum.php?f=93>
Specialtymarket.com <http://www.specialtymarket.com/>

Systems Integrator-- Glad to Assist

Chat  Y! messenger: bjfr33man
Linkedin
<http://www.linkedin.com/profile?viewProfile=&key=1237480&locale=en_US&trk=tab_pro>


Adam Heath sent the following on 3/16/2010 9:06 AM:
> [email protected] wrote:
>> Author: jleroux
>> Date: Tue Mar 16 16:00:32 2010
>> New Revision: 923828
>>
>> URL: http://svn.apache.org/viewvc?rev=923828&view=rev
>> Log:
>> A patch from BJ Freeman "Datafile does not catch lack of delimiter if at end 
>> of line." (https://issues.apache.org/jira/browse/OFBIZ-3026) - OFBIZ-3026
>>
>> There was an issue if the datafile did not have the last delimiter before 
>> the CRLF.  This fixes it when there are not data for a field and also fixes 
>> the EOL.
>>
>> Modified:
>>     ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/Record.java
>>     ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/RecordIterator.java
>>
>> Modified: ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/Record.java
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/Record.java?rev=923828&r1=923827&r2=923828&view=diff
>> ==============================================================================
>> --- ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/Record.java 
>> (original)
>> +++ ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/Record.java Tue 
>> Mar 16 16:00:32 2010
>> @@ -561,18 +561,24 @@ public class Record implements Serializa
>>                      strVal = (String)modelField.defaultValue;
>>                  }
>>              } else {
>> -                try {
>> -                    strVal = st.nextToken();
>> -                    if (strVal.equals("" + delimiter)) {
>> -                        strVal = null;
>> -                    } else {
>> -                        if (st.hasMoreTokens()) {
>> -                            st.nextToken();
>> +                //some input lines may be less than the header model.
>> +                if (st.hasMoreTokens()) {
>> +                    try {
>> +                        strVal = st.nextToken();
>> +                        if (strVal.equals("" + delimiter)) {
>> +                            strVal = null;
>> +                        } else {
>> +                            if (st.hasMoreTokens()) {
>> +                                st.nextToken();
>> +                            }
>>                          }
>> -                    }
>> -                } catch (NoSuchElementException nsee) {
>> -                    throw new DataFileException("Field " + modelField.name 
>> + " could not be read from a line (" + lineNum + ") with only " +
>> -                            line.length() + " chars.", nsee);
>> +                    } catch (NoSuchElementException nsee) {
>> +                        throw new DataFileException("Field " + 
>> modelField.name + " could not be read from a line (" + lineNum + ") with 
>> only " +
>> +                                line.length() + " chars.", nsee);
>> +                    }                
>> +                }
>> +                else { //if input line is less than the header model then 
>> pad with null
>> +                    strVal = null;
>>                  }
> 
> } else {
> 
>>              }
>>              try {
>>
>> Modified: 
>> ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/RecordIterator.java
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/RecordIterator.java?rev=923828&r1=923827&r2=923828&view=diff
>> ==============================================================================
>> --- 
>> ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/RecordIterator.java 
>> (original)
>> +++ 
>> ofbiz/trunk/framework/datafile/src/org/ofbiz/datafile/RecordIterator.java 
>> Tue Mar 16 16:00:32 2010
>> @@ -26,6 +26,8 @@ import java.io.InputStreamReader;
>>  import java.net.URL;
>>  import java.util.Stack;
>>  
>> +import org.ofbiz.base.util.Debug;
>> +
> 
> Extra blank line.
> 
>>  /**
>>   *  Record Iterator for reading large files
>> @@ -84,7 +86,6 @@ public class RecordIterator {
>>          this.nextRecord = null;
>>  
>>          boolean isFixedRecord = 
>> ModelDataFile.SEP_FIXED_RECORD.equals(modelDataFile.separatorStyle);
>> -        boolean isFixedLength = 
>> ModelDataFile.SEP_FIXED_LENGTH.equals(modelDataFile.separatorStyle);
>>          boolean isDelimited = 
>> ModelDataFile.SEP_DELIMITED.equals(modelDataFile.separatorStyle);
>>          // if (Debug.infoOn()) Debug.logInfo("[DataFile.readDataFile] 
>> separatorStyle is " + modelDataFile.separatorStyle + ", isFixedRecord: " + 
>> isFixedRecord, module);
>>  
>> @@ -111,12 +112,14 @@ public class RecordIterator {
>>          } else {
>>              try {
>>                  nextLine = br.readLine();
>> -            } catch (IOException e) {
>> +                Debug.logInfo("br.readLine()=\"" + nextLine + "\"", module);
>> +                } catch (IOException e) {
> 
> Remove this logInfo.
> 
> The catch line has bad indentation.
> 
>>                  throw new DataFileException("Error reading line #" + 
>> nextLineNum + " from location: " + locationInfo, e);
>>              }
>>          }
>>  
>> -        if (nextLine != null && !(eof.equals(nextLine.substring(0,1)) && 1 
>> == nextLine.length())) {
>> +        //if (nextLine != null && !(eof.equals(nextLine.substring(0,1)) && 
>> 1 == nextLine.length())) {
>> +        if (nextLine != null && !((nextLine.contains(eof) ) )) {
> 
> Don't leave commented out lines like this; it is generally bad form,
> esp. for simple lines.  That's what revision history is for.
> 
> Bad spacing around parentheses.
> 
>>              nextLineNum++;
>>              ModelRecord modelRecord = findModelForLine(nextLine, 
>> nextLineNum, modelDataFile);
>>              if (isDelimited) {
>> @@ -136,7 +139,8 @@ public class RecordIterator {
>>      }
>>  
>>      public boolean hasNext() {
>> -        return nextLine != null && !(eof.equals(nextLine.substring(0,1)) && 
>> 1 == nextLine.length());
>> +        //return nextLine != null && !(eof.equals(nextLine.substring(0,1)) 
>> && 1 == nextLine.length());
>> +        return nextLine != null && !((nextLine.contains(eof) ) );
> 
> Same as last paragraph.
> 
> 
> 


Reply via email to