| Interface | osid.contact.ContactQuerySession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session provides methods for searching   Contacts may have a query record indicated by their 
                respective record types. The query record is accessed via the 
                  | ||
| Method | getAddressBookId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  AddressBook Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getAddressBook | ||
| Description | 
                     Gets the   | ||
| Return | osid.contact.AddressBook | the address book | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canSearchContacts | ||
| Description | 
                     Tests if this user can perform susbcription searches. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known all methods in this session will result in a   | ||
| Return | boolean |  false  if search methods are not authorized,  true 
 otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | useFederatedAddressBookView | ||
| Description | 
                     Federates the view for methods in this session. A federated view will include contacts in address books which are children of this address book in the address book hierarchy.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useIsolatedAddressBookView | ||
| Description | 
                     Isolates the view for methods in this session. An isolated view restricts retrievals to this address book only.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getContactQuery | ||
| Description | 
                     Gets a contact query.  | ||
| Return | osid.contact.ContactQuery | the contact query | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getContactsByQuery | ||
| Description | 
                     Gets a list of contacts matching the given contact query.  | ||
| Parameters | osid.contact.ContactQuery | contactQuery | the contact query | 
| Return | osid.contact.ContactList | the returned  ContactList   | |
| Errors | NULL_ARGUMENT |  contactQuery  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| UNSUPPORTED |  contactQuery  is not of this service  |                 ||
| Compliance | mandatory | This method must be implemented. | |