Class CloudSynchronizer
java.lang.Object
de.fraunhofer.iese.mydata.pmp.synchronizer.CloudSynchronizer
- All Implemented Interfaces:
ISyncService
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionCloudSynchronizer(Supplier<Instant> instantSupplier, ClientId clientId, IPolicyService policyService, ITimerService timerService, IPolicyDecisionPoint pdp, IManagementService cloudManagementService, boolean cacheEnabled, String policyCachePath, String timerCachePath, String maxAge, String cronSchedule, boolean masterClient, org.quartz.Scheduler scheduler) -
Method Summary
Modifier and TypeMethodDescriptionvoidpushPep(PepComponentInformation pepComponentInformation) Push the registration of a PEP componentvoidpushPip(PipComponentInformation pipComponentInformation) Push the registration of a PIP componentvoidpushPxp(PxpComponentInformation pxpComponentInformation) Push the registration of a PXP componentvoidstart()Start synchronizationvoidstop()Stop synchronization
-
Constructor Details
-
CloudSynchronizer
public CloudSynchronizer(Supplier<Instant> instantSupplier, ClientId clientId, IPolicyService policyService, ITimerService timerService, IPolicyDecisionPoint pdp, IManagementService cloudManagementService, boolean cacheEnabled, String policyCachePath, String timerCachePath, @Nullable String maxAge, String cronSchedule, boolean masterClient, org.quartz.Scheduler scheduler) throws ParseException - Parameters:
instantSupplier- Supplier for current point in time (Instant)clientId- The clientId of the Library ClientpolicyService- The local policy servicetimerService- The local timer servicepdp- The local PDP (just to manage its failureMode state)cloudManagementService- The management service (cloud)cacheEnabled- Whether cache is enabledpolicyCachePath- File path, where to store the policy cachetimerCachePath- File path, where to store the timer cachemaxAge- Optional duration string to determine how long synced information is validcronSchedule- Cron schedule for synchronizationmasterClient- Whether the Library Client is a master clientscheduler- The scheduler to schedule the synchronization tasks- Throws:
ParseException- In case of invalid cron expression by parameter cronSchedule
-
-
Method Details
-
start
Description copied from interface:ISyncServiceStart synchronization- Specified by:
startin interfaceISyncService- Throws:
SynchronizerException- in case of an error while starting the synchronization
-
stop
Description copied from interface:ISyncServiceStop synchronization- Specified by:
stopin interfaceISyncService- Throws:
SynchronizerException- in case of an error while stopping the synchronization
-
pushPep
Description copied from interface:ISyncServicePush the registration of a PEP component- Specified by:
pushPepin interfaceISyncService- Parameters:
pepComponentInformation- the pepComponentInformation- Throws:
SynchronizerException- in case of an error while pushing the information
-
pushPip
Description copied from interface:ISyncServicePush the registration of a PIP component- Specified by:
pushPipin interfaceISyncService- Parameters:
pipComponentInformation- the pipComponentInformation- Throws:
SynchronizerException- in case of an error while pushing the information
-
pushPxp
Description copied from interface:ISyncServicePush the registration of a PXP component- Specified by:
pushPxpin interfaceISyncService- Parameters:
pxpComponentInformation- the pxpComponentInformation- Throws:
SynchronizerException- in case of an error while pushing the information
-