Skip to content
This repository was archived by the owner on Dec 5, 2024. It is now read-only.

Commit 7592d24

Browse files
Being sure InvalidateData if LastUpdatedAt or LastVerifiedAt is called
1 parent 9bcd18e commit 7592d24

File tree

1 file changed

+22
-6
lines changed

1 file changed

+22
-6
lines changed

src/UnityExtension/Assets/Editor/GitHub.Unity/ApplicationCache.cs

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,23 @@ protected ManagedCacheBase(bool invalidOnFirstRun)
132132

133133
public void ValidateData()
134134
{
135-
if (ApplicationCache.Instance.FirstRunAt > InitializedAt)
135+
var initialized = ValidateInitialized();
136+
if (!initialized)
136137
{
138+
if (DateTimeOffset.Now - LastUpdatedAt > DataTimeout)
139+
{
140+
Logger.Trace("Timeout Invalidation");
141+
InvalidateData();
142+
}
143+
}
144+
}
145+
146+
private bool ValidateInitialized()
147+
{
148+
var notInitialized = ApplicationCache.Instance.FirstRunAt > InitializedAt;
149+
if (notInitialized)
150+
{
151+
Logger.Trace("Initialized");
137152
InitializedAt = DateTimeOffset.Now;
138153
Save(true);
139154

@@ -143,11 +158,8 @@ public void ValidateData()
143158
InvalidateData();
144159
}
145160
}
146-
else if (DateTimeOffset.Now - LastUpdatedAt > DataTimeout)
147-
{
148-
Logger.Trace("Timeout Invalidation");
149-
InvalidateData();
150-
}
161+
162+
return notInitialized;
151163
}
152164

153165
public void InvalidateData()
@@ -189,6 +201,8 @@ public DateTimeOffset LastUpdatedAt
189201
{
190202
if (!lastUpdatedAtValue.HasValue)
191203
{
204+
ValidateInitialized();
205+
192206
DateTimeOffset result;
193207
if (DateTimeOffset.TryParseExact(LastUpdatedAtString, Constants.Iso8601Format, CultureInfo.InvariantCulture, DateTimeStyles.None, out result))
194208
{
@@ -215,6 +229,8 @@ public DateTimeOffset LastVerifiedAt
215229
{
216230
if (!lastVerifiedAtValue.HasValue)
217231
{
232+
ValidateInitialized();
233+
218234
DateTimeOffset result;
219235
if (DateTimeOffset.TryParseExact(LastVerifiedAtString, Constants.Iso8601Format, CultureInfo.InvariantCulture, DateTimeStyles.None, out result))
220236
{

0 commit comments

Comments
 (0)