protected LdbcQuery1Result toResult()

in common/src/main/java/com/youtrackdb/ldbc/common/queries/ComplexReadQuery1.java [74:123]


    protected LdbcQuery1Result toResult(Map<String, Object> record) {
        long friendId = getLong(record, ID);
        String friendLastName = getString(record, LAST_NAME);
        int distanceFromPerson = getInt(record, "distance");
        long friendBirthday = getDateAsMillis(record, BIRTHDAY);
        long friendCreationDate = getDateAsMillis(record, CREATION_DATE);
        String friendGender = getString(record, GENDER);
        String friendBrowserUsed = getString(record, BROWSER_USED);
        String friendLocationIp = getString(record, LOCATION_IP);

        List<String> friendEmails = (List<String>) record.getOrDefault("emails", new ArrayList<>());
        List<String> friendLanguages = (List<String>) record.getOrDefault("languages", new ArrayList<>());
        String friendCityName = getString(record, "cityName");

        List<Map<String, Object>> univMaps = (List<Map<String, Object>>) record.getOrDefault("universities", new ArrayList<>());
        List<LdbcQuery1Result.Organization> universities = new ArrayList<>();
        for (Map<String, Object> org : univMaps) {
            universities.add(new LdbcQuery1Result.Organization(
                    (String) org.get(NAME),
                    ((Number) org.get(CLASS_YEAR)).intValue(),
                    (String) org.get("cityName")
            ));
        }

        List<Map<String, Object>> compMaps = (List<Map<String, Object>>) record.getOrDefault("companies", new ArrayList<>());
        List<LdbcQuery1Result.Organization> companies = new ArrayList<>();
        for (Map<String, Object> org : compMaps) {
            companies.add(new LdbcQuery1Result.Organization(
                    (String) org.get(NAME),
                    ((Number) org.get("year")).intValue(),
                    (String) org.get("countryName")
            ));
        }

        return new LdbcQuery1Result(
                friendId,
                friendLastName,
                distanceFromPerson,
                friendBirthday,
                friendCreationDate,
                friendGender,
                friendBrowserUsed,
                friendLocationIp,
                friendEmails,
                friendLanguages,
                friendCityName,
                universities,
                companies
        );
    }