IP Library Granted Patent US 11,204,938
Granted Patent B2
US 11,204,938 · App. 15/857,729 · Granted Dec 21, 2021

Caching of file system warning queries to determine an applicable file system warning

Inventors: Thomas Kleinpeter (Seattle, WA); Conor Woods (Oakland, CA); Sergei Vorobev (Seattle, WA); Quazie Kwaselow (Seattle, WA); Marcio von Muhlen (San Francisco, CA); Nils Bunger (Palo Alto, CA)
Assignee: Dropbox, Inc.
G06F16/27G06F1/04G06F3/065G06F3/067G06F3/0619G06F3/0623G06F3/0629G06F3/0652G06F9/547G06F11/1469G06F12/1466G06F16/11G06F16/113G06F16/116G06F16/119G06F16/122G06F16/125G06F16/128G06F16/13G06F16/137G06F16/148G06F16/152G06F16/156G06F16/16G06F16/162G06F16/168G06F16/172G06F16/176G06F16/178G06F16/1734G06F16/1744G06F16/1767G06F16/1787G06F16/18G06F16/182G06F16/183G06F16/184G06F16/185G06F16/1827G06F16/1844G06F16/2246G06F16/2255G06F16/2322G06F16/2358G06F16/2365G06F16/2379G06F16/24552G06F16/275G06F16/907G06F16/9027G06F16/951G06F16/955G06F16/958G06F21/10G06F21/604G06F21/6218H04L9/3213H04L9/3247H04L63/08H04L63/0853H04L63/10H04L63/101H04L63/102H04L67/06H04L67/1095H04L67/1097G06F2201/84G06F2212/1052G06F2221/2141H04L67/306H04L67/42
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,204,938
App. No.
15/857,729
Granted
Dec 21, 2021
Kind
B2
Abstract

The present technology pertains to a organization directory hosted by a synchronized content management system. The corporate directory can provide access to user accounts for all members of the organization to all content items in the organization directory on the respective file systems of the members' client devices. Members can reach any content item at the same path as other members relative to the organization directory root on their respective client device. In some embodiments novel access permissions are granted to maintain path consistency.

Claims (51)

1. A non-transitory computer readable medium comprising instructions stored thereon, when executed the instructions are effective to cause a warnings engine to:

receive, from a synchronization service, a notification pertaining to a synchronization event;

receive, from the synchronization service, an address in a rules cache that includes initial information describing the synchronization event, wherein the initial information was written into the rules cache by the synchronization service and retrieved by the warnings engine from the address, and wherein the rules cache stores information determined from recorded synchronization events including the initial information;

investigate a first plurality of warning rules to make a first finding of a first criteria, wherein a determination of the first finding requires that additional information in addition to the initial information should be obtained;

upon determining the additional information should be obtained, query the synchronization service to receive the additional information to make the first finding of the first criteria;

send instructions to record the first finding in the rules cache;

investigate a second plurality of warning rules to make a second finding of a second criteria, wherein a determination of the second finding requires the initial information and the first finding from the rules cache and no further information is needed;

upon determining that no further information is needed from the synchronization service, send instructions to record the second finding in the rules cache; and

determine a file system warning based on the recorded second finding, and the recorded first finding.

2. The non-transitory computer readable medium of claim 1 , wherein once the additional information has been received, the warnings engine does not redundantly query the synchronization service for the additional information to make the first finding of the first criteria.

3. The non-transitory computer readable medium of claim 1 , wherein the initial information includes a synchronization event type including one of a content item write event, a content item deletion event, a content item move event, and a content item rename event, and the initial information includes any path relevant to the synchronization event type.

4. The non-transitory computer readable medium of claim 1 , wherein the determined file system warning blocks the synchronization event and includes a message presented in a user interface stating that the synchronization event including a move of a content item from a confidential folder to a non-confidential folder is not allowed.

5. The non-transitory computer readable medium of claim 1 , wherein the first criteria is related to whether the synchronization event pertains to a content item that is a file or a folder, whether the content item is a placeholder content item or a folder that contains a placeholder content item, how many content items a folder contains, whether a folder is in a top level of an organization directory, whether the folder is a team-shared folder, whether a folder is a shared folder, what permissions are associated with a folder, and whether an administrator is causing the synchronization event.

6. The non-transitory computer readable medium of claim 1 , wherein, during the investigating the first plurality of warning rules, individual warning rules of the first plurality of warning rules are investigated in series.

7. The non-transitory computer readable medium of claim 1 , wherein the instructions cause the warnings engine to:

provide an option to undo an action related to the synchronization event, to cancel the action, or to continue the action.

8. A method comprising:

receiving, from a synchronization service, a notification pertaining to a synchronization event;

receiving, from the synchronization service, an address in a rules cache that includes initial information describing the synchronization event, wherein the initial information was written into the rules cache by the synchronization service and retrieved by a warnings engine from the address, and wherein the rules cache stores information determined from recorded synchronization events including the initial information;

investigating a first plurality of warning rules to make a first finding of a first criteria, wherein a determination of the first finding requires that additional information in addition to the initial information should be obtained;

upon determining the additional information should be obtained, query the synchronization service to receive the additional information to make the first finding of the first criteria;

sending instructions to record the first finding in the rules cache;

investigating a second plurality of warning rules to make a second finding of a second criteria, wherein a determination of the second finding requires the

initial information and the first finding from the rules cache and no further information is needed;

upon determining that no further information is needed from the synchronization service, sending instructions to record the second finding in the rules cache; and

determining a file system warning based on the recorded second finding and the recorded first finding.

9. The method of claim 8 , comprising:

evaluating a third rule of the plurality of rules by the warnings engine, wherein the evaluation of the third rule includes an evaluation of the first criteria and a third criteria and the warnings engine retrieves the first criteria from the rules cache and does not redundantly query the synchronization service for the first criteria.

10. The method of claim 8 , wherein the determined file system warning blocks the synchronization event and includes a message presented in a user interface stating that the synchronization event including a move of a content item from a confidential folder to a non-confidential folder is not allowed.

11. The method of claim 8 , wherein the first criteria is related to whether the synchronization event pertains to a content item that is a file or a folder, whether the content item is a placeholder content item or a folder that contains a placeholder content item, how many content items a folder contains, whether a folder is in a top level of an organization directory, whether the folder is a team-shared folder, whether a folder is a shared folder, what permissions are associated with a folder, and whether an administrator is causing the synchronization event.

12. The method of claim 8 , wherein, during the investigating the first plurality of warning rules, individual warning rules of the first plurality of warning rules are investigated in series.

13. The method of claim 8 , comprising:

providing an option to undo an action related to the synchronization event, to cancel the action, or to continue the action.

14. A warnings engine comprising:

at least one processor; and

at least one memory having instructions stored thereon, that when executed the instructions are effective to cause the at least one processor to:

receive, from a synchronization service, a notification pertaining to a synchronization event;

receive, from the synchronization service, an address in a rules cache that includes initial information describing the synchronization event, wherein the initial information was written into the rules cache by the synchronization service and retrieved by the warnings engine from the address, and wherein the rules cache stores information determined from recorded synchronization events including the initial information;

investigate a first plurality of warning rules to make a first finding of a first criteria, wherein a determination of the first finding requires that additional information in addition to the initial information should be obtained;

upon determining the additional information should be obtained, query the synchronization service to receive the additional information to make the first finding of the first criteria;

send instructions to record the first finding in the rules cache;

investigate a second plurality of warning rules to make a second finding of a second criteria, wherein a determination of the second finding requires the initial information and the first finding from the rules cache and no further information is needed;

upon determining that no further information is needed from the synchronization service, send instructions to record the second finding in the rules cache; and

determine a file system warning based on the recorded second finding and the recorded first finding.

15. The warnings engine of claim 14 , wherein the instructions cause the at least one processor to:

evaluate a third rule of the plurality of rules, wherein the evaluation of the third rule includes an evaluation of the first criteria and a third criteria and the warnings engine retrieves the first criteria from the rules cache and does not redundantly query the synchronization service for the first criteria.

16. The warnings engine of claim 14 , wherein the initial information includes a synchronization event type including one of a content item write event, a content item deletion event, a content item move event, and a content item rename event, and the initial information includes any path relevant to the synchronization event type.

17. The warnings engine of claim 14 , wherein the first criteria is related to whether the synchronization event pertains to a content item that is a file or a folder, whether the content item is a placeholder content item or a folder that contains a placeholder content item, how many content items a folder contains, whether a folder is in a top level of an organization directory, whether the folder is a team-shared folder, whether a folder is a shared folder, what permissions are associated with a folder, and whether an administrator is causing the synchronization event.

18. The warnings engine of claim 14 , wherein, during the investigating the first plurality of warning rules, individual warning rules of the first plurality of warning rules are investigated in series.

19. The warnings engine of claim 14 , wherein the instructions cause the at least one processor to:

provide an option to undo an action related to the synchronization event, to cancel the action, or to continue the action.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069635/0332 →
SECURITY INTEREST Recorded Dec 12, 2024
From: DROPBOX, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069604/0611 →
PATENT SECURITY AGREEMENT Recorded Mar 10, 2021
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 055670/0219 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2018
From: KLEINPETER, THOMAS; WOODS, CONOR; VOROBEV, SERGEI; KWASELOW, QUAZIE; VON MUHLEN, MARCIO; BUNGER, NILS
To: DROPBOX, INC.
Reel/Frame 044916/0824 →
Cited By (1)
US 12,468,835