Class SystemStoreAclSynchronizationTask
- java.lang.Object
-
- com.linkedin.venice.controller.authorization.SystemStoreAclSynchronizationTask
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,java.lang.Runnable
public class SystemStoreAclSynchronizationTask extends java.lang.Object implements java.lang.Runnable, java.io.Closeable
Currently, acl creation is still managed by Nuage but Nuage is not aware about the system stores. The long term plan is to let Nuage call Venice controller's acl APIs to perform user store acl operations. Venice controller's acl APIs will handle corresponding system store acls properly. In the meantime this task periodically scans and synchronizes any misaligned acls between the user store and their corresponding system stores (if any). The task is one per controller and only in the parent controller based on the availability of the AuthorizerService.
-
-
Constructor Summary
Constructors Constructor Description SystemStoreAclSynchronizationTask(AuthorizerService authorizationService, VeniceParentHelixAdmin veniceParentHelixAdmin, long synchronizationCycleDelayInMs)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
void
run()
Since acl synchronization could be a long-running task we want to make sure we can handle stale states from local variable, race conditions and early termination gracefully.
-
-
-
Constructor Detail
-
SystemStoreAclSynchronizationTask
public SystemStoreAclSynchronizationTask(AuthorizerService authorizationService, VeniceParentHelixAdmin veniceParentHelixAdmin, long synchronizationCycleDelayInMs)
-
-
Method Detail
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
-
run
public void run()
Since acl synchronization could be a long-running task we want to make sure we can handle stale states from local variable, race conditions and early termination gracefully.- Specified by:
run
in interfacejava.lang.Runnable
-
-