private Duplication createDuplication(Map<String, ComponentDto> componentsByKey, @Nullable String branch, @Nullable String pullRequest, String from,
String size, String componentDbKey, DbSession session) {
String componentKey = convertToKey(componentDbKey);
ComponentDto component;
if (componentsByKey.containsKey(componentKey)) {
component = componentsByKey.get(componentKey);
} else {
component = loadComponent(session, componentKey, branch, pullRequest);
componentsByKey.put(componentKey, component);
}
if (component != null) {
return Duplication.newComponent(component, Integer.valueOf(from), Integer.valueOf(size));
} else {
return Duplication.newRemovedComponent(componentKey, Integer.valueOf(from), Integer.valueOf(size));
}
}