Challenge Overview
For this challenge, we'd like to add a new job similar as srms and mmatches, which will populate all rounds related data including srms and mmatches.
General Requirements
- Please use develop branch
- Create a es mapping file for round (name it round.json), similar as https://github.com/topcoder-platform/tc-elasticsearch-feeder-service/blob/dev/es-mappings/srms.json
-- isRatedForSRM field should be renamed to isRated to be general
-- Add fields for roundTypeId and roundTypeName
-- Add fields for contestId
-- Add nest field components, which is a list of round components, each element should have the following fields, please use a separate query to getting these.
--* componentId - round_component.component_id
--* division - division.division_desc
--* difficulty - difficulty.difficulty_level
--* problem_id - component.problem_id
--* points - round_component.points
-- Update src/main/java/com/appirio/service/challengefeeder/api/DataScienceData.java to support the new fields.
- Create the DAO class and related sqls to support getting these data.
- Create the FeederManager class to prepare and push to elasticsearch
- Create the Job class to run intervally
- Other classes and files in order to make it running properly
- the changes should be similar as SRM related classes
Local Setup
- Please check the files in docs for reference, and using Docker and Docker Compose to run locally
- Verification Steps
- Winner will be responsible to create the Pull Request for merge
General Requirements
- Please use develop branch
- Create a es mapping file for round (name it round.json), similar as https://github.com/topcoder-platform/tc-elasticsearch-feeder-service/blob/dev/es-mappings/srms.json
-- isRatedForSRM field should be renamed to isRated to be general
-- Add fields for roundTypeId and roundTypeName
-- Add fields for contestId
-- Add nest field components, which is a list of round components, each element should have the following fields, please use a separate query to getting these.
--* componentId - round_component.component_id
--* division - division.division_desc
--* difficulty - difficulty.difficulty_level
--* problem_id - component.problem_id
--* points - round_component.points
-- Update src/main/java/com/appirio/service/challengefeeder/api/DataScienceData.java to support the new fields.
- Create the DAO class and related sqls to support getting these data.
- Create the FeederManager class to prepare and push to elasticsearch
- Create the Job class to run intervally
- Other classes and files in order to make it running properly
- the changes should be similar as SRM related classes
Local Setup
- Please check the files in docs for reference, and using Docker and Docker Compose to run locally
Final Submission Guidelines
- Code changes for rounds related logic- Verification Steps
- Winner will be responsible to create the Pull Request for merge