Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
93 commits
Select commit Hold shift + click to select a range
7309c14
Merge pull request #7 from Breeding-Insight/release/0.7
nickpalladino Dec 14, 2022
0f40c8b
Update pom.xml
timparsons Dec 15, 2022
7383fac
Merge pull request #10 from Breeding-Insight/bug/BI-1781
nickpalladino Jun 27, 2023
7f64183
Merge branch 'plantbreeding/brapi-Java-TestServer:brapi-server-v2' in…
timparsons Jul 6, 2023
c23c0a9
[BI-1771] - performance experiments
mlm483 Aug 1, 2023
9a35d3f
[BI-1771] - added germplasm-related indexes
mlm483 Aug 3, 2023
e1f6cf9
[BI-1771] - reverted index annotation
mlm483 Aug 3, 2023
bf0cc00
[BI-1771] - reverted whitespace changes
mlm483 Aug 3, 2023
fb08a50
[BI-1771] - made create_indexes.sql idempotent
mlm483 Aug 14, 2023
deb9572
[BI-1771] - set hibernate.ddl-auto to create-only
mlm483 Aug 15, 2023
43c67e6
Merge pull request #11 from Breeding-Insight/bug/BI-1771
mlm483 Aug 18, 2023
5a29d77
Merging release v0.8
timparsons Aug 22, 2023
7fce804
[BI-1909] Exploring converting *ToOne relationships to lazy loading a…
timparsons Sep 13, 2023
441814a
[BI-1909] NPE fix, converting sysouts to use Logger
timparsons Sep 15, 2023
0f9ec46
[BI-1909] Updating GermplasmService to eagerly fetch related date for…
timparsons Sep 19, 2023
57da450
[BI-1909] suggested changes
timparsons Sep 22, 2023
504e1de
Merge pull request #14 from Breeding-Insight/bug/BI-1909
timparsons Sep 25, 2023
8f4d7b1
Merge branch 'release/0.8.1' into develop
timparsons Sep 25, 2023
0e343c6
Merge pull request #15 from plantbreeding/brapi-server-v2
mlm483 Oct 23, 2023
fc92574
[BI-1945] - saving work in progress
mlm483 Oct 24, 2023
9bc8ade
[BI-1945] - store additionalInfo on primary entities as JSONB
mlm483 Oct 25, 2023
65f061d
[BI-1945] - optimized imports
mlm483 Oct 25, 2023
4789ff9
[BI-1945] - updated template, readme
mlm483 Oct 26, 2023
fdcca4d
[BI-1945] - cleaned up SQL dummy data migrations
mlm483 Oct 26, 2023
3e2e3a0
[BI-1945] - updated template
mlm483 Oct 26, 2023
0690839
[BI-1945] - removed unused class
mlm483 Oct 26, 2023
ed01390
[BI-1945] - renamed method
mlm483 Oct 26, 2023
aa0f1a5
[BI-1945] - handled null case
mlm483 Oct 27, 2023
8bd3c32
[BI-1945] - added stringtype=unspecified to template
mlm483 Oct 27, 2023
03eedc4
[BI-1945] - removed debug log
mlm483 Nov 6, 2023
a1f546b
[BI-1945] - optimized imports
mlm483 Nov 6, 2023
b4ac393
[BI-1945] - removed additionalInfo joins
mlm483 Nov 6, 2023
0f0c6d2
[BI-1945] - updated README.md
mlm483 Nov 6, 2023
7efbb52
Merge pull request #18 from Breeding-Insight/release/0.8.1
mlm483 Nov 8, 2023
404343a
Create pull.yml
timparsons Nov 9, 2023
73923fa
Merge pull request #17 from Breeding-Insight/feature/BI-1945
mlm483 Nov 13, 2023
c537709
[BI-1945] - added ON DELETE CASCADE to xref linking tables
mlm483 Nov 14, 2023
57848e3
Merge pull request #20 from Breeding-Insight/feature/BI-1945-fix
mlm483 Nov 21, 2023
65bd99a
[BI-2040] The fetchScaleValidValueCategories() method was causing the…
davedrp Feb 5, 2024
4447807
[BI-2040] removed all calls to fetchXXXXX(page) and the methods thems…
davedrp Feb 5, 2024
22b5fdd
[BI-2040] removed unused import-statements from ObservationVariableSe…
davedrp Feb 5, 2024
1b6b9fb
[BI-2051] - batched inserts for efficiency
mlm483 Feb 6, 2024
f38b21e
[BI-2051] - removed comment
mlm483 Feb 8, 2024
28c33bc
Merge pull request #22 from Breeding-Insight/bug/BI-2051
mlm483 Feb 12, 2024
ed22fdd
Merge pull request #21 from Breeding-Insight/bug/BI-2040
davedrp Feb 12, 2024
0c5b914
Merge pull request #23 from plantbreeding/brapi-server-v2
mlm483 Feb 22, 2024
60d2cd2
[BI-2078] - made performance improvements (thanks BrapiCoordinatorSelby)
mlm483 Mar 11, 2024
a3e3835
Merge pull request #26 from Breeding-Insight/release/0.9
mlm483 Mar 12, 2024
dd070f7
Merge pull request #25 from Breeding-Insight/bug/BI-2078
mlm483 Mar 19, 2024
d295cfa
Merge pull request #27 from Breeding-Insight/bug/BI-2078
mlm483 Mar 19, 2024
e6a3d48
Merge pull request #28 from Breeding-Insight/release/0.9
mlm483 Apr 10, 2024
08a3b9d
Merge pull request #24 from plantbreeding/brapi-server-v2
mlm483 Apr 12, 2024
24dbf87
Merge pull request #29 from Breeding-Insight/release/0.9
mlm483 Apr 15, 2024
4452e8a
Filter out pedigree nodes with null germplasm
nickpalladino Apr 17, 2024
aaf7fbd
Updated comment
nickpalladino Apr 19, 2024
f9c8ca8
Merge pull request #30 from Breeding-Insight/helium-integration
nickpalladino May 2, 2024
b412589
Merge pull request #32 from Breeding-Insight/release/0.9.1
mlm483 Jun 5, 2024
6e53be5
[BI-2109] - added migration for datasets
mlm483 Jun 28, 2024
8e06edf
[BI-2109] - made migration safer
mlm483 Jul 2, 2024
31d1129
Merge pull request #33 from Breeding-Insight/feature/BI-2109
mlm483 Jul 10, 2024
4da5d94
Merge pull request #31 from plantbreeding/brapi-server-v2
pull[bot] Aug 28, 2024
3377138
[BI-2304] - added migrations for list position
mlm483 Sep 18, 2024
ea85b8c
[BI-2304] - fixed migration
mlm483 Sep 19, 2024
0c6952b
[BI-2304] - preserve list order without changing API
mlm483 Sep 20, 2024
06b8cac
[BI-2304] - used zero-indexing in migration
mlm483 Sep 20, 2024
76665ab
[BI-2304] - changes based on review
mlm483 Oct 2, 2024
86153e9
Merge pull request #37 from Breeding-Insight/feature/BI-2304
mlm483 Oct 7, 2024
8ec5466
Merge pull request #39 from Breeding-Insight/release/1.0
mlm483 Nov 8, 2024
e9e8acd
create batch entity and controller endpoints
dmeidlin Oct 21, 2024
492aabd
json deserialize searchrequest sub-types
dmeidlin Oct 22, 2024
46134a2
return batchDbID in POST batches response results
dmeidlin Oct 23, 2024
f2927aa
refactor
dmeidlin Oct 24, 2024
c33a8b6
add constraint to cascade on delete for list_item
dmeidlin Oct 25, 2024
b5f09ec
add soft_deleted column to list tables
dmeidlin Oct 26, 2024
a226dee
modify list repository to include clause softDelete=falsee
dmeidlin Oct 26, 2024
5f26eec
use where clause and transactional annotations
dmeidlin Oct 27, 2024
0aa634a
soft-delete batch lists
dmeidlin Oct 28, 2024
04dfa6c
add hard delete of single trial
dmeidlin Oct 28, 2024
fe1ae79
create hard-delete endpoint for single sample
dmeidlin Oct 29, 2024
f3283f4
cascade delete for trial and sample
dmeidlin Oct 29, 2024
aa7386e
add soft_delete columns to trial and sample related tables
dmeidlin Oct 29, 2024
008e033
create sample service soft-delete method
dmeidlin Oct 29, 2024
80838e1
add soft-delete method to trial service
dmeidlin Oct 29, 2024
6aab414
create Trial and Sample components
dmeidlin Oct 29, 2024
e94040c
optimize imports
dmeidlin Nov 5, 2024
5d915ba
respond with 204 for successful delete
dmeidlin Dec 3, 2024
1d4a768
return entity dbids in response for POST deleteBatch
dmeidlin Dec 3, 2024
a07aa4e
add batchDeleteDbId query param to GET endpoints for lists, trials, s…
dmeidlin Dec 3, 2024
8f33016
create new exception class for wrong batch delete type
dmeidlin Dec 3, 2024
f251236
delete batch entity when deleting batch contents
dmeidlin Dec 4, 2024
e1761f8
add cascade delete constraints for study foreign keys
dmeidlin Dec 9, 2024
b2a6ee3
rename batch to batch delete
dmeidlin Dec 13, 2024
dbe8cac
Merge pull request #38 from Breeding-Insight/hackathon/delete-germplasm
dmeidlin Dec 13, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .github/pull.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
version: "1"
rules:
- base: develop
upstream: plantbreeding:brapi-server-v2
mergeMethod: merge
assignees:
- nickpalladino
- mlm483
- dmeidlin
- davedrp
label: "upstream-merge"
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,11 @@ Use [/calls](https://test-server.brapi.org/brapi/v1/call) (V1) or [/serverinfo](

## DataBase

The database is created automatically at run time thanks to Java Spring Data and Hibernate. All dummy data is loaded from the SQL files in the `/resources/sql` directory. Additional SQL files may be added, but they must be explicitly listed in the `application.properties` file to be loaded automatically.
The database is created automatically at run time by [flyway](https://documentation.red-gate.com/flyway).
SQL-based migrations under `src/main/resources/db/migration` or `src/main/resources/db/sql`, and Java-based migrations under `src/main/java/org/brapi/test/BrAPITestServer/db/migration` will be run.
The `src/main/resources/db/migration` directory is for schema changes, while `src/main/resources/db/sql` is for seed data. Modify `spring.flyway.locations` in `application.properties` to change what flyway runs.

When running in Docker, you can edit or add dummy data by adding the volume `-v /<Local_Path_To_SQL>/:/home/brapi/sql` to your docker command.
When running in Docker, you can edit or add seed data by adding the volume `-v /<Local_Path_To_SQL>/:/home/brapi/sql` to your docker command.

Below is a UML diagram of the whole database schema:

Expand Down
129 changes: 129 additions & 0 deletions src/main/java/io/swagger/api/core/BatchDeletesApi.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
/**
* NOTE: This class is auto generated by the swagger code generator program (3.0.18).
* https://github.com/swagger-api/swagger-codegen
* Do not edit the class manually.
*/
package io.swagger.api.core;

import io.swagger.model.BrAPIResponse;
import io.swagger.model.Model202AcceptedSearchResponse;
import io.swagger.model.core.*;
import io.swagger.annotations.*;

import org.brapi.test.BrAPITestServer.exceptions.BrAPIServerException;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import jakarta.validation.Valid;

import java.util.ArrayList;

@javax.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2020-03-20T16:31:52.030Z[GMT]")
@Api(value = "batchDeletes", description = "the batch deletes API")
public interface BatchDeletesApi {

@ApiOperation(value = "Get the details of a specific Batch Delete", nickname = "batchDeletesBatchDbIdGet", notes = "Get a specific generic batch delete", response = BatchDeletesSingleResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "BatchDeletes", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = BatchDeletesSingleResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class),
@ApiResponse(code = 404, message = "Not Found", response = String.class) })
@RequestMapping(value = "/batchDeletes/{batchDeleteDbId}", produces = { "application/json" }, method = RequestMethod.GET)
ResponseEntity<BatchDeletesSingleResponse> batchDeletesBatchDbIdGet(
@ApiParam(value = "The unique ID of this generic batch", required = true) @PathVariable("batchDeletDbId") String batchDbId,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Add Items to a specific Batch Delete", nickname = "batchDeletesBatchDbIdItemsPost", notes = "Add new data to a specific generic batch delete", response = BatchDeleteResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "BatchDeletes", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = BatchDeleteResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class),
@ApiResponse(code = 404, message = "Not Found", response = String.class) })
@RequestMapping(value = "/batchDeletes/{batchDeleteDbId}/items", produces = { "application/json" }, consumes = {
"application/json" }, method = RequestMethod.POST)
ResponseEntity<BatchDeleteResponse> batchDeletesBatchDbIdItemsPost(
@ApiParam(value = "The unique ID of this generic batch", required = true) @PathVariable("batchDeleteDbId") String batchDeleteDbId,
@ApiParam(value = "") @Valid @RequestBody ArrayList<String> body,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Add Items to a specific Batch Delete", nickname = "batchDeletesBatchDbIdDataPost", notes = "Add new data to a specific generic batch delete", response = BatchDeleteResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "BatchDeletes", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = BatchDeleteResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class),
@ApiResponse(code = 404, message = "Not Found", response = String.class) })
@RequestMapping(value = "/batchDeletes/{batchDeleteDbId}/data", produces = { "application/json" }, consumes = {
"application/json" }, method = RequestMethod.POST)
ResponseEntity<BatchDeleteResponse> batchDeletesBatchDbIdDataPost(
@ApiParam(value = "The unique ID of this generic batch", required = true) @PathVariable("batchDeleteDbId") String batchDbId,
@ApiParam(value = "") @Valid @RequestBody ArrayList<String> body,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Update an existing generic batch delete", nickname = "batchDeletesBatchDbIdPut", notes = "Update an existing generic batch delete", response = BatchDeletesSingleResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "BatchDeletes", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = BatchDeletesSingleResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class),
@ApiResponse(code = 404, message = "Not Found", response = String.class) })
@RequestMapping(value = "/batchDeletes/{batchDeleteDbId}", produces = { "application/json" }, consumes = {
"application/json" }, method = RequestMethod.PUT)
ResponseEntity<BatchDeletesSingleResponse> batchDeletesBatchDbIdPut(
@ApiParam(value = "The unique ID of this generic batch", required = true) @PathVariable("batchDeleteDbId") String batchDbId,
@ApiParam(value = "") @Valid @RequestBody BatchDeleteNewRequest body,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Create a New Batch Delete", nickname = "batchDeletesPost", notes = "Create a new batch delete", response = BatchDeletesListResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "BatchDeletes", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = BatchDeletesListResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class) })
@RequestMapping(value = "/batchDeletes", produces = { "application/json" }, consumes = {
"application/json" }, method = RequestMethod.POST)
ResponseEntity<? extends BrAPIResponse> batchDeletesPost(@ApiParam(value = "") @Valid @RequestBody BatchDeleteSearchRequest body,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Get the results of a Batch Delete search request", nickname = "searchBatchDeletesSearchResultsDbIdGet", notes = "Advanced searching for the batch delete resource. See Search Services for additional implementation details.", response = BatchDeletesListResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "BatchDeletes", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = BatchDeletesListResponse.class),
@ApiResponse(code = 202, message = "Accepted", response = Model202AcceptedSearchResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class) })
@RequestMapping(value = "/search/batchDeletes/{searchResultsDbId}", produces = {
"application/json" }, method = RequestMethod.GET)
ResponseEntity<? extends BrAPIResponse> searchBatchDeletesSearchResultsDbIdGet(
@ApiParam(value = "Permanent unique identifier which references the search results", required = true) @PathVariable("searchResultsDbId") String searchResultsDbId,
@ApiParam(value = "page") @Valid @RequestParam(value = "page", required = false) Integer page,
@ApiParam(value = "pageSize") @Valid @RequestParam(value = "pageSize", required = false) Integer pageSize,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization) throws BrAPIServerException;

@ApiOperation(value = "Delete a specific Batch Delete", nickname = "batchDeletesBatchDbIdDelete", notes = "Delete a specific generic batch delete", response = BatchDeletesSingleResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "BatchDeletes", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = BatchDeletesSingleResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class),
@ApiResponse(code = 404, message = "Not Found", response = String.class) })
@RequestMapping(value = "/batchDeletes/{batchDeleteDbId}", produces = { "application/json" }, method = RequestMethod.DELETE)
ResponseEntity<BatchDeletesSingleResponse> batchDeletesBatchDbIdDelete(
@ApiParam(value = "The unique ID of this generic batch", required = true) @PathVariable("batchDeleteDbId") String batchDbId,
@ApiParam(value = "hard") @Valid @RequestParam(value = "hardDelete", defaultValue = "false", required = false) boolean hardDelete,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

}
15 changes: 15 additions & 0 deletions src/main/java/io/swagger/api/core/ListsApi.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ public interface ListsApi {
@ApiResponse(code = 403, message = "Forbidden", response = String.class) })
@RequestMapping(value = "/lists", produces = { "application/json" }, method = RequestMethod.GET)
ResponseEntity<ListsListResponse> listsGet(
@ApiParam(value = "batchDeleteDbId") @Valid @RequestParam(value = "batchDeleteDbId", required = false) String batchDelete,
@ApiParam(value = "listType") @Valid @RequestParam(value = "listType", required = false) String listType,
@ApiParam(value = "listName") @Valid @RequestParam(value = "listName", required = false) String listName,
@ApiParam(value = "listDbId") @Valid @RequestParam(value = "listDbId", required = false) String listDbId,
Expand Down Expand Up @@ -67,6 +68,20 @@ ResponseEntity<ListsSingleResponse> listsListDbIdGet(
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Delete an existing generic list", nickname = "listsListDbIdDelete", notes = "Delete an existing generic list", response = ListsListResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "Lists", })
@ApiResponses(value = { @ApiResponse(code = 204, message = "OK", response = ListsSingleResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class),
@ApiResponse(code = 404, message = "Not Found", response = String.class) })
@RequestMapping(value = "/lists/{listDbId}", produces = { "application/json" }, method = RequestMethod.DELETE)
ResponseEntity<ListsSingleResponse> listsListDbIdDelete(
@ApiParam(value = "The unique ID of this generic list", required = true) @PathVariable("listDbId") String listDbId,
@ApiParam(value = "hardDelete") @Valid @RequestParam(value = "hardDelete", defaultValue = "false", required = false) boolean hardDelete,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Add Items to a specific List", nickname = "listsListDbIdItemsPost", notes = "Add new data to a specific generic lists", response = ListResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "Lists", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = ListResponse.class),
Expand Down
20 changes: 16 additions & 4 deletions src/main/java/io/swagger/api/core/TrialsApi.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,7 @@

import io.swagger.model.BrAPIResponse;
import io.swagger.model.Model202AcceptedSearchResponse;
import io.swagger.model.core.TrialListResponse;
import io.swagger.model.core.TrialNewRequest;
import io.swagger.model.core.TrialSearchRequest;
import io.swagger.model.core.TrialSingleResponse;
import io.swagger.model.core.*;
import io.swagger.annotations.*;

import org.brapi.test.BrAPITestServer.exceptions.BrAPIServerException;
Expand All @@ -37,6 +34,7 @@ public interface TrialsApi {
@ApiResponse(code = 403, message = "Forbidden", response = String.class) })
@RequestMapping(value = "/trials", produces = { "application/json" }, method = RequestMethod.GET)
ResponseEntity<TrialListResponse> trialsGet(
@ApiParam(value = "batchDeleteDbId") @Valid @RequestParam(value = "batchDeleteDbId", required = false) String batchDelete,
@ApiParam(value = "active") @Valid @RequestParam(value = "active", required = false) Boolean active,
@ApiParam(value = "commonCropName") @Valid @RequestParam(value = "commonCropName", required = false) String commonCropName,
@ApiParam(value = "contactDbId") @Valid @RequestParam(value = "contactDbId", required = false) String contactDbId,
Expand Down Expand Up @@ -83,6 +81,20 @@ ResponseEntity<TrialSingleResponse> trialsTrialDbIdGet(
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Delete a specific Trial", nickname = "trialsTrialDbIdDelete", notes = "Delete a specific Trial", response = TrialSingleResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "Trials", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = TrialSingleResponse.class),
@ApiResponse(code = 400, message = "Bad Request", response = String.class),
@ApiResponse(code = 401, message = "Unauthorized", response = String.class),
@ApiResponse(code = 403, message = "Forbidden", response = String.class),
@ApiResponse(code = 404, message = "Not Found", response = String.class) })
@RequestMapping(value = "/trials/{trialDbId}", produces = { "application/json" }, method = RequestMethod.DELETE)
ResponseEntity<TrialSingleResponse> trialsTrialDbIdDelete(
@ApiParam(value = "The internal trialDbId", required = true) @PathVariable("trialDbId") String trialDbId,
@ApiParam(value = "hardDelete") @Valid @RequestParam(value = "hardDelete", defaultValue = "false", required = false) boolean hardDelete,
@ApiParam(value = "HTTP HEADER - Token used for Authorization <strong> Bearer {token_string} </strong>") @RequestHeader(value = "Authorization", required = false) String authorization)
throws BrAPIServerException;

@ApiOperation(value = "Update the details of an existing Trial", nickname = "trialsTrialDbIdPut", notes = "Update the details of an existing Trial", response = TrialSingleResponse.class, authorizations = {
@Authorization(value = "AuthorizationToken") }, tags = { "Trials", })
@ApiResponses(value = { @ApiResponse(code = 200, message = "OK", response = TrialSingleResponse.class),
Expand Down
Loading