public interface FloorBatchAdminSession extends FloorAdminSession
This session creates, updates, and deletes Floors
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
Floor,
a FloorForm
is requested using
getFloorFormsForCreate()
specifying the desired building and
record Types
or none if no record Types
are
needed. Each of the returned FloorForms
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 FloorForm
is submiited to a create operation, it cannot be reused with
another create operation unless the first operation was unsuccessful. Each
FloorForm
corresponds to an attempted transaction.
The FloorForms
returned from
getFloorFormsForCreate()
may be linked to the originating request
through the peer Ids
of the FloorForm.
In
the case where there may be duplicates, any FloorForm
of
the same peer Ids
may be used for a create operation.
Once a batch of FloorForms
are submitted for create, a
CreateResponse
is returned for each FloorForm,
although the ordering is not defined. Only errors that pertain to
the entire create operation are returned from createFloors(),
errors specific to an individual FloorForm
are
indicated in the corresponding CreateResponse.
CreateResponses
may be linked to the originating FloorForm
through the FloorForm
Id
.
For updates, FloorForms
are requested to the
Floor
Id
that is to be updated using
getFloorFormsForUpdate()
where the reference Id
in
the FloorForm
may be used to link the request. Similarly,
the FloorForm
has metadata about the data that can be
updated and it can perform validation before submitting the update. The
FloorForm
can only be used once for a successful update and
cannot be reused.
Once a batch of FloorForms
are submitted for update, an
UpdateResponse
is returned for each FloorForm,
although the ordering is not defined. Only errors that pertain to
the entire update operation are returned from updateFloors(),
errors specific to an individual FloorForm
are
indicated in the corresponding UpdateResponse.
UpdateResponses
may be linked to the originating FloorForm
through the FloorForm
Id.
The delete operations delete Floors
in bulk. To unmap a
Floor
from the current Campus,
the
FloorCampusAssignmentSession
should be used. These delete
operations attempt to remove the Floor
itself thus removing
it from all known Campus
catalogs. Bulk delete operations
return the results in DeleteResponses.
Modifier and Type | Method and Description |
---|---|
AliasResponseList |
aliasFloors(AliasRequestList aliasRequests)
Adds an
Id to a Floor for the purpose of
creating compatibility. |
CreateResponseList |
createFloors(FloorBatchFormList floorForms)
Creates a new set of
Floors. |
DeleteResponseList |
deleteAllFloors()
Deletes all
Floors in this Campus . |
DeleteResponseList |
deleteFloors(IdList floorIds)
Deletes floors for the given
Ids. |
DeleteResponseList |
deleteFloorsForBuilding(Id buildingId)
Deletes all floors for the given building.
|
DeleteResponseList |
deleteIneffectiveFloorsByDate(DateTime date)
Deletes floors expired before the given date.
|
FloorBatchFormList |
getFloorFormsForCreate(IdList buildingIds,
Type[] floorRecordTypes)
Gets the floor forms for creating a bunch of new floors.
|
FloorBatchFormList |
getFloorFormsForUpdate(IdList floorIds)
Gets the floor forms for updating an existing set of floors.
|
UpdateResponseList |
updateFloors(FloorBatchFormList floorForms)
Updates existing floors.
|
aliasFloor, canCreateFloors, canCreateFloorWithRecordTypes, canDeleteFloors, canManageFloorAliases, canUpdateFloors, createFloor, deleteFloor, getCampus, getCampusId, getFloorFormForCreate, getFloorFormForUpdate, updateFloor
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
FloorBatchFormList getFloorFormsForCreate(IdList buildingIds, Type[] floorRecordTypes) throws NotFoundException, OperationFailedException, PermissionDeniedException
Id.
buildingIds
- an Id
of a buildingfloorRecordTypes
- array of floor record types to be included in
each create operation or an empty list if noneNotFoundException
- a buildingId
is not
foundNullArgumentException
- buildingId
or
floorRecordTypes
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failureUnsupportedException
- unable to request forms with
given record typesmandatory
- This method must be implemented. CreateResponseList createFloors(FloorBatchFormList floorForms) throws OperationFailedException, PermissionDeniedException
Floors.
This method returns an
error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateResponse
.floorForms
- the floor formsNullArgumentException
- floorForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. FloorBatchFormList getFloorFormsForUpdate(IdList floorIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
floorIds
- the Ids
of the Floor
NotFoundException
- a floorId
is not
foundNullArgumentException
- floorIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. UpdateResponseList updateFloors(FloorBatchFormList floorForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse
.floorForms
- the form containing the elements to be updatedNullArgumentException
- floorForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllFloors() throws OperationFailedException, PermissionDeniedException
Floors
in this Campus
.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteFloors(IdList floorIds) throws OperationFailedException, PermissionDeniedException
Ids.
floorIds
- the Ids
of the floors to deleteNullArgumentException
- floorIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteFloorsForBuilding(Id buildingId) throws OperationFailedException, PermissionDeniedException
buildingId
- an Id
of a buildingNullArgumentException
- buildingId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteIneffectiveFloorsByDate(DateTime date) throws OperationFailedException, PermissionDeniedException
date
- a dateNullArgumentException
- date
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AliasResponseList aliasFloors(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id
to a Floor
for the purpose of
creating compatibility. The primary Id
of the
Floor
is determined by the provider. The new Id
is an alias to the primary Id.
If the alias is a
pointer to another floor, it is reassigned to the given entry
Id.
aliasRequests
- the alias requestsNullArgumentException
- aliasRequests
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.