Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I843 CLICS API 2023-06 Endpoint Compliance #864

Open
wants to merge 187 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 186 commits
Commits
Show all changes
187 commits
Select commit Hold shift + click to select a range
84db7f3
i823 Relocate CLICS API Service endpoints
johnbrvc Nov 3, 2023
d1368f9
i843 Add GUI to set API version for web server endpoints
johnbrvc Nov 3, 2023
a5f3f45
CI: Fix incorect separator for section.key
johnbrvc Nov 5, 2023
232e8cc
i842 Added CLICS Version 2023-06 API web server driver package
johnbrvc Nov 5, 2023
8acbe3b
i843 Add contests endpoint
johnbrvc Nov 7, 2023
f3c0bf2
i843 Implement 2023-06 PATCH requests
johnbrvc Nov 7, 2023
ce1fd8a
i843 Added contest thaw time
johnbrvc Nov 8, 2023
3606aa9
i843 unpause if setting contest time
johnbrvc Nov 8, 2023
9565181
i843 Added state API endpoint for API Version 2023-06
johnbrvc Nov 8, 2023
ad5263c
i720 Add label support to Account
johnbrvc Nov 9, 2023
418ee8b
i843 Add team service for CLICS API Version 2023-06
johnbrvc Nov 9, 2023
c7091bd
i843 Remove unused imports
johnbrvc Nov 9, 2023
e655839
i843 Start adding access endpoint.
johnbrvc Nov 9, 2023
d5879fc
i843 changes for addition of access endpoint
johnbrvc Nov 13, 2023
f619732
i843 Added more Access endpoint functionality
johnbrvc Nov 14, 2023
27fe0af
i843 Update Clarifications endpoint for 2023-06
johnbrvc Nov 15, 2023
689ebcd
i843 Use reflection to look up json properties
johnbrvc Nov 15, 2023
b0774c3
i843 Add pc2 accounts to jetty web server auth
johnbrvc Nov 15, 2023
b6c4e5e
i843 Updated ProblemService and related classes
johnbrvc Nov 16, 2023
332c416
i843 - updated JudgementTypeService endpoint
johnbrvc Nov 16, 2023
9beb0e4
i843 Add endpoint access method to judgement-types
johnbrvc Nov 16, 2023
c9527cb
i843 remove extra imports
johnbrvc Nov 17, 2023
17619a5
i843 Update java docs and other comments
johnbrvc Nov 17, 2023
b7a31b0
i843 Updated 2023-06 group endpoint, other fixes
johnbrvc Nov 17, 2023
1f44c25
i843 removed debug code, fixed comments
johnbrvc Nov 17, 2023
f698559
i843 CI: fix spelling of getContestTimeMS
johnbrvc Nov 18, 2023
9b928a0
i843 update runs and judgements endpoints to 2023-06
johnbrvc Nov 18, 2023
1792ac0
i843 update languages endpoint
johnbrvc Nov 19, 2023
da4b5d4
i843 Update organizations service for 2023-06
johnbrvc Nov 19, 2023
ea97347
i843 fixed wrong clics api implementation for groups/location
johnbrvc Nov 20, 2023
61006d1
i843 added accounts endpoint service
johnbrvc Nov 20, 2023
676a2b7
i843 add account endpoint
johnbrvc Nov 20, 2023
d1c8570
i843 remove cacerts.pc2 from source tree
johnbrvc Nov 24, 2023
5e2e389
i843 update distributed configuration files to support CLICS API vers…
johnbrvc Nov 24, 2023
29f1f02
i843 code cleanup and minor fixes
johnbrvc Nov 24, 2023
311e596
i843 update scoreboard endpoint for 2023-06
johnbrvc Nov 24, 2023
64e193f
i843 Remove unused imports
johnbrvc Nov 24, 2023
6188add
i843 Add support for group filtering in scoring algorithms
johnbrvc Nov 28, 2023
37ac7c1
i843 deal with optional QueryParams for scoreboard API endpoint
johnbrvc Nov 29, 2023
3b093b0
i843 filter runs based on accounts
johnbrvc Nov 29, 2023
3270d41
i843 fixed wrong param in added method
johnbrvc Nov 29, 2023
33f5af9
i843 add creation of Account array from teams json
johnbrvc Nov 30, 2023
12f83e0
i843 added fromJSON for CLICS groups.json plus junit
johnbrvc Dec 3, 2023
0036eeb
i843 add fromJSON for organizations, other cleanup
johnbrvc Dec 3, 2023
3ca5eb7
i843 add organizations to team accounts
johnbrvc Dec 5, 2023
5b9034d
i843 add post/put operations to clarifications
johnbrvc Dec 6, 2023
8b9309e
i843 clean up comments and annotations
johnbrvc Dec 6, 2023
86e2656
i843 add exception to error log
johnbrvc Dec 6, 2023
2462df0
i843 add awards endpoint handler
johnbrvc Dec 6, 2023
e4d9857
i843 Add additional submitClarification method specifying clientId
johnbrvc Dec 13, 2023
3b09cc1
i843 Update class name for ScoreboardUtilities
johnbrvc Dec 13, 2023
4333e00
i843 Add POST API support for clarifications
johnbrvc Dec 14, 2023
7cbd929
i843 Add support for reading accounts.json/yaml
johnbrvc Dec 14, 2023
ce2c999
i843 Fix rebase errors
johnbrvc Dec 25, 2023
e7223d3
i823 Relocate CLICS API Service endpoints
johnbrvc Nov 3, 2023
83ebc2f
i842 Added CLICS Version 2023-06 API web server driver package
johnbrvc Nov 5, 2023
2b1d729
i843 Add contests endpoint
johnbrvc Nov 7, 2023
1ae74fd
i843 Implement 2023-06 PATCH requests
johnbrvc Nov 7, 2023
4396454
i843 Added contest thaw time
johnbrvc Nov 8, 2023
12be402
i843 unpause if setting contest time
johnbrvc Nov 8, 2023
64abe91
i843 Start adding access endpoint.
johnbrvc Nov 9, 2023
88ce04c
i843 changes for addition of access endpoint
johnbrvc Nov 13, 2023
bf8d25f
i843 Added more Access endpoint functionality
johnbrvc Nov 14, 2023
ab079fc
i843 Update Clarifications endpoint for 2023-06
johnbrvc Nov 15, 2023
fac2bb2
i843 Use reflection to look up json properties
johnbrvc Nov 15, 2023
11e8214
i843 - updated JudgementTypeService endpoint
johnbrvc Nov 16, 2023
0ab7c88
i843 Add endpoint access method to judgement-types
johnbrvc Nov 16, 2023
e53df38
i843 Update java docs and other comments
johnbrvc Nov 17, 2023
078483d
i843 Updated 2023-06 group endpoint, other fixes
johnbrvc Nov 17, 2023
029257e
i843 update runs and judgements endpoints to 2023-06
johnbrvc Nov 18, 2023
4be18f2
i843 added accounts endpoint service
johnbrvc Nov 20, 2023
ff7b4e1
i843 remove cacerts.pc2 from source tree
johnbrvc Nov 24, 2023
76691fa
i843 CI add cacerts.pc2 to .gitignore
johnbrvc Nov 24, 2023
6fd781d
i843 update distributed configuration files to support CLICS API vers…
johnbrvc Nov 24, 2023
4173bba
i843 code cleanup and minor fixes
johnbrvc Nov 24, 2023
2dea205
i843 update scoreboard endpoint for 2023-06
johnbrvc Nov 24, 2023
0b1d7c5
i843 Add support for group filtering in scoring algorithms
johnbrvc Nov 28, 2023
71ff2b6
i843 add post/put operations to clarifications
johnbrvc Dec 6, 2023
88bf50e
i843 add awards endpoint handler
johnbrvc Dec 6, 2023
8c4166a
i843 Add additional submitClarification method specifying clientId
johnbrvc Dec 13, 2023
e08f2dc
i843 Update class name for ScoreboardUtilities
johnbrvc Dec 13, 2023
9cbc7a9
i843 Add POST API support for clarifications
johnbrvc Dec 14, 2023
351d183
i823 Relocate CLICS API Service endpoints
johnbrvc Nov 3, 2023
5994614
i842 Added CLICS Version 2023-06 API web server driver package
johnbrvc Nov 5, 2023
5bcabad
i843 Implement 2023-06 PATCH requests
johnbrvc Nov 7, 2023
d849ef1
i843 Start adding access endpoint.
johnbrvc Nov 9, 2023
c5cc47e
i843 changes for addition of access endpoint
johnbrvc Nov 13, 2023
4088765
i843 Added more Access endpoint functionality
johnbrvc Nov 14, 2023
63b61df
i843 Update Clarifications endpoint for 2023-06
johnbrvc Nov 15, 2023
2dbaab0
i843 Use reflection to look up json properties
johnbrvc Nov 15, 2023
17f9833
i843 - updated JudgementTypeService endpoint
johnbrvc Nov 16, 2023
f822528
i843 Update java docs and other comments
johnbrvc Nov 17, 2023
97a669b
i843 Updated 2023-06 group endpoint, other fixes
johnbrvc Nov 17, 2023
35bd8bc
i843 update runs and judgements endpoints to 2023-06
johnbrvc Nov 18, 2023
64ab74c
i843 added accounts endpoint service
johnbrvc Nov 20, 2023
3f00385
i843 remove cacerts.pc2 from source tree
johnbrvc Nov 24, 2023
3d99faa
i843 update distributed configuration files to support CLICS API vers…
johnbrvc Nov 24, 2023
4674684
i843 code cleanup and minor fixes
johnbrvc Nov 24, 2023
10f6d40
i843 update scoreboard endpoint for 2023-06
johnbrvc Nov 24, 2023
1d66004
i843 Add support for group filtering in scoring algorithms
johnbrvc Nov 28, 2023
014190b
i843 add post/put operations to clarifications
johnbrvc Dec 6, 2023
e100968
i843 add awards endpoint handler
johnbrvc Dec 6, 2023
2c7a70c
i843 Add POST API support for clarifications
johnbrvc Dec 14, 2023
b8ded5c
i843 Fix rebase errors
johnbrvc Dec 25, 2023
b724901
i_843 change accessing of static methods
johnbrvc Feb 3, 2024
05f5a19
i_843 fix errors in comments
johnbrvc Feb 3, 2024
97bd9ee
Add WTI Files
johnbrvc Nov 23, 2024
47e6a2a
i_843 Rebase changes
johnbrvc Dec 10, 2024
b3048b3
i_843 Cleaned up merge mistakes
johnbrvc Dec 10, 2024
b348c79
i843 Completely separate event feed for api versions
johnbrvc Jan 1, 2025
1ba1f78
i843 Fix Merge issues
johnbrvc Jan 1, 2025
781bf4a
i823 Relocate CLICS API Service endpoints
johnbrvc Nov 3, 2023
c7ca514
i842 Added CLICS Version 2023-06 API web server driver package
johnbrvc Nov 5, 2023
86fdaea
i843 Implement 2023-06 PATCH requests
johnbrvc Nov 7, 2023
99599d8
i843 Update Clarifications endpoint for 2023-06
johnbrvc Nov 15, 2023
1d98c60
i843 Use reflection to look up json properties
johnbrvc Nov 15, 2023
75c69a0
i843 - updated JudgementTypeService endpoint
johnbrvc Nov 16, 2023
4a2e16d
i843 Add endpoint access method to judgement-types
johnbrvc Nov 16, 2023
7548049
i843 remove cacerts.pc2 from source tree
johnbrvc Nov 24, 2023
f49f43a
i843 code cleanup and minor fixes
johnbrvc Nov 24, 2023
fe4c0a3
i843 Add support for group filtering in scoring algorithms
johnbrvc Nov 28, 2023
4e767ca
i843 filter runs based on accounts
johnbrvc Nov 29, 2023
30b05af
i843 fixed wrong param in added method
johnbrvc Nov 29, 2023
b720372
i843 Add additional submitClarification method specifying clientId
johnbrvc Dec 13, 2023
328e0eb
i842 Added CLICS Version 2023-06 API web server driver package
johnbrvc Nov 5, 2023
2f8643f
i843 Implement 2023-06 PATCH requests
johnbrvc Nov 7, 2023
5029d3b
i843 Added contest thaw time
johnbrvc Nov 8, 2023
e3a014d
i843 unpause if setting contest time
johnbrvc Nov 8, 2023
07bcf3c
i843 Start adding access endpoint.
johnbrvc Nov 9, 2023
c106b5d
i843 changes for addition of access endpoint
johnbrvc Nov 13, 2023
c56fe4e
i843 Added more Access endpoint functionality
johnbrvc Nov 14, 2023
112f83d
i843 Update Clarifications endpoint for 2023-06
johnbrvc Nov 15, 2023
7aa33c7
i843 Use reflection to look up json properties
johnbrvc Nov 15, 2023
062e961
i843 - updated JudgementTypeService endpoint
johnbrvc Nov 16, 2023
28335de
i843 Update java docs and other comments
johnbrvc Nov 17, 2023
10267b4
i843 added accounts endpoint service
johnbrvc Nov 20, 2023
462486d
i843 remove cacerts.pc2 from source tree
johnbrvc Nov 24, 2023
5d94030
i843 CI add cacerts.pc2 to .gitignore
johnbrvc Nov 24, 2023
795f50e
i843 update distributed configuration files to support CLICS API vers…
johnbrvc Nov 24, 2023
0ffa23d
i843 code cleanup and minor fixes
johnbrvc Nov 24, 2023
6c51242
i843 update scoreboard endpoint for 2023-06
johnbrvc Nov 24, 2023
59eba8e
i843 Add support for group filtering in scoring algorithms
johnbrvc Nov 28, 2023
d300efb
i843 add awards endpoint handler
johnbrvc Dec 6, 2023
b42ca29
i843 Add additional submitClarification method specifying clientId
johnbrvc Dec 13, 2023
18cd33f
i823 Relocate CLICS API Service endpoints
johnbrvc Nov 3, 2023
0da050a
i842 Added CLICS Version 2023-06 API web server driver package
johnbrvc Nov 5, 2023
137d086
i843 Implement 2023-06 PATCH requests
johnbrvc Nov 7, 2023
9c434f5
i843 Start adding access endpoint.
johnbrvc Nov 9, 2023
d8b7542
i843 changes for addition of access endpoint
johnbrvc Nov 13, 2023
45c0399
i843 Added more Access endpoint functionality
johnbrvc Nov 14, 2023
b78874c
i843 Update Clarifications endpoint for 2023-06
johnbrvc Nov 15, 2023
2ab118f
i843 Use reflection to look up json properties
johnbrvc Nov 15, 2023
54dd418
i843 - updated JudgementTypeService endpoint
johnbrvc Nov 16, 2023
e3eae04
i843 Update java docs and other comments
johnbrvc Nov 17, 2023
fdc46a1
i843 added accounts endpoint service
johnbrvc Nov 20, 2023
f58425c
i843 remove cacerts.pc2 from source tree
johnbrvc Nov 24, 2023
893b687
i843 update distributed configuration files to support CLICS API vers…
johnbrvc Nov 24, 2023
329bccd
i843 code cleanup and minor fixes
johnbrvc Nov 24, 2023
230b64f
i843 update scoreboard endpoint for 2023-06
johnbrvc Nov 24, 2023
93036d4
i843 add awards endpoint handler
johnbrvc Dec 6, 2023
314b7a3
Add WTI Files
johnbrvc Nov 23, 2024
ee291cb
i_843 Rebase changes
johnbrvc Dec 10, 2024
c463f3b
i_843 Cleaned up merge mistakes
johnbrvc Dec 10, 2024
c7594d1
i843 Completely separate event feed for api versions
johnbrvc Jan 1, 2025
4fdc146
i843 Fix more merge issues
johnbrvc Jan 1, 2025
d7ed0a1
i_843 Fix countrycode loading
johnbrvc Jan 2, 2025
411a379
i_843 Add Institution ID to Review Table for loading accounts
johnbrvc Jan 3, 2025
068005c
i_843 Fix Judgement CLICS2023-06 compliance
johnbrvc Jan 5, 2025
ecb5b06
i_843 Fixed JUnit tests for 2023-06 compliance
johnbrvc Jan 5, 2025
e1ac47c
i_843 Fix CLICS 2023-06 clarification EP compliance
johnbrvc Jan 9, 2025
82cc2f1
i_843 Fix who answered a clarification or created an annoucement
johnbrvc Jan 10, 2025
5796893
i_843 Avoid sending extra contest events but send state change events
johnbrvc Jan 18, 2025
f96ce73
i_843 Add PC2 extensions to 2023-06 API
johnbrvc Jan 21, 2025
c0d243d
i_843 Bug fixes
johnbrvc Jan 30, 2025
a1eba99
i_843 Remove deprecated Integer references
johnbrvc Feb 16, 2025
011dac2
i_843 Finish Submission implementation
johnbrvc Feb 16, 2025
8b53019
i_843 Code cleanup
johnbrvc Feb 16, 2025
c638877
i_843 Fix rebase errors
johnbrvc Feb 16, 2025
dde3f3d
i_843 PR change requests
johnbrvc Feb 18, 2025
745c998
i_843 PR Change Requests
johnbrvc Feb 19, 2025
45d5ad7
i_843 PR Change requests and bug fixes
johnbrvc Feb 20, 2025
5ca0422
i_843 PR Change requests
johnbrvc Feb 20, 2025
7312e58
i_843 PR Change Requests
johnbrvc Feb 21, 2025
7637182
i_843 i_1048 Allow full CLICS RELTIME values for contest.yaml durations
johnbrvc Feb 21, 2025
8fe4c17
i_843 i_1048 Fix test unit for correct operation of freeze duration
johnbrvc Feb 21, 2025
f2fa54a
i_843 PR change requests
johnbrvc Feb 22, 2025
1c2c126
i_843 PR Change requests
johnbrvc Feb 23, 2025
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
1 change: 1 addition & 0 deletions .classpath
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,6 @@
<classpathentry kind="lib" path="vendor/lib/bcprov-ext-jdk18on-176.jar"/>
<classpathentry kind="lib" path="vendor/lib/bcpkix-jdk18on-176.jar"/>
<classpathentry kind="lib" path="vendor/lib/bcutil-jdk18on-176.jar"/>
<classpathentry kind="lib" path="vendor/lib/jackson-dataformat-yaml-2.5.4.jar"/>
<classpathentry kind="output" path=".classes"/>
</classpath>
2 changes: 2 additions & 0 deletions pc2v9.ini
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,6 @@ server=localhost:50002
wtiport=8080
wtiwsName=/websocket

[clics]
apiVersionsSupported=2023-06,2020-03
# eof
6 changes: 5 additions & 1 deletion realm.properties
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,8 @@
# commented out examples:
# admin: passw0rd,public,admin
# public: pub1ic,public
admin: admin,admin
admin: admin,admin
team: team,team
judge: judge,judge
public: public,public
analyst: analyst,analyst
4 changes: 4 additions & 0 deletions samps/pc2v9.ini
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,8 @@ server=localhost:50002
# use MockContestAdapter as shadow contest API adapter (for testing)
# useMockContestAdapter=true

# This is used to populate the API versions available combo box for the event feeder WebServerPane
[clics]
apiVersionsSupported=2023-06,2020-03

# eof pc2v9.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Copyright (C) 1989-2024 PC2 Development Team: John Clevenger, Douglas Lane, Samir Ashoo, and Troy Boudreau.
package edu.csus.ecs.pc2.services.web;
package edu.csus.ecs.pc2.clics.API202003;

import javax.inject.Singleton;
import javax.ws.rs.GET;
Expand All @@ -21,11 +21,10 @@
import edu.csus.ecs.pc2.core.model.Clarification;
import edu.csus.ecs.pc2.core.model.ClarificationAnswer;
import edu.csus.ecs.pc2.core.model.IInternalContest;
import edu.csus.ecs.pc2.core.util.JSONTool;

/**
* WebService to handle languages
*
*
* @author ICPC
*
*/
Expand All @@ -51,7 +50,7 @@ public ClarificationService(IInternalContest inContest, IInternalController inCo
/**
* This method returns a representation of the current contest groups in JSON format. The returned value is a JSON array with one language description per array element, matching the description
* at {@link https://clics.ecs.baylor.edu/index.php/Draft_CCS_REST_interface#GET_baseurl.2Flanguages}.
*
*
* @return a {@link Response} object containing the contest languages in JSON form
*/
@GET
Expand Down Expand Up @@ -120,7 +119,7 @@ public Response getClarification(@Context SecurityContext sc, @PathParam("clarif
ClarificationAnswer clarificationAnswer = clarAnswers[j];
if (clarificationAnswer.getElementId().toString().equals(clarificationId)) {
return Response.ok(jsonTool.convertToJSON(clarification, clarificationAnswer).toString(), MediaType.APPLICATION_JSON).build();
}
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Copyright (C) 1989-2019 PC2 Development Team: John Clevenger, Douglas Lane, Samir Ashoo, and Troy Boudreau.
package edu.csus.ecs.pc2.services.web;
// Copyright (C) 1989-2024 PC2 Development Team: John Clevenger, Douglas Lane, Samir Ashoo, and Troy Boudreau.
package edu.csus.ecs.pc2.clics.API202003;

import java.io.IOException;
import java.text.ParseException;
Expand Down Expand Up @@ -31,17 +31,16 @@
import edu.csus.ecs.pc2.core.log.Log;
import edu.csus.ecs.pc2.core.model.ContestInformation;
import edu.csus.ecs.pc2.core.model.IInternalContest;
import edu.csus.ecs.pc2.core.util.JSONTool;

/**
* WebService to handle "contest" REST endpoint as described by the CLICS wiki.
*
*
* example get output: {"id":"7b0dd4ea-19a1-4434-9034-529ebe55ab45", "name":"2014 ICPC World Finals", "formal_name":"38th Annual World Finals of the ACM International Collegiate Programming Contest",
* "start_time":"2014-06-25T10:00:00+01","duration":"5:00:00","scoreboard_freeze_duration":"1:00:00","penalty_time":20, "state":{"running":true,"frozen":false,"final":false} } example patch request
* data: {"id":"7b0dd4ea-19a1-4434-9034-529ebe55ab45","start_time":"2014-06-25T10:00:00+01"}
*
*
* or {"id":"wf2016","start_time":null}
*
*
* @author [email protected]
*
*/
Expand All @@ -59,7 +58,7 @@ public class ContestService implements Feature {

/**
* List of the possible types of requests which might be received from clients.
*
*
* @author john
*/
private enum StartTimeRequestType {
Expand All @@ -76,9 +75,9 @@ public ContestService(IInternalContest inModel, IInternalController inController
/**
* This method resets the current contest scheduled start time according to the received (input) string, which it expects to be in JSON format as described in the CLICS Wiki "StartTime" interface
* specification.
*
*
* @return a {@link Response} object indicating the status of the setStarttime request as follows (from the CLI Wiki Contest_Start_Interface spec):
*
*
* <pre>
* // PUT HTTP body is application/json:
* // { &quot;starttime&quot;:1265335138.26 }
Expand Down Expand Up @@ -139,7 +138,7 @@ public Response setStartime(@Context HttpServletRequest servletRequest, @Context
// // certainly NOT what PC2 set up as the identifier (Default-###############). As such, until the
// // API endpoints are fixed to include a (configurable) contest identifier, a reasonable thing to
// // do at this point is not validate the id at all. Just make sure one was specified (above). That's
// // enough for now.
// // enough for now.
// if (!model.getContestIdentifier().equals(requestMap.get("id"))) {
// controller.getLog().log(Log.WARNING, "Starttime PATCH Service: JSON mismatched 'id' key: '" + requestMap.get("id") + "'");
// // return HTTP 400 response code per CLICS spec
Expand Down Expand Up @@ -288,7 +287,7 @@ public Response setStartime(@Context HttpServletRequest servletRequest, @Context

/**
* Parses the given String and returns a {@link GregorianCalendar} object if the String represents a valid Unix Epoch date; otherwise returns null.
*
*
* @param startTimeValueString
* a String containing a date in ISO 8601 format.
* @return the GregorianCalendar date/time represented by the String, or null if the String does not represent a valid date/time
Expand Down Expand Up @@ -317,10 +316,10 @@ private GregorianCalendar getDate(String startTimeValueString) {
/**
* This method updates the Scheduled Start Date for the contest, including causing the scheduling of a "start contest" task for the specified date (which is assumed to be a valid date in the
* future).
*
*
* This is accomplished by telling the controller to update the {@link ContestInformation} with the scheduled start date. The controller then sends a packet to the server to do that; the server in
* turn creates a task to start the contest at the specified date/time.
*
*
* @param theDate
* the date/time to which the automatic start of the contest should be set, or null if the start date/time should be set to "undefined"
* @return true if the method was successful in setting the scheduled start time; false otherwise
Expand All @@ -347,7 +346,7 @@ private boolean setScheduledStart(GregorianCalendar theDate) {

/**
* Converts the input string, assumed to be a JSON string, into a {@link Map<String,String>} of JSON key-value pairs.
*
*
* @param jsonRequestString
* a JSON string specifying a starttime request in CLICS format
* @return a Map of the JSON string key-to-value pairs as Strings, or null if the input JSON does not parse as a Map(String->String).
Expand Down Expand Up @@ -382,7 +381,7 @@ private Map<String, String> parseJSONIntoMap(String jsonRequestString) {

/**
* This method returns a representation of the current contest scheduled start time in JSON format as described on the CLICS wiki.
*
*
* @return a {@link Response} object containing a JSON String giving the scheduled contest start time as a Unix Epoch value, or as the string "undefined" if no start time is currently scheduled.
*/
@GET
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Copyright (C) 1989-2024 PC2 Development Team: John Clevenger, Douglas Lane, Samir Ashoo, and Troy Boudreau.
package edu.csus.ecs.pc2.services.web;
package edu.csus.ecs.pc2.clics.API202003;

import java.util.ArrayList;
import java.util.HashMap;
Expand All @@ -11,7 +11,6 @@
import edu.csus.ecs.pc2.core.model.Group;
import edu.csus.ecs.pc2.core.model.IInternalContest;
import edu.csus.ecs.pc2.core.model.Problem;
import edu.csus.ecs.pc2.services.core.EventFeedJSON;

/**
* Event Feed filter.
Expand Down Expand Up @@ -262,7 +261,7 @@ public boolean matchesFilter(String string) {
* @param string JSON string, {"type":"languages", "id":"pc2-11", "op":"create", "data": {"id":"1","name":"Java"}}
* @return type for event, ex. "languages" as EventFeedType.LANGUAGES.
*/
protected EventFeedType getEventFeedType(String string) {
public EventFeedType getEventFeedType(String string) {
// {"type":"languages", "id":"pc2-11", "op":"create", "data": {"id":"1","name":"Java"}}

String typeValue = getCleanValue(string, EF_TYPE_STRING);
Expand All @@ -288,7 +287,7 @@ private EventFeedType parseEventFeedType(String typeValue) {
* @param string ex. {"event":"languages", "id":"pc2-11", "op":"create", "data": {"id":"1","name":"Java"}}
* @return value for id, ex pc2-11
*/
protected String getEventFeedSequence(String string) {
public String getEventFeedSequence(String string) {
// {"event":"languages", "id":"pc2-11", "op":"create", "data": {"id":"1","name":"Java"}}
String seqVal = getCleanValue(string, EF_SEQ_STRING);
if(seqVal == null) {
Expand Down
Loading