Skip to content

Commit

Permalink
Added readonly optimizations
Browse files Browse the repository at this point in the history
  • Loading branch information
cjmalloy committed Aug 9, 2022
1 parent 6239836 commit 0ac10f3
Show file tree
Hide file tree
Showing 7 changed files with 20 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/main/java/jasper/service/ExtService.java
Original file line number Diff line number Diff line change
Expand Up @@ -63,12 +63,14 @@ public void create(Ext ext) {
extRepository.save(ext);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadTag(#tag)")
public Ext get(String tag) {
return extRepository.findOneByQualifiedTag(tag)
.orElseThrow(() -> new NotFoundException("Ext " + tag));
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadQuery(#filter)")
public Page<Ext> page(TagFilter filter, Pageable pageable) {
return extRepository
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/jasper/service/FeedService.java
Original file line number Diff line number Diff line change
Expand Up @@ -54,17 +54,20 @@ public void create(Feed feed) {
feedRepository.save(feed);
}

@Transactional(readOnly = true)
@PostAuthorize("@auth.canReadRef(returnObject)")
public FeedDto get(String url, String origin) {
var result = feedRepository.findOneByUrlAndOrigin(url, origin)
.orElseThrow(() -> new NotFoundException("Feed " + origin + " " + url));
return mapper.domainToDto(result);
}

@Transactional(readOnly = true)
public boolean exists(String url, String origin) {
return feedRepository.existsByUrlAndOrigin(url, origin);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadQuery(#filter)")
public Page<FeedDto> page(RefFilter filter, Pageable pageable) {
return feedRepository
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/jasper/service/OriginService.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,19 +39,22 @@ public void create(Origin origin) {
originRepository.save(origin);
}

@Transactional(readOnly = true)
@PreAuthorize("hasRole('ADMIN')")
public Origin get(String origin) {
return originRepository.findById(origin)
.orElseThrow(() -> new NotFoundException(origin));
}

@Transactional(readOnly = true)
@PreAuthorize("hasRole('ADMIN')")
public Page<Origin> page(OriginFilter filter, Pageable pageable) {
return originRepository
.findAll(filter.spec(),
pageable);
}

@Transactional(readOnly = true)
public Page<OriginNameDto> pageNames(OriginFilter filter, Pageable pageable) {
return originRepository
.findAll(filter.spec(),
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/jasper/service/PluginService.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,20 @@ public void create(Plugin plugin) {
pluginRepository.save(plugin);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadTag(#tag)")
public Plugin get(String tag) {
return pluginRepository.findOneByQualifiedTag(tag)
.orElseThrow(() -> new NotFoundException("Plugin " + tag));
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadTag(#tag)")
public boolean exists(String tag) {
return pluginRepository.existsByQualifiedTag(tag);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadQuery(#filter)")
public Page<Plugin> page(TagFilter filter, Pageable pageable) {
return pluginRepository
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/jasper/service/RefService.java
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ public void create(Ref ref) {
ingest.ingest(ref);
}

@Transactional(readOnly = true)
@PostAuthorize("@auth.canReadRef(returnObject)")
public RefDto get(String url, String origin) {
var result = refRepository.findOneByUrlAndOrigin(url, origin)
Expand All @@ -67,10 +68,12 @@ public RefDto get(String url, String origin) {
return mapper.domainToDto(result);
}

@Transactional(readOnly = true)
public boolean exists(String url, String origin) {
return refRepository.existsByUrlAndOrigin(url, origin);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadQuery(#filter)")
public Page<RefDto> page(RefFilter filter, Pageable pageable) {
return refRepository
Expand All @@ -81,6 +84,7 @@ public Page<RefDto> page(RefFilter filter, Pageable pageable) {
.map(mapper::domainToDto);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadQuery(#filter)")
public long count(RefFilter filter) {
return refRepository
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/jasper/service/TemplateService.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,20 @@ public void create(Template template) {
templateRepository.save(template);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadTag(#tag)")
public Template get(String tag) {
return templateRepository.findOneByQualifiedTag(tag)
.orElseThrow(() -> new NotFoundException("Template " + tag));
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadTag(#tag)")
public boolean exists(String tag) {
return templateRepository.existsByQualifiedTag(tag);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadQuery(#filter)")
public Page<Template> page(TemplateFilter filter, Pageable pageable) {
return templateRepository.findAll(filter.spec(), pageable);
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/jasper/service/UserService.java
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,15 @@ public void create(User user) {
userRepository.save(user);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadTag(#tag)")
public UserDto get(String tag) {
var result = userRepository.findOneByQualifiedTag(tag)
.orElseThrow(() -> new NotFoundException("User " + tag));
return mapper.domainToDto(result);
}

@Transactional(readOnly = true)
@PreAuthorize("@auth.canReadQuery(#filter)")
public Page<UserDto> page(TagFilter filter, Pageable pageable) {
return userRepository
Expand Down

0 comments on commit 0ac10f3

Please sign in to comment.