@Override
	public void importRead(String path) {
		InputStream is = null;
		int start;
		int end;
		float etx;
		float rate;
		float mtm;
		float ett;
		
		Tools.reevaluateConnections();
		
		try {
			is = new FileInputStream(path);			
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	    InputStreamReader isr = new InputStreamReader(is);
		Scanner scan = new Scanner(is);
		
		// skip the first lines
		String numNodes = scan.nextLine();
		while(numNodes != null && !numNodes.equals(separator)) {
			numNodes = scan.nextLine();
		}
		
		while(scan.hasNext()){
			String line = scan.nextLine();
			if(line == null) {
				throw new PositionFileException("The specified file contains not enough informations");	
			}
			
			try {
				String[] parts = line.split(" ");
				if(parts.length < 6) {
					throw new PositionFileException("Illegal line: expected six floats, separated by tab. Found \n" + line);	
				}
				start = Integer.parseInt(parts[0]);
				end = Integer.parseInt(parts[1]);
				etx = Float.parseFloat(parts[2]);
				rate = Float.parseFloat(parts[3]);
				mtm = Float.parseFloat(parts[4]);
				ett = Float.parseFloat(parts[5]);
				
				if( !insertValuesInEdge(start, end, etx, rate, mtm, ett) ) {
					throw new PositionFileException("Illegal line: not fond start or end nodes for insert edge values. \n" + line);
				}
				
			} catch(NumberFormatException e) {
				throw new PositionFileException("Illegal line: expected two ints, separated by comma. Found \n" + line);
			}
			
		}
	}