protected override void ExecuteWorkImplementation() { if (m_roleContract == null) { m_roleContract = m_communicationProvider.GetAuthRoleApiClient().GetRoleAsync(m_externalRoleId).GetAwaiter() .GetResult(); } var group = m_permissionRepository.FindGroupByExternalIdOrCreate(m_roleContract.Id); LocalId = group.Id; if (group.Name != m_roleContract.Name) { group.Name = m_roleContract.Name; group.LastChange = DateTime.UtcNow; m_permissionRepository.Save(group); m_permissionRepository.Flush(); } }
public SynchronizeRoleWork(PermissionRepository permissionRepository, CommunicationProvider communicationProvider, AuthRoleContract authRoleContract) : this(permissionRepository, communicationProvider) { m_roleContract = authRoleContract; }