public interface CourseCatalogBatchAdminSession extends CourseCatalogAdminSession
This session creates, updates, and deletes CourseCatalogs
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 a
CourseCatalog,
a CourseCatalogForm
is requested
using getCourseCatalogFormsForCreate()
specifying the
desired record Types
or none if no record Types
are needed. Each of the returned CourseCatalogForms
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
CourseCatalogForm
is submiited to a create operation, it cannot be
reused with another create operation unless the first operation was
unsuccessful. Each CourseCatalogForm
corresponds to an
attempted transaction.
The CourseCatalogForms
returned from
getCourseCatalogFormsForCreate()
may be linked to the originating
request through the peer Ids
of the
CourseCatalogForm.
In the case where there may be duplicates, any
CourseCatalogForm
of the same peer Ids
may
be used for a create operation.
Once a batch of CourseCatalogForms
are submitted for
create, a CreateResponse
is returned for each
CourseCatalogForm,
although the ordering is not defined. Only
errors that pertain to the entire create operation are returned from
createCourseCatalogs(),
errors specific to an individual
CourseCatalogForm
are indicated in the corresponding
CreateResponse.
CreateResponses
may be linked to
the originating CourseCatalogForm
through the
CourseCatalogForm
Id
.
For updates, CourseCatalogForms
are requested to the
CourseCatalog
Id
that is to be updated using
getCourseCatalogFormsForUpdate()
where the reference
Id
in the CourseCatalogForm
may be used to link the
request. Similarly, the CourseCatalogForm
has metadata
about the data that can be updated and it can perform validation before
submitting the update. The CourseCatalogForm
can only be
used once for a successful update and cannot be reused.
Once a batch of CourseCatalogForms
are submitted for
update, an UpdateResponse
is returned for each
CourseCatalogForm,
although the ordering is not defined. Only
errors that pertain to the entire update operation are returned from
updateCourseCatalogs(),
errors specific to an individual
CourseCatalogForm
are indicated in the corresponding
UpdateResponse.
UpdateResponses
may be linked to
the originating CourseCatalogForm
through the
CourseCatalogForm
Id.
The delete operations delete CourseCatalogs
in bulk. To
unmap a CourseCatalog
from the current Calendar,
the CourseCatalogCalendarAssignmentSession
should
be used. These delete operations attempt to remove the
CourseCatalog
itself thus removing it from all known
Calendar
catalogs. Bulk delete operations return the results in
DeleteResponses.
Modifier and Type | Method and Description |
---|---|
AliasResponseList |
aliasCourseCatalogs(AliasRequestList aliasRequests)
Adds an
Id to a CourseCatalog for the
purpose of creating compatibility. |
CreateResponseList |
createCourseCatalogs(CourseCatalogBatchFormList courseCatalogForms)
Creates a new set of
CourseCatalogs. |
DeleteResponseList |
deleteAllCourseCatalogs()
Deletes all
CourseCatalogs in this Calendar
. |
DeleteResponseList |
deleteCourseCatalogs(IdList courseCatalogIds)
Deletes course catalogs for the given
Ids. |
CourseCatalogBatchFormList |
getCourseCatalogFormsForCreate(long number,
Type[] courseCatalogRecordTypes)
Gets the course catalog forms for creating a bunch of new course
catalogs.
|
CourseCatalogBatchFormList |
getCourseCatalogFormsForUpdate(IdList courseCatalogIds)
Gets the course catalog forms for updating an existing set of course
catalogs.
|
UpdateResponseList |
updateCourseCatalogs(CourseCatalogBatchFormList courseCatalogForms)
Updates existing course catalogs.
|
aliasCourseCatalog, canCreateCourseCatalogs, canCreateCourseCatalogWithRecordTypes, canDeleteCourseCatalogs, canManageCourseCatalogAliases, canUpdateCourseCatalogs, createCourseCatalog, deleteCourseCatalog, getCourseCatalogFormForCreate, getCourseCatalogFormForUpdate, updateCourseCatalog
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
CourseCatalogBatchFormList getCourseCatalogFormsForCreate(long number, Type[] courseCatalogRecordTypes) throws OperationFailedException, PermissionDeniedException
number
- the number of forms to retrievecourseCatalogRecordTypes
- array of course catalog record types
to be included in each create operation or an empty list if
noneNullArgumentException
- courseCatalogRecordTypes
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failureUnsupportedException
- unable to request forms with
given record typesmandatory
- This method must be implemented. CreateResponseList createCourseCatalogs(CourseCatalogBatchFormList courseCatalogForms) throws OperationFailedException, PermissionDeniedException
CourseCatalogs.
This method
returns an error if the entire operation fails. Otherwise, the status
of an individual create operation is indicated in the
BatchCreateResponse
.courseCatalogForms
- the course catalog formsNullArgumentException
- courseCatalogForms
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. CourseCatalogBatchFormList getCourseCatalogFormsForUpdate(IdList courseCatalogIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
courseCatalogIds
- the Ids
of the
CourseCatalog
NotFoundException
- a courseCatalogId
is
not foundNullArgumentException
- courseCatalogIds
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. UpdateResponseList updateCourseCatalogs(CourseCatalogBatchFormList courseCatalogForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse
.courseCatalogForms
- the form containing the elements to be
updatedNullArgumentException
- courseCatalogForms
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllCourseCatalogs() throws OperationFailedException, PermissionDeniedException
CourseCatalogs
in this Calendar
.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteCourseCatalogs(IdList courseCatalogIds) throws OperationFailedException, PermissionDeniedException
Ids.
courseCatalogIds
- the Ids
of the course catalogs
to deleteNullArgumentException
- courseCatalogIds
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AliasResponseList aliasCourseCatalogs(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id
to a CourseCatalog
for the
purpose of creating compatibility. The primary Id
of
the CourseCatalog
is determined by the provider. The
new Id
is an alias to the primary Id.
If
the alias is a pointer to another course catalog, it is reassigned to
the given course catalog Id.
aliasRequests
- the alias requestsNullArgumentException
- aliasRequests
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.