Debug.err("Invalid CSV format!"); return null;
if(field.length != 1) Debug.err("Invalid CSV format, incorrect number of fields!"); return null;
	  public Call parseCallJFritzCSV(String line){	    String[] field = line.split(PATTERN_CSV);	    Call call;	    CallType calltype;	    Date calldate;	    PhoneNumber number;	    	    //check if line has correct amount of entries	    if(field.length < 12){	      Debug.err("Invalid CSV format!"); //$NON-NLS-1$	      return null;	    }	    	    //Strip those damn quotes	    for(int i=0; i < 12; i++)	      field[i] = field[i].substring(1, field[i].length()-1);	      	    //Call type	    //Perhaps it would be nice to standardize the calltype and export strings	    if(field[0].equals("Incoming")){ //$NON-NLS-1$	        calltype = new CallType("call_in"); //$NON-NLS-1$	    }else if(field[0].equals("Missed")){ //$NON-NLS-1$	      calltype = new CallType("call_in_failed"); //$NON-NLS-1$	    }else if(field[0].equals("Outgoing")){ //$NON-NLS-1$	      calltype = new CallType("call_out"); //$NON-NLS-1$	    }else{	      Debug.err("Invalid Call type in CSV file!"); //$NON-NLS-1$	      return null;	    }	    	    //Call date and time	    if(field[1] != null && field[2] != null){	      	      try{	        calldate = new SimpleDateFormat("dd.MM.yy HH:mm").parse(field[1]+" "+field[2]); //$NON-NLS-1$,  //$NON-NLS-2$	      }catch(ParseException e){	        Debug.err("Invalid date format in csv file!"); //$NON-NLS-1$	        return null;	      }	    }else{	      Debug.err("Invalid CSV file!"); //$NON-NLS-1$	      return null;	    }	    //change the port to fit the jfritz naming convention	    if (field[5].equals("FON1")) {          field[5] = "0";      } else if (field[5].equals("FON2")) {          field[5] = "1";      } else if (field[5].equals("FON3")) {          field[5] = "2";      } else if (field[5].equals("Durchwahl")){      	field[5] = "3";      } else if (field[5].equals("ISDN")) {          field[5] = "4";      } else if (field[5].equals("DATA")){      	field[5] = "36";      }	    	    //Parse the SIP Provider and save it correctly	    if (field[4].startsWith("Internet: ")) {          Enumeration en = jfritz.getSIPProviderTableModel()                  .getProviderList().elements();          while (en.hasMoreElements()) {              SipProvider sipProvider = (SipProvider) en                      .nextElement();              if (sipProvider.getNumber().equals(field[4].substring(10))) {                  field[4] = "SIP" + sipProvider.getProviderID();                  break;              }          }      }	    	    //Phone number	    if(!field[3].equals("")){	      number = new PhoneNumber(field[3]);	      number.setCallByCall(field[10]);	    }else	      number = null;	    	    //now make the call object	    //TODO: change the order of the Call constructor to fit 	    //the oder of the csv export function or vice versa!!!	    call = new Call(jfritz, calltype, calldate, number, field[5], field[4], 	        Integer.parseInt(field[6]));	    	    //TODO: perhaps split export function into two functions	    //exportCallListCSV() and exportPhoneBookCSV()	    //the few entries in the current export format are not complete	    //enough to reconstruct the phonebook correctly	    call.setComment(field[11]);	    return call;	  }