Skip to content

Commit

Permalink
SHIBUI-645: WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
dima767 committed Jul 25, 2018
1 parent b61cd31 commit 975061f
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import edu.internet2.tier.shibboleth.admin.ui.domain.resolvers.MetadataResolverValidationService;
import edu.internet2.tier.shibboleth.admin.ui.repository.MetadataResolverRepository;
import edu.internet2.tier.shibboleth.admin.ui.service.MetadataResolverService;
import edu.internet2.tier.shibboleth.admin.ui.service.MetadataResolversPositionOrderContainerService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
Expand All @@ -30,6 +31,7 @@
import java.io.IOException;
import java.io.StringWriter;
import java.net.URI;
import java.util.List;

import static edu.internet2.tier.shibboleth.admin.ui.domain.resolvers.MetadataResolverValidator.ValidationResult;

Expand All @@ -47,6 +49,9 @@ public class MetadataResolversController {
@Autowired
MetadataResolverService metadataResolverService;

@Autowired
MetadataResolversPositionOrderContainerService positionOrderContainerService;

@ExceptionHandler({InvalidTypeIdException.class, IOException.class, HttpMessageNotReadableException.class})
public ResponseEntity<?> unableToParseJson(Exception ex) {
return ResponseEntity.badRequest().body(new ErrorResponse(HttpStatus.BAD_REQUEST.toString(), ex.getMessage()));
Expand All @@ -55,7 +60,7 @@ public ResponseEntity<?> unableToParseJson(Exception ex) {
@GetMapping("/MetadataResolvers")
@Transactional(readOnly = true)
public ResponseEntity<?> getAll() {
Iterable<MetadataResolver> resolvers = resolverRepository.findAll();
List<MetadataResolver> resolvers = positionOrderContainerService.getAllMetadataResolversInDefinedOrderOrUnordered();
resolvers.forEach(MetadataResolver::updateVersion);
return ResponseEntity.ok(resolvers);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@


import edu.internet2.tier.shibboleth.admin.ui.domain.resolvers.MetadataResolversPositionOrderContainer;
import edu.internet2.tier.shibboleth.admin.ui.service.MetadataResolversPositionOrderContainerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
Expand All @@ -15,8 +17,12 @@
@RequestMapping("/api/MetadataResolversPositionOrder")
public class MetadataResolversPositionOrderController {

@Autowired
MetadataResolversPositionOrderContainerService positionOrderContainerService;

@PostMapping
public ResponseEntity<?> createOrUpdate(@RequestBody MetadataResolversPositionOrderContainer metadataResolversPositionOrderContainer) {
return ResponseEntity.ok().build();
this.positionOrderContainerService.addOrUpdatePositionOrderContainer(metadataResolversPositionOrderContainer);
return ResponseEntity.noContent().build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import edu.internet2.tier.shibboleth.admin.ui.repository.MetadataResolversPositionOrderContainerRepository;
import org.springframework.transaction.annotation.Transactional;

import java.util.Iterator;
import java.util.List;
import java.util.Optional;

Expand Down Expand Up @@ -33,7 +34,7 @@ public DefaultMetadataResolversPositionOrderContainerService(MetadataResolversPo
@Override
@Transactional
public void addOrUpdatePositionOrderContainer(MetadataResolversPositionOrderContainer metadataResolversPositionOrderContainer) {
MetadataResolversPositionOrderContainer existingPositionOrder = positionOrderContainerRepository.findAll().iterator().next();
MetadataResolversPositionOrderContainer existingPositionOrder = getPositionOrderContainerIfExists().orElse(null);
if (existingPositionOrder != null) {
existingPositionOrder.setResourceIds(metadataResolversPositionOrderContainer.getResourceIds());
positionOrderContainerRepository.save(existingPositionOrder);
Expand All @@ -57,8 +58,7 @@ public List<MetadataResolver> getAllMetadataResolversInDefinedOrderOrUnordered()
}

private Optional<MetadataResolversPositionOrderContainer> getPositionOrderContainerIfExists() {
return positionOrderContainerRepository.findAll().iterator().hasNext()
? Optional.of(positionOrderContainerRepository.findAll().iterator().next())
: Optional.empty();
Iterator<MetadataResolversPositionOrderContainer> iter = positionOrderContainerRepository.findAll().iterator();
return iter.hasNext() ? Optional.of(iter.next()) : Optional.empty();
}
}

0 comments on commit 975061f

Please sign in to comment.