Confession page simulator application, implement some data structures & algorithms
Create an input interface which allows users to submit their confessions. Class: Confession Post Variable:
- postID //Confession post ID | String
- content //Confession content | String
- postTime //Confession post published date & time | Date
Process:
- User submits a confession through the input interface.
- Program check for content spamming.
- The confession data is pushed into a data structure.
- Waiting time elapsed.
- The confession data is popped from that data structure.
- The popped confession data is stored in the program permanently.
Rules: a. If the number of elements in the data structure is less than or equals to 5, pop the data every 15 minutes. b. If the number of elements in the data structure is less than or equals to 10, pop the data every 10 minutes. c. If the number of elements in the data structure is more than 10, pop the data every 5 minutes.
Use at least one algorithm with appropiate data structures to block spammed confessions.
Delete all posts that are replying to a post(given a confession ID), and remove itself as well, if the post is too controversial and lead to unnecessary argument in the community.
Store confession posts data in a permanent storage locally or cloud before exiting the program. Load the data back when application is restarted.
Automatically approved/disapprove post based on neutral, good tone or bad tone contained in it(rude words / harassmement / blackmail / racism etc.). Ban bad user.
Upload media files too.