public interface InquiryBatchAdminSession extends InquiryAdminSession
This session creates, updates, and deletes Inquiries
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
Inquiry,
an InquiryForm
is requested using
getInquiryFormsForCreate()
specifying the desired queues,
resources, and record Types
or none if no record
Types
are needed. Each of the returned InquiryForms
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 an
InquiryForm
is submiited to a create operation, it cannot be
reused with another create operation unless the first operation was
unsuccessful. Each InquiryForm
corresponds to an attempted
transaction.
The InquiryForms
returned from
getInquiryFormsForCreate()
may be linked to the originating
request through the peer Ids
of the InquiryForm.
In the case where there may be duplicates, any InquiryForm
of the same peer Ids
may be used for a create
operation.
Once a batch of InquiryForms
are submitted for create,
a CreateResponse
is returned for each InquiryForm,
although the ordering is not defined. Only errors that pertain to
the entire create operation are returned from createInquiry(),
errors specific to an individual InquiryForm
are
indicated in the corresponding CreateResponse.
CreateResponses
may be linked to the originating
InquiryForm
through the InquiryForm
Id
.
For updates, InquiryForms
are requested to the
Inquiry
Id
that is to be updated using
getInquiryFormsForUpdate()
where the reference Id
in the InquiryForm
may be used to link the request.
Similarly, the InquiryForm
has metadata about the data that
can be updated and it can perform validation before submitting the update.
The InquiryForm
can only be used once for a successful
update and cannot be reused.
Once a batch of InquiryForms
are submitted for update,
an UpdateResponse
is returned for each InquiryForm,
although the ordering is not defined. Only errors that pertain to
the entire update operation are returned from updateInquiries(),
errors specific to an individual InquiryForm
are
indicated in the corresponding UpdateResponse.
UpdateResponses
may be linked to the originating
InquiryForm
through the InquiryForm
Id.
The delete operations delete Inquiries
in bulk. To
unmap an Inquiry
from the current Inquest,
the InquiryInquestAssignmentSession
should be used. These
delete operations attempt to remove the Inquiry
itself thus
removing it from all known Inquest
catalogs. Bulk delete
operations return the results in DeleteResponses.
Modifier and Type | Method and Description |
---|---|
AliasResponseList |
aliasInquiries(AliasRequestList aliasRequests)
Adds an
Id to an Inquiry for the purpose
of creating compatibility. |
CreateResponseList |
createInquiries(InquiryBatchFormList inquiryForms)
Creates a new set of
Inquiries. |
DeleteResponseList |
deleteAllInquiries()
Deletes all
Inquiries in this Inquests. |
DeleteResponseList |
deleteInquiries(IdList inquiryIds)
Deletes inquiries for the given
Ids. |
DeleteResponseList |
deleteInquiriesForAudit(Id auditId)
Deletes inquiries for the given audit.
|
InquiryBatchFormList |
getInquiryFormsForCreate(IdList auditIds,
Type[] inquiryRecordTypes)
Gets the inquiry forms for creating a bunch of new inquiries.
|
InquiryBatchFormList |
getInquiryFormsForUpdate(IdList inquiryIds)
Gets the inquiry forms for updating an existing set of inquiries.
|
UpdateResponseList |
updateInquiries(InquiryBatchFormList inquiryForms)
Updates existing inquiries.
|
aliasInquiry, canCreateInquiries, canCreateInquiryWithRecordTypes, canDeleteInquiries, canManageInquiryAliases, canSequenceInquiries, canUpdateInquiries, createInquiry, deleteInquiry, getInquest, getInquestId, getInquiryFormForCreate, getInquiryFormForUpdate, moveInquiryAhead, moveInquiryBehind, orderInquiries, updateInquiry
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
InquiryBatchFormList getInquiryFormsForCreate(IdList auditIds, Type[] inquiryRecordTypes) throws NotFoundException, OperationFailedException, PermissionDeniedException
auditIds
- a list of audit Ids
inquiryRecordTypes
- array of inquiry record types to be
included in each create operation or an empty list if noneNotFoundException
- an auditId
is not
foundNullArgumentException
- auditIds
or
inquiryRecordTypes
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failureUnsupportedException
- unable to request forms with
given record typesmandatory
- This method must be implemented. CreateResponseList createInquiries(InquiryBatchFormList inquiryForms) throws OperationFailedException, PermissionDeniedException
Inquiries.
This method returns an
error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateResponse
.inquiryForms
- the inquiry formsNullArgumentException
- inquiryForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. InquiryBatchFormList getInquiryFormsForUpdate(IdList inquiryIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
inquiryIds
- the Ids
of the Inquiries
NotFoundException
- an inquiryId
is not
foundNullArgumentException
- inquiryIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. UpdateResponseList updateInquiries(InquiryBatchFormList inquiryForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse
.inquiryForms
- the form containing the elements to be updatedNullArgumentException
- inquiryForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllInquiries() throws OperationFailedException, PermissionDeniedException
Inquiries
in this Inquests.
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteInquiries(IdList inquiryIds) throws OperationFailedException, PermissionDeniedException
Ids.
inquiryIds
- the Ids
of the inquiries to deleteNullArgumentException
- inquiryIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteInquiriesForAudit(Id auditId) throws OperationFailedException, PermissionDeniedException
auditId
- the Id
of an auditNullArgumentException
- auditId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AliasResponseList aliasInquiries(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id
to an Inquiry
for the purpose
of creating compatibility. The primary Id
of the
Inquiry
is determined by the provider. The new Id
is an alias to the primary Id.
If the alias is
a pointer to another inquiry, it is reassigned to the given inquiry
Id.
aliasRequests
- the alias requestsNullArgumentException
- aliasRequests
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.