number = new PhoneNumber(field[3]);
number = new PhoneNumber(field[3], jfritz);
	public Call parseCallFritzboxNewCSV(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 != 7) {			if (field.length != 1)				Debug.err("Invalid CSV format, incorrect number fields!");			return null;		}		// Call type		if ((field[0].equals("1"))) {			calltype = new CallType("call_in");		} else if ((field[0].equals("2"))) {			calltype = new CallType("call_in_failed");		} else if ((field[0].equals("3"))) {			calltype = new CallType("call_out");		} else {			Debug.err("Invalid Call type in CSV entry!"); //$NON-NLS-1$			return null;		}		// Call date and time		if (field[1] != null) {			try {				calldate = new SimpleDateFormat("dd.MM.yy HH:mm").parse(field[1]); //$NON-NLS-1$			} catch (ParseException e) {				Debug.err("Invalid date format in csv entry!"); //$NON-NLS-1$				return null;			}		} else {			Debug.err("Invalid date format in csv entry!"); //$NON-NLS-1$			return null;		}		// Phone number		if (!field[3].equals(""))			number = new PhoneNumber(field[3]);		else			number = null;		// split the duration into two stings, hours:minutes		String[] time = field[6].split(":");		// make the call object		// change the port to fit the jfritz naming convention		if (field[4].equals("FON 1")) {			field[4] = "0";		} else if (field[4].equals("FON 2")) {			field[4] = "1";		} else if (field[4].equals("FON 3")) {			field[4] = "2";		} else if (field[4].equals("Durchwahl")) {			field[4] = "3";		} else if (field[4].equals("FON S0")) {			field[4] = "4";		} else if (field[4].equals("DATA S0")) {			field[4] = "36";		}		// Parse the SIP Provider and save it correctly		if (field[5].startsWith("Internet: ")) {			Enumeration en = jfritz.getSIPProviderTableModel()					.getProviderList().elements();			while (en.hasMoreElements()) {				SipProvider sipProvider = (SipProvider) en.nextElement();				if (sipProvider.getNumber().equals(field[5].substring(10))) {					field[5] = "SIP" + sipProvider.getProviderID();					break;				}			}		}		// make the call object and exit		call = new Call(jfritz, calltype, calldate, number, field[4], field[5],				Integer.parseInt(time[0]) * 3600 + Integer.parseInt(time[1])						* 60);		return call;	}