protected void executeUpdate()

in common/src/main/java/com/youtrackdb/ldbc/common/queries/Update1AddPerson.java [18:54]


    protected void executeUpdate(LdbcUpdate1AddPerson operation, GraphTraversalSource g) {
        var traversal = g.addV(PERSON)
                        .property(ID, operation.getPersonId())
                        .property(FIRST_NAME, operation.getPersonFirstName())
                        .property(LAST_NAME, operation.getPersonLastName())
                        .property(GENDER, operation.getGender())
                        .property(BIRTHDAY, operation.getBirthday())
                        .property(CREATION_DATE, operation.getCreationDate())
                        .property(LOCATION_IP, operation.getLocationIp())
                        .property(BROWSER_USED, operation.getBrowserUsed())
                        .property(LANGUAGES, operation.getLanguages())
                        .property(EMAILS, operation.getEmails())
                        .as("person")
                        .addE(IS_LOCATED_IN)
                        .from("person")
                        .to(V().has(PLACE, ID, operation.getCityId()));

                for (Long tagId : operation.getTagIds()) {
                    traversal.addE(HAS_INTEREST).from("person").to(V().has(TAG, ID, tagId));
                }

                for (LdbcUpdate1AddPerson.Organization org : operation.getStudyAt()) {
                    traversal.addE(STUDY_AT)
                            .from("person")
                            .to(V().has(UNIVERSITY, ID, org.getOrganizationId()))
                            .property(CLASS_YEAR, org.getYear());
                }

                for (LdbcUpdate1AddPerson.Organization org : operation.getWorkAt()) {
                    traversal.addE(WORK_AT)
                            .from("person")
                            .to(V().has(COMPANY, ID, org.getOrganizationId()))
                            .property(WORK_FROM, org.getYear());
                }

        traversal.iterate();
    }