docs: public void insert(Entity entity) {
          if (entity.getId() == null) {
              String id = dbSqlSessionFactory.getIdGenerator().getNextId();
              entity.setId(id);
          }
  
          Class<? extends Entity> clazz = entity.getClass();
          if (!insertedObjects.containsKey(clazz)) {
              insertedObjects.put(clazz,
                                  new LinkedHashMap<String, Entity>()); // order of insert is important, hence LinkedHashMap
          }
  
          insertedObjects.get(clazz).put(entity.getId(),
                                         entity);
          entityCache.put(entity,
                          false); // False -> entity is inserted, so always changed
          entity.setInserted(true);
      }