CalDavSynchronizer.Ui.Options.SettingsFaultFinder.FixSynchronizationMode C# (CSharp) Метод

FixSynchronizationMode() публичный Метод

public FixSynchronizationMode ( CalDavSynchronizer.Ui.ConnectionTests.TestResult result ) : void
result CalDavSynchronizer.Ui.ConnectionTests.TestResult
Результат void
    public void FixSynchronizationMode (TestResult result)
    {
      const SynchronizationMode readOnlyDefaultMode = SynchronizationMode.ReplicateServerIntoOutlook;
      if (result.ResourceType.HasFlag (ResourceType.Calendar))
      {
        if (!result.AccessPrivileges.HasFlag (AccessPrivileges.Modify)
            && OptionTasks.DoesModeRequireWriteableServerResource(_syncSettingsControl.SynchronizationMode))
        {
          _syncSettingsControl.SynchronizationMode = readOnlyDefaultMode;
          MessageBox.Show (
              string.Format (
                  "The specified Url is a read-only calendar. Synchronization mode set to '{0}'.",
                  _syncSettingsControl.AvailableSynchronizationModes.Single (m => m.Value == readOnlyDefaultMode).Name),
              OptionTasks.ConnectionTestCaption);
        }
      }

      if (result.ResourceType.HasFlag (ResourceType.AddressBook))
      {
        if (!result.AccessPrivileges.HasFlag (AccessPrivileges.Modify)
            && OptionTasks.DoesModeRequireWriteableServerResource(_syncSettingsControl.SynchronizationMode))
        {
          _syncSettingsControl.SynchronizationMode = readOnlyDefaultMode;
          MessageBox.Show (
              string.Format (
                  "The specified Url is a read-only addressbook. Synchronization mode set to '{0}'.",
                  _syncSettingsControl.AvailableSynchronizationModes.Single (m => m.Value == readOnlyDefaultMode).Name),
              OptionTasks.ConnectionTestCaption);
        }
      }
    }