001: /**********************************************************************************
002: * $URL: https://source.sakaiproject.org/svn/assignment/tags/sakai_2-4-1/assignment-api/api/src/java/org/sakaiproject/assignment/api/AssignmentSubmissionEdit.java $
003: * $Id: AssignmentSubmissionEdit.java 8331 2006-04-26 14:32:54Z ggolden@umich.edu $
004: ***********************************************************************************
005: *
006: * Copyright (c) 2003, 2004, 2005, 2006 The Sakai Foundation.
007: *
008: * Licensed under the Educational Community License, Version 1.0 (the "License");
009: * you may not use this file except in compliance with the License.
010: * You may obtain a copy of the License at
011: *
012: * http://www.opensource.org/licenses/ecl1.php
013: *
014: * Unless required by applicable law or agreed to in writing, software
015: * distributed under the License is distributed on an "AS IS" BASIS,
016: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
017: * See the License for the specific language governing permissions and
018: * limitations under the License.
019: *
020: **********************************************************************************/package org.sakaiproject.assignment.api;
021:
022: import org.sakaiproject.entity.api.Edit;
023: import org.sakaiproject.entity.api.Reference;
024: import org.sakaiproject.time.api.Time;
025: import org.sakaiproject.user.api.User;
026:
027: /**
028: * <p>
029: * AssignmentSubmissionEdit is an interface for the Sakai assignments module. It represents editable student submissions for assignments.
030: * </p>
031: */
032: public interface AssignmentSubmissionEdit extends AssignmentSubmission,
033: Edit {
034: /**
035: * Set the AssignmentSubmissions's context at the time of creation.
036: *
037: * @param context -
038: * The context string.
039: */
040: public void setContext(String context);
041:
042: /**
043: * Set the Assignment for this Submission
044: *
045: * @param assignment -
046: * the Assignment
047: */
048: public void setAssignment(Assignment assignment);
049:
050: /**
051: * Add a User to the submitters list.
052: *
053: * @param submitter -
054: * the User to add.
055: */
056: public void addSubmitter(User submitter);
057:
058: /**
059: * Remove an User from the submitter list
060: *
061: * @param submitter -
062: * the User to remove.
063: */
064: public void removeSubmitter(User submitter);
065:
066: /**
067: * Remove all user from the submitter list
068: */
069: public void clearSubmitters();
070:
071: /**
072: * Set whether this is a final submission.
073: *
074: * @param submitted -
075: * True if a final submission, false if still a draft.
076: */
077: public void setSubmitted(boolean submitted);
078:
079: /**
080: * Set the time at which this response was submitted; setting it to null signifies the response is unsubmitted.
081: *
082: * @param timeSubmitted -
083: * Time of submission.
084: */
085: public void setTimeSubmitted(Time timeSubmitted);
086:
087: /**
088: * Text submitted in response to the Assignment.
089: *
090: * @param submissionText -
091: * The text of the submission.
092: */
093: public void setSubmittedText(String submissionText);
094:
095: /**
096: * Add an attachment to the list of submitted attachments.
097: *
098: * @param attachment -
099: * The Reference object pointing to the attachment.
100: */
101: public void addSubmittedAttachment(Reference attachment);
102:
103: /**
104: * Remove an attachment from the list of submitted attachments
105: *
106: * @param attachment -
107: * The Reference object pointing to the attachment.
108: */
109: public void removeSubmittedAttachment(Reference attachment);
110:
111: /**
112: * Remove all submitted attachments.
113: */
114: public void clearSubmittedAttachments();
115:
116: /**
117: * Set the general comments by the grader.
118: *
119: * @param comment -
120: * the text of the grader's comments; may be null.
121: */
122: public void setFeedbackComment(String comment);
123:
124: /**
125: * Set the text part of the instructors feedback; usually an annotated copy of the submittedText
126: *
127: * @param feedback -
128: * The text of the grader's feedback.
129: */
130: public void setFeedbackText(String feedback);
131:
132: /**
133: * Add an attachment to the list of feedback attachments.
134: *
135: * @param attachment -
136: * The Resource object pointing to the attachment.
137: */
138: public void addFeedbackAttachment(Reference attachment);
139:
140: /**
141: * Remove an attachment from the list of feedback attachments.
142: *
143: * @param attachment -
144: * The Resource pointing to the attachment to remove.
145: */
146: public void removeFeedbackAttachment(Reference attachment);
147:
148: /**
149: * Remove all feedback attachments.
150: */
151: public void clearFeedbackAttachments();
152:
153: /**
154: * Set whether this Submission was rejected by the grader.
155: *
156: * @param returned -
157: * true if this response was rejected by the grader, false otherwise.
158: */
159: public void setReturned(boolean returned);
160:
161: /**
162: * Set whether this Submission has been graded.
163: *
164: * @param graded -
165: * true if the submission has been graded, false otherwise.
166: */
167: public void setGraded(boolean graded);
168:
169: /**
170: * Set whether the grade has been released.
171: *
172: * @param released -
173: * True if the Submissions's grade has been released, false otherwise.
174: */
175: public void setGradeReleased(boolean released);
176:
177: /**
178: * Sets the grade for the Submisssion.
179: *
180: * @param grade -
181: * The Submission's grade.
182: */
183: public void setGrade(String grade);
184:
185: /**
186: * Set the time at which the graded Submission was returned; setting it to null means it is not yet graded.
187: *
188: * @param timeReturned -
189: * The time at which the graded Submission was returned.
190: */
191: public void setTimeReturned(Time timeReturned);
192:
193: /**
194: * Set the checked status of the honor pledge flag.
195: *
196: * @param honorPledgeFlag -
197: * True if the honor pledge is checked, false otherwise.
198: */
199: public void setHonorPledgeFlag(boolean honorPledgeFlag);
200:
201: /**
202: * Set the time last modified.
203: *
204: * @param lastmod -
205: * The Time at which the Submission was last modified.
206: */
207: public void setTimeLastModified(Time lastmod);
208: }
|