Optimize mindmap list query.
This commit is contained in:
@@ -32,6 +32,7 @@ import java.io.IOException;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.util.Calendar;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
|
||||
|
||||
@@ -68,9 +69,11 @@ public class MindmapServiceImpl
|
||||
if ((map.isPublic() && role == CollaborationRole.VIEWER) || isAdmin(user)) {
|
||||
result = true;
|
||||
} else if (user != null) {
|
||||
final Collaboration collaboration = map.findCollaboration(user);
|
||||
if (collaboration != null) {
|
||||
result = collaboration.hasPermissions(role);
|
||||
final Optional<Collaboration> collaboration = map.findCollaboration(user);
|
||||
if (collaboration .isPresent()) {
|
||||
result = collaboration
|
||||
.get()
|
||||
.hasPermissions(role);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -87,16 +90,6 @@ public class MindmapServiceImpl
|
||||
mindmapManager.purgeHistory(mapId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void linkLabel(@NotNull Mindmap mindmap, @NotNull final Label label) {
|
||||
mindmap.addLabel(label);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeLabel(@NotNull Mindmap mindmap, @NotNull Label label) {
|
||||
mindmap.removeLabel(label);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Mindmap getMindmapByTitle(String title, User user) {
|
||||
return mindmapManager.getMindmapByTitle(title, user);
|
||||
@@ -108,6 +101,12 @@ public class MindmapServiceImpl
|
||||
return mindmapManager.getMindmapById(id);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public List<Mindmap> findMindmapsByUser(@NotNull User user) {
|
||||
return mindmapManager.findMindmapByUser(user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Collaboration> findCollaborations(@NotNull User user) {
|
||||
return mindmapManager.findCollaboration(user.getId());
|
||||
@@ -160,9 +159,9 @@ public class MindmapServiceImpl
|
||||
if (mindmap.getCreator().identityEquality(user) || isAdmin(user)) {
|
||||
mindmapManager.removeMindmap(mindmap);
|
||||
} else {
|
||||
final Collaboration collaboration = mindmap.findCollaboration(user);
|
||||
if (collaboration != null) {
|
||||
this.removeCollaboration(mindmap, collaboration);
|
||||
final Optional<Collaboration> collaboration = mindmap.findCollaboration(user);
|
||||
if (collaboration.isPresent()) {
|
||||
this.removeCollaboration(mindmap, collaboration.get());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user