| Interface | osid.room.construction.ProjectLookupSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session provides methods for retrieving  This session defines views that offer differing behaviors when retrieving multiple objects. 
  | ||
| Method | getCampusId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  Campus Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getCampus | ||
| Description | 
                     Gets the   | ||
| Return | osid.room.Campus | the campus | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canLookupProjects | ||
| Description | 
                     Tests if this user can perform   | ||
| Return | boolean |  false  if lookup methods are not authorized,  true 
 otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | useComparativeProjectView | ||
| Description | 
                     The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | usePlenaryProjectView | ||
| Description | 
                     A complete view of the   | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useFederatedCampusView | ||
| Description | 
                     Federates the view for methods in this session. A federated view will include projects in campuses which are children of this campus in the campus hierarchy.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useIsolatedCampusView | ||
| Description | 
                     Isolates the view for methods in this session. An isolated view restricts retrievals to this campus only.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useEffectiveProjectView | ||
| Description | 
                     Only projects whose effective dates are current are returned by methods in this session  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useAnyEffectiveProjectView | ||
| Description | 
                     Projects of any effective dates are returned by all methods in this session.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getProject | ||
| Description | 
                     Gets the    In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.id.Id | projectId |  Id  of the  Project   | 
| Return | osid.room.construction.Project | the project | |
| Errors | NOT_FOUND |  projectId  not found  |                 |
| NULL_ARGUMENT |  projectId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getProjectsByIds | ||
| Description | 
                     Gets a    In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.id.IdList | projectIds | the list of  Ids  to retrieve  | 
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | NOT_FOUND | an  Id was  not found  |                 |
| NULL_ARGUMENT |  projectIds  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsByGenusType | ||
| Description | 
                     Gets a    In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.type.Type | projectGenusType | a project genus type | 
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | NULL_ARGUMENT |  projectGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsByParentGenusType | ||
| Description | 
                     Gets a    In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.type.Type | projectGenusType | a project genus type | 
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | NULL_ARGUMENT |  projectGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsByRecordType | ||
| Description | 
                     Gets a    In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.type.Type | projectRecordType | a project record type | 
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | NULL_ARGUMENT |  projectRecordType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsOnDate | ||
| Description | 
                     Gets a list of all projects effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known projects or an error results. Otherwise, the returned list may contain only those projects that are accessible through this session. In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.calendaring.DateTime | from | start of date range | 
osid.calendaring.DateTime | to | end of date range | |
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | INVALID_ARGUMENT |  from  is greater than  to   |                 |
| NULL_ARGUMENT |  from  or  to  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsByGenusTypeOnDate | ||
| Description | 
                     Gets a list of all projects with a genus type and effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known projects or an error results. Otherwise, the returned list may contain only those projects that are accessible through this session. In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.type.Type | projectGenusType | a project genus type | 
osid.calendaring.DateTime | from | start of date range | |
osid.calendaring.DateTime | to | end of date range | |
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | INVALID_ARGUMENT |  from  is greater than  to   |                 |
| NULL_ARGUMENT |  projectGenusType, from  or  to  is  null 
  |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsForBuilding | ||
| Description | 
                     Gets a    In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.id.Id | buildingId | a building  Id   | 
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | NULL_ARGUMENT |  buildingId  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsByGenusTypeForBuilding | ||
| Description | 
                     Gets a    In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.id.Id | buildingId | a building  Id   | 
osid.type.Type | projectGenusType | a project genus type | |
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | NULL_ARGUMENT |  buildingId  or  projectGenusType  is  null 
  |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsForBuildingOnDate | ||
| Description | 
                     Gets a list of all projects for a building effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known projects or an error results. Otherwise, the returned list may contain only those projects that are accessible through this session. In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.id.Id | buildingId | a building  Id   | 
osid.calendaring.DateTime | from | start of date range | |
osid.calendaring.DateTime | to | end of date range | |
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | INVALID_ARGUMENT |  from  is greater than  to   |                 |
| NULL_ARGUMENT |  buildingId, from  or  to  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjectsByGenusTypeForBuildingOnDate | ||
| Description | 
                     Gets a list of all projects for a building with a genus type and effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known projects or an error results. Otherwise, the returned list may contain only those projects that are accessible through this session. In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Parameters | osid.id.Id | buildingId | a building  Id   | 
osid.type.Type | projectGenusType | a project genus type | |
osid.calendaring.DateTime | from | start of date range | |
osid.calendaring.DateTime | to | end of date range | |
| Return | osid.room.construction.ProjectList | the returned  Project  list  | |
| Errors | INVALID_ARGUMENT |  from  is greater than  to   |                 |
| NULL_ARGUMENT |  buildingId, projectGenusType, from  or  to  is 
 null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProjects | ||
| Description | 
                     Gets all  In plenary mode, the returned list contains all known projects or an error results. Otherwise, the returned list may contain only those projects that are accessible through this session. In effective mode, projects are returned that are currently effective. In any effective mode, effective projects and those currently expired are returned.  | ||
| Return | osid.room.construction.ProjectList | a list of  Projects   | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |