snapshot.setMavenProject(sonarProject);
snapshot.setVersion(mavenProject.getVersion());
manager.setFlushMode(FlushModeType.COMMIT);
manager.getTransaction().begin();
SnapshotGroup snapshotGroup;
try {
if (sonarProject.getParent() == null) {
snapshotGroup = new SnapshotGroup();
snapshotGroup.setCreatedAt(runDate);
snapshotGroup.setMavenProject(sonarProject);
manager.persist(snapshotGroup);
setCurrentSnapshotGroupId(snapshotGroup.getId());
} else {
Integer groupId = getCurrentSnapshotGroupId();
if (groupId != null) {
snapshotGroup = manager.find(SnapshotGroup.class, groupId);
if (snapshotGroup == null) {