org.sakaiproject.service.gradebook.shared
Interface GradebookExternalAssessmentService

All Known Implementing Classes:
GradebookExternalAssessmentServiceImpl

public interface GradebookExternalAssessmentService

This service is designed for use by external assessment engines. These use the Gradebook as a passive mirror of their own assignments and scores, letting Gradebook users see those assignments alongside Gradebook-managed assignments, and combine them when calculating a course grade. The Gradebook application itself will not modify externally-managed assignments and scores. WARNING: Because the Gradebook project team is not responsible for defining the external clients' requirements, the Gradebook service does not attempt to guess at their authorization needs. Our administrative and external-assessment methods simply follow orders and assume that the caller has taken the responsibility of "doing the right thing." DO NOT wrap these methods in an open web service!


Method Summary
 void addExternalAssessment(String gradebookUid, String externalId, String externalUrl, String title, double points, Date dueDate, String externalServiceDescription)
          Deprecated. Replaced by addExternalAssessment(String, String, String, String, Double, Date, String, Boolean)
 void addExternalAssessment(String gradebookUid, String externalId, String externalUrl, String title, Double points, Date dueDate, String externalServiceDescription, Boolean ungraded)
          Add an externally-managed assessment to a gradebook to be treated as a read-only assignment.
 void addExternalAssessment(String gradebookUid, String externalId, String externalUrl, String title, Double points, Date dueDate, String externalServiceDescription, Boolean ungraded, Long categoryId)
          This method is identical to addExternalAssessment(String, String, String, String, Double, Date, String, Boolean) but allows you to also specify the associated Category for this assignment.
 boolean isAssignmentDefined(String gradebookUid, String assignmentTitle)
          Check to see if an assignment with the given name already exists in the given gradebook.
 boolean isExternalAssignmentDefined(String gradebookUid, String externalId)
          Check to see if an assignment with the given external id already exists in the given gradebook.
 boolean isGradebookDefined(String gradebookUid)
          Checks to see whether a gradebook with the given uid exists.
 void removeExternalAssessment(String gradebookUid, String externalId)
          Remove the assessment reference from the gradebook.
 void setExternalAssessmentToGradebookAssignment(String gradebookUid, String externalId)
          Break the connection between an external assessment engine and an assessment which it created, giving it up to the Gradebook application to control from now on.
 void updateExternalAssessment(String gradebookUid, String externalId, String externalUrl, String title, double points, Date dueDate)
          Deprecated. Replaced by updateExternalAssessment(String, String, String, String, Double, Date, Boolean)
 void updateExternalAssessment(String gradebookUid, String externalId, String externalUrl, String title, Double points, Date dueDate, Boolean ungraded)
           
 void updateExternalAssessmentScore(String gradebookUid, String externalId, String studentUid, String points)
          Updates an external score for an external assignment in the gradebook.
 void updateExternalAssessmentScores(String gradebookUid, String externalId, Map studentUidsToScores)
          Deprecated. Replaced by updateExternalAssessmentScoresString(String, String, Map)
 void updateExternalAssessmentScoresString(String gradebookUid, String externalId, Map studentUidsToScores)
          Updates a set of external scores for an external assignment in the gradebook.
 

Method Detail

addExternalAssessment

void addExternalAssessment(String gradebookUid,
                           String externalId,
                           String externalUrl,
                           String title,
                           double points,
                           Date dueDate,
                           String externalServiceDescription)
                           throws GradebookNotFoundException,
                                  ConflictingAssignmentNameException,
                                  ConflictingExternalIdException,
                                  AssignmentHasIllegalPointsException
Deprecated. Replaced by addExternalAssessment(String, String, String, String, Double, Date, String, Boolean)

Throws:
GradebookNotFoundException
ConflictingAssignmentNameException
ConflictingExternalIdException
AssignmentHasIllegalPointsException

addExternalAssessment

void addExternalAssessment(String gradebookUid,
                           String externalId,
                           String externalUrl,
                           String title,
                           Double points,
                           Date dueDate,
                           String externalServiceDescription,
                           Boolean ungraded)
                           throws GradebookNotFoundException,
                                  ConflictingAssignmentNameException,
                                  ConflictingExternalIdException,
                                  AssignmentHasIllegalPointsException
Add an externally-managed assessment to a gradebook to be treated as a read-only assignment. The gradebook application will not modify the assessment properties or create any scores for the assessment. Since each assignment in a given gradebook must have a unique name, conflicts are possible.

Parameters:
gradebookUid -
externalId - some unique identifier which Samigo uses for the assessment. The externalId is globally namespaced within the gradebook, so if other apps decide to put assessments into the gradebook, they should prefix their externalIds with a well known (and unique within sakai) string.
externalUrl - a link to go to if the instructor or student wants to look at the assessment in Samigo; if null, no direct link will be provided in the gradebook, and the user will have to navigate to the assessment within the other application
title -
points - this is the total amount of points available and must be greater than zero. it could be null if it's an ungraded item.
dueDate -
externalServiceDescription -
ungraded -
externalServiceDescription - what to display as the source of the assignment (e.g., "from Samigo")
Throws:
GradebookNotFoundException
ConflictingAssignmentNameException
ConflictingExternalIdException
AssignmentHasIllegalPointsException

addExternalAssessment

void addExternalAssessment(String gradebookUid,
                           String externalId,
                           String externalUrl,
                           String title,
                           Double points,
                           Date dueDate,
                           String externalServiceDescription,
                           Boolean ungraded,
                           Long categoryId)
                           throws GradebookNotFoundException,
                                  ConflictingAssignmentNameException,
                                  ConflictingExternalIdException,
                                  AssignmentHasIllegalPointsException,
                                  InvalidCategoryException
This method is identical to addExternalAssessment(String, String, String, String, Double, Date, String, Boolean) but allows you to also specify the associated Category for this assignment. If the gradebook is set up for categories and categoryId is null, assignment category will be unassigned

Parameters:
gradebookUid -
externalId -
externalUrl -
title -
points -
dueDate -
externalServiceDescription -
ungraded -
categoryId -
Throws:
GradebookNotFoundException
ConflictingAssignmentNameException
ConflictingExternalIdException
AssignmentHasIllegalPointsException
InvalidCategoryException

updateExternalAssessment

void updateExternalAssessment(String gradebookUid,
                              String externalId,
                              String externalUrl,
                              String title,
                              double points,
                              Date dueDate)
                              throws GradebookNotFoundException,
                                     AssessmentNotFoundException,
                                     ConflictingAssignmentNameException,
                                     AssignmentHasIllegalPointsException
Deprecated. Replaced by updateExternalAssessment(String, String, String, String, Double, Date, Boolean)

Throws:
GradebookNotFoundException
AssessmentNotFoundException
ConflictingAssignmentNameException
AssignmentHasIllegalPointsException

updateExternalAssessment

void updateExternalAssessment(String gradebookUid,
                              String externalId,
                              String externalUrl,
                              String title,
                              Double points,
                              Date dueDate,
                              Boolean ungraded)
                              throws GradebookNotFoundException,
                                     AssessmentNotFoundException,
                                     ConflictingAssignmentNameException,
                                     AssignmentHasIllegalPointsException
Throws:
GradebookNotFoundException
AssessmentNotFoundException
ConflictingAssignmentNameException
AssignmentHasIllegalPointsException

removeExternalAssessment

void removeExternalAssessment(String gradebookUid,
                              String externalId)
                              throws GradebookNotFoundException,
                                     AssessmentNotFoundException
Remove the assessment reference from the gradebook. Although Samigo doesn't currently delete assessments, an instructor can retract an assessment to keep it from students. Since such an assessment would presumably no longer be used to calculate final grades, Samigo should also remove that assessment from the gradebook.

Parameters:
externalId - the UID of the assessment
Throws:
GradebookNotFoundException
AssessmentNotFoundException

updateExternalAssessmentScore

void updateExternalAssessmentScore(String gradebookUid,
                                   String externalId,
                                   String studentUid,
                                   String points)
                                   throws GradebookNotFoundException,
                                          AssessmentNotFoundException
Updates an external score for an external assignment in the gradebook.

Parameters:
gradebookUid - The Uid of the gradebook
externalId - The external ID of the assignment/assessment
studentUid - The unique id of the student
points - The number of points earned on this assessment, or null if a score should be removed
Throws:
GradebookNotFoundException
AssessmentNotFoundException

updateExternalAssessmentScores

void updateExternalAssessmentScores(String gradebookUid,
                                    String externalId,
                                    Map studentUidsToScores)
                                    throws GradebookNotFoundException,
                                           AssessmentNotFoundException
Deprecated. Replaced by updateExternalAssessmentScoresString(String, String, Map)

Throws:
GradebookNotFoundException
AssessmentNotFoundException

updateExternalAssessmentScoresString

void updateExternalAssessmentScoresString(String gradebookUid,
                                          String externalId,
                                          Map studentUidsToScores)
                                          throws GradebookNotFoundException,
                                                 AssessmentNotFoundException
Updates a set of external scores for an external assignment in the gradebook.

Parameters:
gradebookUid - The Uid of the gradebook
externalId - The external ID of the assignment/assessment
studentUidsToScores - A map whose String keys are the unique ID strings of the students and whose String values are points earned on this assessment or null if the score should be removed.
Throws:
GradebookNotFoundException
AssessmentNotFoundException

isAssignmentDefined

boolean isAssignmentDefined(String gradebookUid,
                            String assignmentTitle)
                            throws GradebookNotFoundException
Check to see if an assignment with the given name already exists in the given gradebook. This will give external assessment systems a chance to avoid the ConflictingAssignmentNameException.

Throws:
GradebookNotFoundException

isExternalAssignmentDefined

boolean isExternalAssignmentDefined(String gradebookUid,
                                    String externalId)
                                    throws GradebookNotFoundException
Check to see if an assignment with the given external id already exists in the given gradebook. This will give external assessment systems a chance to avoid the ConflictingExternalIdException.

Parameters:
gradebookUid - The gradebook's unique identifier
externalId - The external assessment's external identifier
Throws:
GradebookNotFoundException

isGradebookDefined

boolean isGradebookDefined(String gradebookUid)
Checks to see whether a gradebook with the given uid exists.

Parameters:
gradebookUid - The gradebook UID to check
Returns:
Whether the gradebook exists

setExternalAssessmentToGradebookAssignment

void setExternalAssessmentToGradebookAssignment(String gradebookUid,
                                                String externalId)
Break the connection between an external assessment engine and an assessment which it created, giving it up to the Gradebook application to control from now on.

Parameters:
gradebookUid -
externalId -


Copyright © 2011 Sakai Project. All Rights Reserved.