IP Library Granted Patent US 10,623,491
Granted Patent B2
US 10,623,491 · App. 16/015,259 · Granted Apr 14, 2020

Namespace translation

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 10,623,491
App. No.
16/015,259
Granted
Apr 14, 2020
Kind
B2
Abstract

An example computer-implemented method to translate a namespace includes receiving a first synchronization request associated with a first content item. This first synchronization request can include a first content item path and come from a client device. The example method can then include determining that a portion of the first content item path matches an entry path in an entry in a namespace mount table. The entry can include a second namespace. The example method can then include modifying the first synchronization request by removing the portion of the first content item path and including the second namespace in the first synchronization request. The example method can then include sending the first synchronization request to a content management system.

Claims (68)

1. A method comprising:

receiving a first synchronization request from a content management system for a client device, the first synchronization request including a namespace and a first path corresponding to a content item associated with the first synchronization request;

determining that the namespace matches an entry in a namespace mount table, the entry comprising a second path associated with the namespace;

determining that the client device does not use namespaces to synchronize content items associated with the content management system;

prepending the second path associated with the namespace to the first path in the first synchronization request, to yield a third path; and

sending, to the client device, a second synchronization request including the third path.

2. The method of claim 1 , further comprising: omitting the namespace from the second synchronization request.

3. The method of claim 1 , further comprising:

determining whether a second client device uses namespaces to synchronize content items associated with the content management system; and

when the second client device uses namespaces to synchronize content items associated with the content management system, sending, to the second client device, a third synchronization request including a fourth path comprising the namespace and the first path.

4. The method of claim 1 , further comprising:

receiving a third synchronization request comprising an instruction to move a collection, the instruction including a new collection path and an old collection path;

determining that a portion of the second path matches the old collection path;

replacing the portion of the second path that matches the old collection path with the new collection path, to yield an updated entry path; and

sending the third synchronization request to the content management system.

5. The method of claim 4 , further comprising:

sending, to the client device, a fourth synchronization request comprising the instruction to move the collection, the instruction including the updated entry path.

6. The method of claim 4 , wherein the instruction to move the collection comprises an instruction to rename the collection from an old collection name to a new collection name, wherein the old collection name is associated with the old collection path and the new collection name is associated with the new collection path.

7. The method of claim 6 , wherein the second path includes the old collection name, wherein replacing the portion of the second path that matches the old collection path with the new collection path comprises replacing the old collection name in the second path with the new collection name.

8. The method of claim 1 , further comprising:

receiving a third synchronization request comprising an instruction to move a collection, the instruction including a new collection path and an old collection path;

determining that an entry path in a second entry in the namespace mount table matches a first portion of the old collection path;

determining that the entry path does not match a second portion of the new collection path;

in response to determining that the entry path matches the first portion of the old collection path and does not match the second portion of the new collection path:

removing the first portion of the old collection path; and

modifying the third synchronization request to indicate that the old collection path is associated with a second namespace in the second entry; and

sending the third synchronization request to the content management system.

9. A non-transitory computer-readable medium comprising:

computer-executable instructions stored thereon which, when executed by one or more processors, cause the one or more processors to:

receive a first synchronization request from a content management system for a client device, the first synchronization request including a namespace and a first path corresponding to a content item associated with the first synchronization request;

determine that the namespace matches an entry in a namespace mount table, the entry comprising a second path associated with the namespace;

determine whether the client device uses namespaces to synchronize content items associated with the content management system; and

when the client device does not use namespaces to synchronize content items associated with the content management system:

prepend the second path associated with the namespace to the first path in the first synchronization request, to yield a third path; and

send, to the client device, a second synchronization request including the third path.

10. The non-transitory computer-readable medium of claim 9 , storing computer-executable instructions that, when executed by one or more processors, cause the one or more processors to:

omit the namespace from the second synchronization request.

11. The non-transitory computer-readable medium of claim 9 , wherein the first synchronization request includes a second namespace, the method further comprising removing the second namespace from the first synchronization request.

12. The non-transitory computer-readable medium of claim 9 , storing computer-executable instructions that, when executed by one or more processors, cause the one or more processors to:

receive a third synchronization request comprising an instruction to move a collection, the instruction including a new collection path and an old collection path;

determine that a portion of the second path matches the old collection path;

replace the portion of the second path that matches the old collection path with the new collection path, to yield an updated entry path; and

send the third synchronization request to the content management system.

13. The non-transitory computer-readable medium of claim 12 , storing computer-executable instructions that, when executed by one or more processors, cause the one or more processors to:

send, to the client device, a fourth synchronization request comprising the instruction to move the collection, the instruction including the updated entry path.

14. The non-transitory computer-readable medium of claim 12 , wherein the instruction to move the collection comprises an instruction to rename the collection from an old collection name to a new collection name, wherein the old collection name is associated with the old collection path and the new collection name is associated with the new collection path.

15. The non-transitory computer-readable medium of claim 14 , wherein the second path includes the old collection name, wherein replacing the portion of the second path that matches the old collection path with the new collection path comprises replacing the old collection name in the second path with the new collection name.

16. A system comprising:

one or more processors; and

at least one computer-readable medium; and

computer-readable instructions stored on the at least one computer-readable medium, that when executed by the one or more processors cause the system to:

receive a first synchronization request from a content management system for a client device, the first synchronization request including a namespace and a first path corresponding to a content item associated with the first synchronization request;

determine that the namespace matches an entry in a namespace mount table, the entry comprising a second path associated with the namespace;

determine whether the client device uses namespaces to synchronize content items associated with the content management system; and

when the client device does not use namespaces to synchronize content items associated with the content management system:

prepend the second path associated with the namespace to the first path in the first synchronization request, to yield a third path; and

send, to the client device, a second synchronization request including the third path.

17. The system of claim 16 , wherein the computer-readable instructions, when executed by the one or more processors, cause the one or more processors to:

omit the namespace from the second synchronization request.

18. The system of claim 16 , wherein the computer-readable instructions, when executed by the one or more processors, cause the one or more processors to:

determine whether a second client device uses namespaces to synchronize content items associated with the content management system; and

when the second client device uses namespaces to synchronize content items associated with the content management system, sending, to the second client device, a third synchronization request including a fourth path comprising the namespace and the first path.

19. The system of claim 16 , wherein the computer-readable instructions, when executed by the one or more processors, cause the one or more processors to:

receive a third synchronization request comprising an instruction to move a collection, the instruction including a new collection path and an old collection path;

determine that a portion of the second path matches the old collection path;

replace the portion of the second path that matches the old collection path with the new collection path, to yield an updated entry path; and

send the third synchronization request to the content management system.

20. The system of claim 19 , send, to the client device, a fourth synchronization request comprising the instruction to move the collection, the instruction including the updated entry path.

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 Jul 18, 2018
From: KOPATSY, ARTHUR
To: DROPBOX, INC.
Reel/Frame 046382/0608 →