Package org.exoplatform.caldav.service
Class CaldavConnectorServiceImpl
java.lang.Object
org.exoplatform.caldav.service.CaldavConnectorServiceImpl
- All Implemented Interfaces:
org.exoplatform.caldav.service.CaldavConnectorService
public class CaldavConnectorServiceImpl
extends Object
implements org.exoplatform.caldav.service.CaldavConnectorService
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcreateCaldavSetting(org.exoplatform.caldav.model.CaldavUserSetting caldavUserSetting, long userIdentityId) voiddeleteCaldavSetting(long userIdentityId) protected CaldavServerServiceResolves the server registry lazily through the kernel/Spring bridge, and remembers it.org.exoplatform.caldav.model.CaldavUserSettinggetCaldavSetting(long userIdentityId) Retrieves the CalDAV settings of a user, with the base URL of the server the account speaks to resolved in this order: the declared server the account references, else the seed registration, else the legacyexo.agenda.caldav.connector.urlproperty — today's behaviour, kept for deployments whose registry is empty.voidsaveMirrorCalendarHref(String mirrorCalendarHref, long userIdentityId) protected voidsetCaldavServerService(CaldavServerService caldavServerService) Hands the registry to tests, which have no container to resolve it from.
-
Constructor Details
-
CaldavConnectorServiceImpl
-
-
Method Details
-
createCaldavSetting
public void createCaldavSetting(org.exoplatform.caldav.model.CaldavUserSetting caldavUserSetting, long userIdentityId) throws IllegalAccessException - Specified by:
createCaldavSettingin interfaceorg.exoplatform.caldav.service.CaldavConnectorService- Throws:
IllegalAccessException
-
getCaldavSetting
public org.exoplatform.caldav.model.CaldavUserSetting getCaldavSetting(long userIdentityId) Retrieves the CalDAV settings of a user, with the base URL of the server the account speaks to resolved in this order: the declared server the account references, else the seed registration, else the legacyexo.agenda.caldav.connector.urlproperty — today's behaviour, kept for deployments whose registry is empty.Two relay-era guarantees are made here. The password never leaves the platform: it is blanked before the setting is returned, since the only consumer of this method is the settings REST the browser reads, and the browser no longer speaks to CalDAV servers itself — the relay injects the stored credentials server-side. And the serverId is the effective one: when the registry resolves a row (the referenced one, else the seed), its id is set on the DTO even for legacy accounts that stored none, because that id is how the browser addresses the relay.
- Specified by:
getCaldavSettingin interfaceorg.exoplatform.caldav.service.CaldavConnectorService- Parameters:
userIdentityId- User identity getting the caldav user setting- Returns:
- the setting of that user, its caldavUrl resolved, its password blanked, never null
-
getCaldavServerService
Resolves the server registry lazily through the kernel/Spring bridge, and remembers it. A registry that cannot be resolved (the Spring context not up yet, or a test container without it) simply leaves the legacy property-based URL in charge.- Returns:
- the registry, or null when the bridge cannot provide it
-
setCaldavServerService
Hands the registry to tests, which have no container to resolve it from.- Parameters:
caldavServerService- the registry to use
-
deleteCaldavSetting
public void deleteCaldavSetting(long userIdentityId) - Specified by:
deleteCaldavSettingin interfaceorg.exoplatform.caldav.service.CaldavConnectorService
-
saveMirrorCalendarHref
- Specified by:
saveMirrorCalendarHrefin interfaceorg.exoplatform.caldav.service.CaldavConnectorService
-