From 136a15d19cf52f2f20c94d3af7103f21616f7fa7 Mon Sep 17 00:00:00 2001
From: Patrick Simpson
Date: Fri, 14 Sep 2018 10:05:21 +0300
Subject: [PATCH] Additional logging for GAB sync
---
.../AcaciaZPushPlugin/Features/GAB/FeatureGAB.cs | 4 ++++
.../Features/SharedFolders/RemindersQuery.cs | 14 +++++++-------
.../Stubs/OutlookWrappers/FolderWrapper.cs | 4 ++--
.../AcaciaZPushPlugin/ZPush/ZPushAccount.cs | 2 ++
.../AcaciaZPushPlugin/ZPush/ZPushChannel.cs | 14 +++++++++++++-
.../AcaciaZPushPlugin/ZPush/ZPushWatcher.cs | 10 ++++++++--
6 files changed, 36 insertions(+), 12 deletions(-)
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/GAB/FeatureGAB.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/GAB/FeatureGAB.cs
index bb3062e..f1d274d 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/GAB/FeatureGAB.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/GAB/FeatureGAB.cs
@@ -576,9 +576,11 @@ namespace Acacia.Features.GAB
zpush.ConfirmedChanged += (z) =>
{
+ Logger.Instance.Debug(this, "Account discovered and confirmed: {0} -> {1}: {2}", zpush.DisplayName, zpush.Confirmed, zpush.GABFolder);
if (zpush.Confirmed == ZPushAccount.ConfirmationType.IsZPush &&
!string.IsNullOrEmpty(zpush.GABFolder))
{
+ Logger.Instance.Debug(this, "Account discovered, listening for folder: {0} -> {1}: {2}", zpush.DisplayName, zpush.Confirmed, zpush.GABFolder);
// Set up the Z-Push channel listener
ZPushChannel channel = ZPushChannels.Get(this, zpush, zpush.GABFolder);
channel.Available += ZPushChannelAvailable;
@@ -735,6 +737,7 @@ namespace Acacia.Features.GAB
private void ZPushChannelAvailable(IFolder folder)
{
+ Logger.Instance.Debug(this, "Z-Push channel available 0: {0}", folder);
using (IStore store = folder.GetStore())
{
Logger.Instance.Debug(this, "Z-Push channel available: {0} on {1}", folder, store.DisplayName);
@@ -742,6 +745,7 @@ namespace Acacia.Features.GAB
ZPushAccount account = Watcher.Accounts.GetAccount(folder);
if (account != null)
{
+ Logger.Instance.Debug(this, "Z-Push channel available 0: {0} -> {1}", folder, account);
account.LinkedGABFolder(folder);
RegisterGABAccount(account, folder);
}
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/SharedFolders/RemindersQuery.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/SharedFolders/RemindersQuery.cs
index 22a81c5..ea84235 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/SharedFolders/RemindersQuery.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Features/SharedFolders/RemindersQuery.cs
@@ -92,7 +92,7 @@ namespace Acacia.Features.SharedFolders
_queryRoot = FolderQuery;
if (!(_queryRoot is SearchQuery.And))
return false;
- Logger.Instance.Debug(this, "Current query:\n{0}", _queryRoot.ToString());
+ Logger.Instance.Trace(this, "Current query:\n{0}", _queryRoot.ToString());
SearchQuery.And root = (SearchQuery.And)_queryRoot;
// TODO: more strict checking of query
@@ -113,7 +113,7 @@ namespace Acacia.Features.SharedFolders
}
// We have the root, but not the custom query. Create it.
- Logger.Instance.Debug(this, "Creating custom query");
+ Logger.Instance.Trace(this, "Creating custom query");
if (_queryCustomShared == null)
_queryCustomShared = AddCustomQuery(root, "S");
_queryCustomConfigured = AddCustomQuery(root, "C");
@@ -124,10 +124,10 @@ namespace Acacia.Features.SharedFolders
)
));
- Logger.Instance.Debug(this, "Modified query:\n{0}", root.ToString());
+ Logger.Instance.Trace(this, "Modified query:\n{0}", root.ToString());
// Store it
FolderQuery = root;
- Logger.Instance.Debug(this, "Modified query readback:\n{0}", FolderQuery);
+ Logger.Instance.Trace(this, "Modified query readback:\n{0}", FolderQuery);
}
catch (Exception e)
{
@@ -281,7 +281,7 @@ namespace Acacia.Features.SharedFolders
_queryRoot = FolderQuery;
if (!(_queryRoot is SearchQuery.And))
return false;
- Logger.Instance.Debug(this, "Current query:\n{0}", _queryRoot.ToString());
+ Logger.Instance.Trace(this, "Current query:\n{0}", _queryRoot.ToString());
SearchQuery.And root = (SearchQuery.And)_queryRoot;
// TODO: more strict checking of query
@@ -304,10 +304,10 @@ namespace Acacia.Features.SharedFolders
root.Operands.Add(_queryCustomShared);
}
- Logger.Instance.Debug(this, "Modified query:\n{0}", root.ToString());
+ Logger.Instance.Trace(this, "Modified query:\n{0}", root.ToString());
// Store it
FolderQuery = root;
- Logger.Instance.Debug(this, "Modified query readback:\n{0}", FolderQuery);
+ Logger.Instance.Trace(this, "Modified query readback:\n{0}", FolderQuery);
}
catch (Exception e)
{
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/OutlookWrappers/FolderWrapper.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/OutlookWrappers/FolderWrapper.cs
index d75e821..58b83c5 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/OutlookWrappers/FolderWrapper.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/OutlookWrappers/FolderWrapper.cs
@@ -446,7 +446,7 @@ namespace Acacia.Stubs.OutlookWrappers
{
SearchCriteriaState state;
imapi.GetSearchCriteria(0, &restrict, &sb1, out state);
- Logger.Instance.Debug(this, "GetSearchCriteria: {0}: {1}\n{2}", Name, state,
+ Logger.Instance.Trace(this, "GetSearchCriteria: {0}: {1}\n{2}", Name, state,
restrict == null ? "" : restrict->ToString());
return restrict->ToSearchQuery();
}
@@ -466,7 +466,7 @@ namespace Acacia.Stubs.OutlookWrappers
using (RestrictionEncoder res = value.ToRestriction())
{
SRestriction* resEncoded = res.Encoded;
- Logger.Instance.Debug(this, "SetSearchCriteria: {0}\n{1}", Name, resEncoded == null ? "" : resEncoded->ToString());
+ Logger.Instance.Trace(this, "SetSearchCriteria: {0}\n{1}", Name, resEncoded == null ? "" : resEncoded->ToString());
imapi.SetSearchCriteria(resEncoded, null, SearchCriteriaFlags.NONE);
}
}
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushAccount.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushAccount.cs
index 5b14eff..4be771a 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushAccount.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushAccount.cs
@@ -149,6 +149,8 @@ namespace Acacia.ZPush
Confirmed = Capabilities == null ? ConfirmationType.IsNotZPush : ConfirmationType.IsZPush;
Logger.Instance.Info(this, "ZPush confirmation: {0} -> {1}, {2}", Confirmed, Capabilities, GABFolder);
+ //new Thread(() => { System.Threading.Thread.Sleep(30000); _confirmedChanged?.Invoke(this); }).Start();
+ //
_confirmedChanged?.Invoke(this);
}
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushChannel.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushChannel.cs
index 1e64aa5..e27dd21 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushChannel.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushChannel.cs
@@ -85,7 +85,19 @@ namespace Acacia.ZPush
// Notify any listeners
if (Available != null)
{
- Tasks.Task(null, null, "Watcher_WatchingFolder", () => Available(folder));
+ Logger.Instance.Debug(this, "ZPUSHCANNEL FOLDER, NOTIFY Available: {0} on {1}", folder.Name, _account.DisplayName);
+ Tasks.Task(null, null, "Watcher_WatchingFolder",
+ () =>
+ {
+ Logger.Instance.Debug(this, "ZPUSHCANNEL FOLDER, NOTIFY Available before: {0} on {1}", folder.Name, _account.DisplayName);
+ Available(folder);
+ Logger.Instance.Debug(this, "ZPUSHCANNEL FOLDER, NOTIFY Available after: {0} on {1}", folder.Name, _account.DisplayName);
+ }
+ );
+ }
+ else
+ {
+ Logger.Instance.Debug(this, "ZPUSHCANNEL FOLDER, Available not registered: {0} on {1}", folder.Name, _account.DisplayName);
}
}
diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushWatcher.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushWatcher.cs
index 365a86d..5ad5ea5 100644
--- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushWatcher.cs
+++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/ZPush/ZPushWatcher.cs
@@ -121,14 +121,20 @@ namespace Acacia.ZPush
{
oof = connection.Execute(new ActiveSync.SettingsOOFGet());
}
- account.OnConfirmationResponse(oof.RawResponse);
+
+ new Thread(() => { System.Threading.Thread.Sleep(30000);
+ account.OnConfirmationResponse(oof.RawResponse);
+ Explorer_SelectionChange();
+ ThisAddIn.Instance.GetFeature()?.OnOOFSettings(account, oof);
+ }).Start();
+ /*account.OnConfirmationResponse(oof.RawResponse);
// [ZO-109] Always update the current selection, it might have changed.
Explorer_SelectionChange();
// Notify the OOF feature.
// TODO: this coupling is pretty hideous
- ThisAddIn.Instance.GetFeature()?.OnOOFSettings(account, oof);
+ ThisAddIn.Instance.GetFeature()?.OnOOFSettings(account, oof);*/
});
}
else