@Override public String getScalarString(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return ((String) f.parse(line)).trim(); }
@Override public long convertScalarLong(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return ((Number) f.parse(line)).longValue(); }
@Override public double convertScalarDouble(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return ((Number) f.parse(line)).doubleValue(); }
@Override public ArraySequence getArraySequence(StructureMembers.Member m) { Long stnId = (Long) stnIdFromData.parse(line); // extract the station id StationIndex si = map.get(stnId); // find its index return new ArraySequence(stnDataMembers, new StnDataIter(stnDataMembers, si), -1); } }
@Override public byte getScalarByte(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return (Byte) f.parse(line); }
@Override public long convertScalarLong(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return ((Number) f.parse(line)).longValue(); }
@Override public double convertScalarDouble(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return ((Number) f.parse(line)).doubleValue(); }
protected Object parse(String line, int start, int end) throws NumberFormatException { Object org = from.parse(line); return transform.derive(org); } }
@Override public char getScalarChar(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); String result = (String) f.parse(line); return result.charAt(0); }
@Override public int getScalarInt(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return (Integer) f.parse(line); }
@Override public int convertScalarInt(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return ((Number) f.parse(line)).intValue(); }
@Override public short getScalarShort(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return (Short) f.parse(line); }
@Override public byte[] getJavaArrayByte(StructureMembers.Member m) { int n = m.getSize(); byte[] result = new byte[n]; TableParser.Field f = (TableParser.Field) m.getDataObject(); for (int i=0; i<n; i++) { String s = (String) f.parse(line, i*8); result[i] = (byte) s.charAt(0); } return result; }
@Override public int getScalarInt(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return (Integer) f.parse(line); }
@Override public byte[] getJavaArrayByte(StructureMembers.Member m) { int n = m.getSize(); byte[] result = new byte[n]; TableParser.Field f = (TableParser.Field) m.getDataObject(); for (int i=0; i<n; i++) { String s = (String) f.parse(line, i*8); result[i] = (s == null) ? 0 : (byte) s.charAt(0); } return result; }
protected Object parse(String line, int start, int end) throws NumberFormatException { Object org = from.parse(line); return transform.derive(org); } }
@Override public double getScalarDouble(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return (Double) f.parse(line); }
@Override public float[] getJavaArrayFloat(StructureMembers.Member m) { int n = m.getSize(); float[] result = new float[n]; TableParser.Field f = (TableParser.Field) m.getDataObject(); for (int i=0; i<n; i++) result[i] = (Float) f.parse(line, i*8); return result; }
@Override public double getScalarDouble(StructureMembers.Member m) { TableParser.Field f = (TableParser.Field) m.getDataObject(); return (Double) f.parse(line); }