-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
Create feedback response question comment db and logic layer #12198
Merged
hhdqirui
merged 2 commits into
TEAMMATES:v9-migration
from
cedricongjh:create-feedback-response-comment-db-and-logic
Mar 13, 2023
Merged
Changes from 1 commit
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
42 changes: 42 additions & 0 deletions
42
src/main/java/teammates/sqllogic/core/FeedbackResponseCommentsLogic.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
package teammates.sqllogic.core; | ||
|
||
import java.util.UUID; | ||
|
||
import teammates.storage.sqlapi.FeedbackResponseCommentsDb; | ||
import teammates.storage.sqlentity.FeedbackResponseComment; | ||
|
||
/** | ||
* Handles operations related to feedback response comments. | ||
* | ||
* @see FeedbackResponseComment | ||
* @see FeedbackResponseCommentsDb | ||
*/ | ||
public final class FeedbackResponseCommentsLogic { | ||
|
||
private static final FeedbackResponseCommentsLogic instance = new FeedbackResponseCommentsLogic(); | ||
private FeedbackResponseCommentsDb frcDb; | ||
|
||
private FeedbackResponseCommentsLogic() { | ||
// prevent initialization | ||
} | ||
|
||
public static FeedbackResponseCommentsLogic inst() { | ||
return instance; | ||
} | ||
|
||
/** | ||
* Initialize dependencies for {@code FeedbackResponseCommentsLogic}. | ||
*/ | ||
void initLogicDependencies(FeedbackResponseCommentsDb frcDb) { | ||
this.frcDb = frcDb; | ||
} | ||
|
||
/** | ||
* Gets an feedback response comment by feedback response comment id. | ||
* @param id of feedback response comment. | ||
* @return the specified feedback response comment. | ||
*/ | ||
public FeedbackResponseComment getFeedbackQuestion(UUID id) { | ||
return frcDb.getFeedbackResponseComment(id); | ||
} | ||
} |
67 changes: 67 additions & 0 deletions
67
src/main/java/teammates/storage/sqlapi/FeedbackResponseCommentsDb.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
package teammates.storage.sqlapi; | ||
|
||
import static teammates.common.util.Const.ERROR_CREATE_ENTITY_ALREADY_EXISTS; | ||
|
||
import java.util.UUID; | ||
|
||
import teammates.common.exception.EntityAlreadyExistsException; | ||
import teammates.common.exception.InvalidParametersException; | ||
import teammates.common.util.HibernateUtil; | ||
import teammates.storage.sqlentity.FeedbackResponseComment; | ||
|
||
/** | ||
* Handles CRUD operations for feedbackResponseComments. | ||
* | ||
* @see FeedbackResponseComment | ||
*/ | ||
public final class FeedbackResponseCommentsDb extends EntitiesDb<FeedbackResponseComment> { | ||
|
||
private static final FeedbackResponseCommentsDb instance = new FeedbackResponseCommentsDb(); | ||
|
||
private FeedbackResponseCommentsDb() { | ||
// prevent initialization | ||
} | ||
|
||
public static FeedbackResponseCommentsDb inst() { | ||
return instance; | ||
} | ||
|
||
/** | ||
* Gets a feedbackResponseComment or null if it does not exist. | ||
*/ | ||
public FeedbackResponseComment getFeedbackResponseComment(UUID frId) { | ||
assert frId != null; | ||
|
||
return HibernateUtil.get(FeedbackResponseComment.class, frId); | ||
} | ||
|
||
/** | ||
* Creates a feedbackResponseComment. | ||
*/ | ||
public FeedbackResponseComment createFeedbackResponseComment(FeedbackResponseComment feedbackResponseComment) | ||
throws InvalidParametersException, EntityAlreadyExistsException { | ||
assert feedbackResponseComment != null; | ||
|
||
if (!feedbackResponseComment.isValid()) { | ||
throw new InvalidParametersException(feedbackResponseComment.getInvalidityInfo()); | ||
} | ||
|
||
if (getFeedbackResponseComment(feedbackResponseComment.getId()) != null) { | ||
throw new EntityAlreadyExistsException( | ||
String.format(ERROR_CREATE_ENTITY_ALREADY_EXISTS, feedbackResponseComment.toString())); | ||
} | ||
|
||
persist(feedbackResponseComment); | ||
return feedbackResponseComment; | ||
} | ||
|
||
/** | ||
* Deletes a feedbackResponseComment. | ||
*/ | ||
public void deleteFeedbackResponseComment(FeedbackResponseComment feedbackResponseComment) { | ||
if (feedbackResponseComment != null) { | ||
delete(feedbackResponseComment); | ||
} | ||
} | ||
|
||
} |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please also update the method
initializeDependencies
inLogicStarter
before we forgetThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
updated!