Class AgendaSettingsRest

java.lang.Object
org.exoplatform.agenda.rest.AgendaSettingsRest
All Implemented Interfaces:
org.exoplatform.services.rest.resource.ResourceContainer

public class AgendaSettingsRest extends Object implements org.exoplatform.services.rest.resource.ResourceContainer
  • Constructor Details

    • AgendaSettingsRest

      public AgendaSettingsRest(org.exoplatform.agenda.service.AgendaUserSettingsService agendaUserSettingsService, org.exoplatform.agenda.service.AgendaRemoteEventService agendaRemoteEventService, AgendaWebSocketService agendaWebSocketService, org.exoplatform.social.core.manager.IdentityManager identityManager)
  • Method Details

    • getUserSettings

      @RolesAllowed("users") public javax.ws.rs.core.Response getUserSettings()
    • saveUserSettings

      @RolesAllowed("users") public javax.ws.rs.core.Response saveUserSettings(org.exoplatform.agenda.model.AgendaUserSettings agendaUserSettings)
    • saveUserTimeZoneSetting

      @RolesAllowed("users") public javax.ws.rs.core.Response saveUserTimeZoneSetting(String timeZoneId)
    • saveRemoteProviderStatus

      @RolesAllowed("administrators") public javax.ws.rs.core.Response saveRemoteProviderStatus(String connectorName, boolean enabled, boolean isOauth)
    • saveRemoteProviderApiKey

      @RolesAllowed("administrators") public javax.ws.rs.core.Response saveRemoteProviderApiKey(String connectorName, String apiKey)
    • saveRemoteProviderSecretKey

      @RolesAllowed("administrators") public javax.ws.rs.core.Response saveRemoteProviderSecretKey(String connectorName, String secretKey)
    • saveUserConnectorSettings

      @RolesAllowed("users") public javax.ws.rs.core.Response saveUserConnectorSettings(String connectorName, String connectorUserId)
    • deleteUserConnectorSettings

      @RolesAllowed("users") public javax.ws.rs.core.Response deleteUserConnectorSettings(String connectorName)
    • saveEmbedMapProvider

      @RolesAllowed("administrators") public javax.ws.rs.core.Response saveEmbedMapProvider(String providerId)
    • removeEmbedMapProvider

      @RolesAllowed("administrators") public javax.ws.rs.core.Response removeEmbedMapProvider()
    • getAvailabilitySharing

      @RolesAllowed("users") public javax.ws.rs.core.Response getAvailabilitySharing()
      Returns the authenticated user's availability sharing choice.

      It answers for the caller and for nobody else: the identity is taken from the session, never from a parameter, so this endpoint cannot be used to learn what anyone else chose.

      Returns:
      200 with {"shareAvailability": "..."}, 500 on failure
    • saveAvailabilitySharing

      @RolesAllowed("users") public javax.ws.rs.core.Response saveAvailabilitySharing(String shareAvailability)
      Records the authenticated user's availability sharing choice.

      The identity written to is the caller's own, taken from the session: this endpoint cannot change anyone else's choice. An unrecognised value is refused with a 400 rather than being coerced onto a default, because coercing it would silently widen or narrow a disclosure the user did not ask for.

      Parameters:
      shareAvailability - the wanted value: shared-spaces or nobody
      Returns:
      204 when saved, 400 on an unknown value, 500 on failure