Extended controller and created test

This commit is contained in:
2020-07-10 22:52:51 +02:00
parent 75ad80e760
commit 6774035fcd
3 changed files with 532 additions and 9 deletions

View File

@ -1,8 +1,6 @@
package de.twomartens.oparlservice.control;
import de.twomartens.oparlservice.configs.OParlServiceProperties;
import de.twomartens.oparlservice.entity.Body;
import de.twomartens.oparlservice.entity.Organization;
import de.twomartens.oparlservice.entity.*;
import de.twomartens.oparlservice.entity.System;
import de.twomartens.oparlservice.service.OParlService;
import io.swagger.v3.oas.annotations.Operation;
@ -13,7 +11,6 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
import java.util.List;
@Slf4j
@ -50,13 +47,113 @@ public class OParlController {
return service.getBody(id);
}
@GetMapping("/term/{id}")
@Operation(summary = "information about legislative term", description = "returns information about the requested legislative term")
public LegislativeTerm legislativeTerm(
@PathVariable
@Parameter(description = "legislative term ID", example = "21")
String id) {
log.info("method invoked /v1.1/term/{}", id);
return service.getLegislativeTerm(id);
}
@GetMapping("/body/{id}/organizations")
@Operation(summary = "List of all organizations in body", description = "returns a list of all organizations in requested body")
public List<Organization> organizations(
public List<Organization> organizationsInBody(
@PathVariable
@Parameter(description = "body ID", example = "0")
String id) {
log.info("invoked method /v1.1/body/{}/organizations", id);
return Collections.emptyList();
return service.getOrganizationsInBody(id);
}
@GetMapping("/organization/{id}")
@Operation(summary = "information about organization", description = "returns the requested organization")
public Organization organization(
@PathVariable
@Parameter(description = "organization ID", example = "0")
String id) {
log.info("invoked method /v1.1/organization/{}", id);
return service.getOrganization(id);
}
@GetMapping("/body/{id}/persons")
@Operation(summary = "List of all persons in body", description = "returns a list of all persons in requested body")
public List<Person> persons(
@PathVariable
@Parameter(description = "body ID", example = "0")
String id) {
log.info("invoked method /v1.1/body/{}/persons", id);
return service.getPersonsInBody(id);
}
@GetMapping("/person/{id}")
@Operation(summary = "information about person", description = "returns the requested person")
public Person person(
@PathVariable
@Parameter(description = "person ID", example = "0")
String id) {
log.info("invoked method /v1.1/person/{}", id);
return service.getPerson(id);
}
@GetMapping("/body/{id}/memberships")
@Operation(summary = "List of all memberships in body", description = "returns a list of all memberships in requested body")
public List<Membership> membershipsInBody(
@PathVariable
@Parameter(description = "body ID", example = "0")
String id) {
log.info("invoked method /v1.1/body/{}/memberships", id);
return service.getMembershipsInBody(id);
}
@GetMapping("/organization/{id}/memberships")
@Operation(summary = "List of all memberships in organization", description = "returns a list of all memberships in requested organization")
public List<Membership> membershipsInOrganization(
@PathVariable
@Parameter(description = "organization ID", example = "0")
String id) {
log.info("invoked method /v1.1/organization/{}/memberships", id);
return service.getMembershipsInOrganization(id);
}
@GetMapping("/membership/{id}")
@Operation(summary = "information about membership", description = "returns the requested membership")
public Membership membership(
@PathVariable
@Parameter(description = "membership ID", example = "0")
String id) {
log.info("invoked method /v1.1/membership/{}", id);
return service.getMembership(id);
}
@GetMapping("/body/{id}/meetings")
@Operation(summary = "List of all meetings in body", description = "returns a list of all meetings in requested body")
public List<Meeting> meetingsInBody(
@PathVariable
@Parameter(description = "body ID", example = "0")
String id) {
log.info("invoked method /v1.1/body/{}/meetings", id);
return service.getMeetingsInBody(id);
}
@GetMapping("/organization/{id}/meetings")
@Operation(summary = "List of all meetings in organization", description = "returns a list of all meetings in requested organization")
public List<Meeting> meetingsInOrganization(
@PathVariable
@Parameter(description = "organization ID", example = "0")
String id) {
log.info("invoked method /v1.1/organization/{}/meetings", id);
return service.getMeetingsInOrganization(id);
}
@GetMapping("/meeting/{id}")
@Operation(summary = "information about meeting", description = "returns the requested meeting")
public Meeting meeting(
@PathVariable
@Parameter(description = "meeting ID", example = "0")
String id) {
log.info("invoked method /v1.1/meeting/{}", id);
return service.getMeeting(id);
}
}

View File

@ -1,19 +1,19 @@
package de.twomartens.oparlservice.service;
import de.twomartens.oparlservice.configs.OParlServiceProperties;
import de.twomartens.oparlservice.entity.Body;
import de.twomartens.oparlservice.entity.LegislativeTerm;
import de.twomartens.oparlservice.entity.*;
import de.twomartens.oparlservice.entity.System;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.time.ZonedDateTime;
import java.util.Collections;
import java.util.List;
@Service
public class OParlService {
private OParlServiceProperties properties;
private final OParlServiceProperties properties;
private final Body exampleBody;
private final LegislativeTerm exampleTerm;
private final System system;
@ -81,6 +81,50 @@ public class OParlService {
return exampleBody;
}
public LegislativeTerm getLegislativeTerm(String id) {
return exampleTerm;
}
public Meeting getMeeting(String id) {
return null;
}
public List<Meeting> getMeetingsInBody(String bodyID) {
return Collections.emptyList();
}
public List<Meeting> getMeetingsInOrganization(String organizationID) {
return Collections.emptyList();
}
public Membership getMembership(String id) {
return null;
}
public List<Membership> getMembershipsInBody(String bodyID) {
return Collections.emptyList();
}
public List<Membership> getMembershipsInOrganization(String organizationID) {
return Collections.emptyList();
}
public List<Organization> getOrganizationsInBody(String bodyID) {
return Collections.emptyList();
}
public Organization getOrganization(String id) {
return null;
}
public List<Person> getPersonsInBody(String bodyID) {
return Collections.emptyList();
}
public Person getPerson(String id) {
return null;
}
public System getSystem() {
return system;
}