OSID Logo
OSID Specifications
course registration batch package
Version 3.0.0
Interfaceosid.course.registration.batch.CourseRegistrationBatchAdminSession
Implementsosid.course.registration.CourseRegistrationAdminSession
Used Byosid.course.registration.batch.CourseRegistrationBatchManager
osid.course.registration.batch.CourseRegistrationBatchProxyManager
Description

This session creates, updates, and deletes CourseRegistration in bulk. The data for create and update is provided by the consumer via the form object. OsidForms are requested for each create or update and may not be reused.

Create and update operations differ in their usage. To create an CourseRegistration , an CourseRegistrationForm is requested using getCourseRegistrationFormsForCreate() specifying the desired registration, course offering, student, and record Types or none if no record Types are needed. Each of the returned CourseRegistrationForms will indicate that it is to be used with a create operation and can be used to examine metdata or validate data prior to creation. Once a CourseRegistrationForm is submiited to a create operation, it cannot be reused with another create operation unless the first operation was unsuccessful. Each CourseRegistrationForm corresponds to an attempted transaction.

The CourseRegistrationForms returned from getCourseRegistrationFormsForCreate() may be linked to the originating request through the peer Ids of the CourseRegistrationForm . In the case where there may be duplicates, any CourseRegistrationForm of the same peer Ids may be used for a create operation.

Once a batch of CourseRegistrationForms are submitted for create, a CreateResponse is returned for each CourseRegistrationForm , although the ordering is not defined. Only errors that pertain to the entire create operation are returned from createCourseRegistrations() , errors specific to an individual CourseRegistrationForm are indicated in the corresponding CreateResponse . CreateResponses may be linked to the originating CourseRegistrationForm through the CourseRegistrationForm Id .

For updates, CourseRegistrationForms are requested to the CourseRegistration Id that is to be updated using getCourseRegistrationFormsForUpdate() where the reference Id in the CourseRegistrationForm may be used to link the request. Similarly, the CourseRegistrationForm has metadata about the data that can be updated and it can perform validation before submitting the update. The CourseRegistrationForm can only be used once for a successful update and cannot be reused.

Once a batch of CourseRegistrationForms are submitted for update, an UpdateResponse is returned for each CourseRegistrationForm , although the ordering is not defined. Only errors that pertain to the entire update operation are returned from updateCourseRegistrations() , errors specific to an individual CourseRegistrationForm are indicated in the corresponding UpdateResponse . UpdateResponses may be linked to the originating CourseRegistrationForm through the CourseRegistrationForm Id .

The delete operations delete CourseRegistrationForms in bulk. To unmap a CourseRegistrationForm from the current CourseCatalog , the CourseRegistrationFormCourseCatalogAssignmentSession should be used. These delete operations attempt to remove the CourseRegistration itself thus removing it from all known CourseCatalog catalogs. Bulk delete operations return the results in DeleteResponses .

MethodgetCourseRegistrationFormsForCreate
Description

Gets the course registration forms for creating a bunch of new course registrations. A form is returned for each course offering and resource pair.

Parametersosid.course.registration.batch.CourseRegistrationPeerListpeersthe relationship peers
osid.type.Type[]courseRegistrationRecordTypesarray of course registration record types to be included in each create operation or an empty list if none
Returnosid.course.registration.batch.CourseRegistrationBatchFormListthe course registration forms
ErrorsNOT_FOUNDa registrationId or resourceId is not found
NULL_ARGUMENTpeers or courseRegistrationRecordTypes is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTEDunable to request forms with given record types
CompliancemandatoryThis method must be implemented.
MethodcreateCourseRegistrations
Description

Creates a new set of CourseRegistrations . This method returns an error if the entire operation fails. Otherwise, the status of an individual create operation is indicated in the BatchCreateResponse .

Parametersosid.course.registration.batch.CourseRegistrationBatchFormListcourseRegistrationFormsthe course registration forms
Returnosid.transaction.batch.CreateResponseListthe create responses
ErrorsNULL_ARGUMENTcourseRegistrationForms is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseRegistrationFormsForUpdate
Description

Gets the course registration forms for updating an existing set of course registrations. A new course registration form should be requested for each update transaction.

Parametersosid.id.IdListcourseRegistrationIdsthe Ids of the CourseRegistrations
Returnosid.course.registration.batch.CourseRegistrationBatchFormListthe course registration form
ErrorsNOT_FOUNDa courseRegistrationId is not found
NULL_ARGUMENTcourseRegistrationIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodupdateCourseRegistrations
Description

Updates existing course registrations. This method returns an error if the entire operation fails. Otherwise, the status of an individual update operation is indicated in the BatchCreateResponse .

Parametersosid.course.registration.batch.CourseRegistrationBatchFormListcourseRegistrationFormsthe form containing the elements to be updated
Returnosid.transaction.batch.UpdateResponseListthe update responses
ErrorsNULL_ARGUMENTcourseRegistrationForms is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethoddeleteAllCourseRegistrations
Description

Deletes all CourseRegistrations in this CourseCatalog .

Returnosid.transaction.batch.DeleteResponseListthe delete responses
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethoddeleteCourseRegistrations
Description

Deletes course registrations for the given Ids .

Parametersosid.id.IdListcourseRegistrationIdsthe Ids of the course registrations to delete
Returnosid.transaction.batch.DeleteResponseListthe delete responses
ErrorsNULL_ARGUMENTcourseRegistrationIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethoddeleteCourseRegistrationsForRegistration
Description

Deletes course registrations for the given registration.

Parametersosid.id.IdregistrationIdan Id of a registration
Returnosid.transaction.batch.DeleteResponseListthe delete responses
ErrorsNULL_ARGUMENTregistrationId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethoddeleteCourseRegistrationsForCourseOffering
Description

Deletes course registrations for the given course offering.

Parametersosid.id.IdcourseOfferingIdan Id of a course offering
Returnosid.transaction.batch.DeleteResponseListthe delete responses
ErrorsNULL_ARGUMENTcourseOfferingId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethoddeleteCourseRegistrationsForStudent
Description

Deletes course registrations for the given student resource.

Parametersosid.id.IdresourceIdan Id of a resource
Returnosid.transaction.batch.DeleteResponseListthe delete responses
ErrorsNULL_ARGUMENTresourceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethoddeleteIneffectiveCourseRegistrationsByDate
Description

Deletes course registrations expired before the given date.

Parametersosid.calendaring.DateTimedatea date
Returnosid.transaction.batch.DeleteResponseListthe delete responses
ErrorsNULL_ARGUMENTdate is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodaliasCourseRegistrations
Description

Adds an Id to a CourseRegistration for the purpose of creating compatibility. The primary Id of the CourseRegistration is determined by the provider. The new Id is an alias to the primary Id . If the alias is a pointer to another course registration, it is reassigned to the given course registration Id .

Parametersosid.transaction.batch.AliasRequestListaliasRequeststhe alias requests
Returnosid.transaction.batch.AliasResponseListthe alias responses
ErrorsNULL_ARGUMENTaliasRequests is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.