Package org.silverpeas.components.resourcesmanager.service

## Interface ResourcesManager

- All Known Implementing Classes:
    `SimpleResourcesManager`

      public interface ResourcesManager

  Manager of the resources in a given Resource Manager application
  Author:
    ehugonnet

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `createCategory​(Category category)` |
    `void` | `createResource​(Resource resource)` |
    `void` | `deleteCategory​(Long id, String componentId)` |
    `void` | `deleteReservation​(Long id, String componentId)` |
    `void` | `deleteResource​(Long id, String componentId)` |
    `List<Resource>` | `getBookableResources​(String componentId)` |
    `List<Category>` | `getCategories​(String instanceId)` |
    `Category` | `getCategory​(Long id)` |
    `List<ResourceValidator>` | `getManagers​(long resourceId)` |
    `Reservation` | `getReservation​(String instanceId, Long reservationId)` |
    `List<Reservation>` | `getReservationForValidation​(String instanceId, String userId, org.silverpeas.core.date.period.Period period)` |
    `List<Reservation>` | `getReservationOfUser​(String instanceId, Integer userId, org.silverpeas.core.date.period.Period period)` |
    `List<Reservation>` | `getReservations​(String instanceId)` |
    `List<Reservation>` | `getReservationWithResource​(String instanceId, Integer userId, org.silverpeas.core.date.period.Period period, Long resourceId)` |
    `List<Reservation>` | `getReservationWithResourcesOfCategory​(String instanceId, Integer userId, org.silverpeas.core.date.period.Period period, Long categoryId)` |
    `List<Resource>` | `getReservedResources​(String instanceId, List<Long> resources, Date startDate, Date endDate)` |
    `List<Resource>` | `getReservedResources​(String instanceId, List<Long> aimedResourceIds, Date startDate, Date endDate, Long reservationIdToSkip)` |
    `Resource` | `getResource​(Long id)` |
    `String` | `getResourceOfReservationStatus​(Long resourceId, Long reservationId)` |
    `List<Resource>` | `getResourcesByCategory​(Long categoryId)` |
    `List<Resource>` | `getResourcesOfReservation​(String instanceId, Long reservationId)` |
    `List<Resource>` | `getResourcesReservable​(String instanceId, Date startDate, Date endDate)` |
    `List<Reservation>` | `getUserReservations​(String instanceId, String userId)` |
    `void` | `indexResourceManager​(String instanceId)` |
    `boolean` | `isManager​(long userId, long resourceId)` |
    `void` | `saveReservation​(Reservation reservation, List<Long> resourceIds)` |
    `void` | `updateCategory​(Category category)` |
    `void` | `updateReservation​(Reservation reservation, List<Long> resourceIds, boolean updateDate)` |
    `void` | `updateReservedResourceStatus​(long reservationId, long resourceId, String status)` |
    `void` | `updateResource​(Resource resource, List<Long> managerIds)` |

- - ### Method Detail

    - #### getCategories

          List<Category> getCategories​(String instanceId)

    - #### createCategory

          void createCategory​(Category category)

    - #### deleteCategory

          void deleteCategory​(Long id,
                              String componentId)

    - #### getCategory

          Category getCategory​(Long id)

    - #### updateCategory

          void updateCategory​(Category category)

    - #### createResource

          void createResource​(Resource resource)

    - #### getResourcesByCategory

          List<Resource> getResourcesByCategory​(Long categoryId)

    - #### getBookableResources

          List<Resource> getBookableResources​(String componentId)

    - #### deleteResource

          void deleteResource​(Long id,
                              String componentId)

    - #### getResource

          Resource getResource​(Long id)

    - #### updateResource

          void updateResource​(Resource resource,
                              List<Long> managerIds)

    - #### getResourcesReservable

          List<Resource> getResourcesReservable​(String instanceId,
                                                Date startDate,
                                                Date endDate)

    - #### getReservedResources

          List<Resource> getReservedResources​(String instanceId,
                                              List<Long> resources,
                                              Date startDate,
                                              Date endDate)

    - #### saveReservation

          void saveReservation​(Reservation reservation,
                               List<Long> resourceIds)

    - #### getReservations

          List<Reservation> getReservations​(String instanceId)

    - #### getResourcesOfReservation

          List<Resource> getResourcesOfReservation​(String instanceId,
                                                   Long reservationId)

    - #### deleteReservation

          void deleteReservation​(Long id,
                                 String componentId)

    - #### getReservation

          Reservation getReservation​(String instanceId,
                                     Long reservationId)

    - #### updateReservation

          void updateReservation​(Reservation reservation,
                                 List<Long> resourceIds,
                                 boolean updateDate)

    - #### getReservedResources

          List<Resource> getReservedResources​(String instanceId,
                                              List<Long> aimedResourceIds,
                                              Date startDate,
                                              Date endDate,
                                              Long reservationIdToSkip)

    - #### getUserReservations

          List<Reservation> getUserReservations​(String instanceId,
                                                String userId)

    - #### getReservationOfUser

          List<Reservation> getReservationOfUser​(String instanceId,
                                                 Integer userId,
                                                 org.silverpeas.core.date.period.Period period)

    - #### getReservationForValidation

          List<Reservation> getReservationForValidation​(String instanceId,
                                                        String userId,
                                                        org.silverpeas.core.date.period.Period period)

    - #### getReservationWithResourcesOfCategory

          List<Reservation> getReservationWithResourcesOfCategory​(String instanceId,
                                                                  Integer userId,
                                                                  org.silverpeas.core.date.period.Period period,
                                                                  Long categoryId)

    - #### getReservationWithResource

          List<Reservation> getReservationWithResource​(String instanceId,
                                                       Integer userId,
                                                       org.silverpeas.core.date.period.Period period,
                                                       Long resourceId)

    - #### indexResourceManager

          void indexResourceManager​(String instanceId)

    - #### getManagers

          List<ResourceValidator> getManagers​(long resourceId)

    - #### getResourceOfReservationStatus

          String getResourceOfReservationStatus​(Long resourceId,
                                                Long reservationId)

    - #### updateReservedResourceStatus

          void updateReservedResourceStatus​(long reservationId,
                                            long resourceId,
                                            String status)

    - #### isManager

          boolean isManager​(long userId,
                            long resourceId)