Skip to content

Commit

Permalink
SHIBUI-521(545): work in progress
Browse files Browse the repository at this point in the history
  • Loading branch information
dima767 committed Jun 25, 2018
1 parent 16c0a49 commit 3e6dd33
Show file tree
Hide file tree
Showing 6 changed files with 20 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ else if(filterWithUpdatedData instanceof RequiredValidUntilFilter) {

private static URI getResourceUriFor(MetadataResolver mr, String filterResourceId) {
return ServletUriComponentsBuilder
.fromCurrentServletMapping().path("/api/MetadataResolver/")
.fromCurrentServletMapping().path("/api/MetadataResolvers/")
.pathSegment(mr.getResourceId())
.pathSegment("Filters")
.pathSegment(filterResourceId)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,10 @@ public ResponseEntity<?> getOne(@PathVariable String resourceId) {
@PostMapping("/MetadataResolvers")
@Transactional
public ResponseEntity<?> create(@RequestBody MetadataResolver newResolver) {
//TODO disregard attached filters if any sent from UI?
//TODO: we are disregarding attached filters if any sent from UI below.
//Only deal with filters via filters endpoints?
newResolver.clearAllFilters();

MetadataResolver persistedResolver = resolverRepository.save(newResolver);
persistedResolver.updateVersion();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ public EntityAttributesFilter() {
public void intoTransientRepresentation() {
this.attributeRelease = getAttributeReleaseListFromAttributeList(this.attributes);
this.relyingPartyOverrides = getRelyingPartyOverridesRepresentationFromAttributeList(attributes);
setVersion(hashCode());
updateVersion();
}

@PrePersist
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,8 @@ public class MetadataFilter extends AbstractAuditable {

@Transient
private int version;

public void updateVersion() {
this.version = hashCode();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -68,4 +68,8 @@ public class MetadataResolver extends AbstractAuditable {
public void updateVersion() {
this.version = hashCode();
}

public void clearAllFilters() {
this.metadataFilters.clear();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ class MetadataFiltersControllerTests extends Specification {

def mockMvc

def mockFilterService = Mock(FilterService)
static BASE_URI = '/api/MetadataResolvers'

def setup() {
randomGenerator = new RandomGenerator()
Expand Down Expand Up @@ -93,7 +93,7 @@ class MetadataFiltersControllerTests extends Specification {
def expectedResponseContentType = APPLICATION_JSON_UTF8

when:
def result = mockMvc.perform(get('/api/MetadataResolver/foo/Filters'))
def result = mockMvc.perform(get("$BASE_URI/foo/Filters"))
println(mapper.writeValueAsString(expectedContent))

then:
Expand All @@ -114,7 +114,7 @@ class MetadataFiltersControllerTests extends Specification {
def expectedResponseContentType = APPLICATION_JSON_UTF8

when:
def result = mockMvc.perform(get("/api/MetadataResolver/foo/Filters/$expectedResourceId"))
def result = mockMvc.perform(get("$BASE_URI/foo/Filters/$expectedResourceId"))

then:
result.andExpect(expectedHttpResponseStatus)
Expand All @@ -139,7 +139,7 @@ class MetadataFiltersControllerTests extends Specification {
def expectedMetadataResolverUUID = metadataResolver.getResourceId()
def expectedFilterUUID = randomFilter.getResourceId()
def expectedResponseHeader = 'Location'
def expectedResponseHeaderValue = "/api/MetadataResolver/$expectedMetadataResolverUUID/Filters/$expectedFilterUUID"
def expectedResponseHeaderValue = "$BASE_URI/$expectedMetadataResolverUUID/Filters/$expectedFilterUUID"
def expectedJsonBody = mapper.writeValueAsString(randomFilter)
def postedJsonBody = expectedJsonBody - ~/"id":.*?,/ // remove the "id:<foo>,"
println postedJsonBody
Expand All @@ -148,7 +148,7 @@ class MetadataFiltersControllerTests extends Specification {

when:
def result = mockMvc.perform(
post('/api/MetadataResolver/foo/Filters')
post("$BASE_URI/foo/Filters")
.contentType(APPLICATION_JSON_UTF8)
.content(postedJsonBody))

Expand Down Expand Up @@ -182,7 +182,7 @@ class MetadataFiltersControllerTests extends Specification {

when:
def result = mockMvc.perform(
put("/api/MetadataResolver/foo/Filters/$filterUUID")
put("$BASE_URI/foo/Filters/$filterUUID")
.contentType(APPLICATION_JSON_UTF8)
.content(postedJsonBody))

Expand Down Expand Up @@ -212,7 +212,7 @@ class MetadataFiltersControllerTests extends Specification {

when:
def result = mockMvc.perform(
put("/api/MetadataResolver/foo/Filters/$filterUUID")
put("$BASE_URI/foo/Filters/$filterUUID")
.contentType(APPLICATION_JSON_UTF8)
.content(postedJsonBody))

Expand Down

0 comments on commit 3e6dd33

Please sign in to comment.