public LineItemTuple parse()

in wayang-benchmark/src/main/java/org/apache/wayang/apps/tpch/data/LineItemTuple.java [154:236]


        public LineItemTuple parse(String line) {
            LineItemTuple tuple = new LineItemTuple();

            int startPos = 0;
            int endPos = line.indexOf(';', startPos);
            tuple.L_ORDERKEY = Long.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_PARTKEY = Long.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_SUPPKEY = Long.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_LINENUMBER = Integer.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_QUANTITY = Double.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_EXTENDEDPRICE = Double.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_DISCOUNT = Double.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_TAX = Double.valueOf(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_RETURNFLAG = line.charAt(startPos + 1);

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_LINESTATUS = line.charAt(startPos + 1);

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_SHIPDATE = parseDate(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_COMMITDATE = parseDate(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = line.indexOf(';', startPos);
            tuple.L_RECEIPTDATE = parseDate(line.substring(startPos + 1, endPos - 1));

            startPos = endPos + 1;
            endPos = startPos - 1;
            do {
                endPos++;
                endPos = line.indexOf(';', endPos);
            } while (line.charAt(endPos - 1) != '"' || line.charAt(endPos + 1) != '"');
            tuple.L_SHIPINSTRUCT = line.substring(startPos + 1, endPos - 1);

            startPos = endPos + 1;
            endPos = startPos - 1;
            do {
                endPos++;
                endPos = line.indexOf(';', endPos);
            } while (line.charAt(endPos - 1) != '"' || line.charAt(endPos + 1) != '"');
            tuple.L_SHIPMODE = line.substring(startPos + 1, endPos - 1);

            startPos = endPos + 1;
            endPos = startPos - 1;
            do {
                endPos++;
                endPos = line.indexOf(';', endPos);
            } while (endPos >= 0 && (line.charAt(endPos - 1) != '"' || (endPos < line.length() - 1 && line.charAt(endPos + 1) != '"')));
            assert endPos < 0 : String.format("Parsing error: unexpected ';' at %d. Input: %s", endPos, line);
            endPos = line.length();
            tuple.L_COMMENT = line.substring(startPos + 1, endPos - 1);

            return tuple;
        }