IP Library Granted Patent US 11,556,504
Granted Patent B2
US 11,556,504 · App. 16/848,675 · Granted Jan 17, 2023

File sharing service controller

Inventors: Ke Xu (Nanjing, CN); Zongpeng Qiao (Nanjing, CN); Jie Zhuang (Nanjing, CN)
Assignee: Citrix Systems, Inc.
G06F16/176G06F3/04842G06F16/168G06F16/2282G06F16/2365G06F16/2379G06F40/134H04L67/06
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,556,504
App. No.
16/848,675
Granted
Jan 17, 2023
Kind
B2
Abstract

A tracking engine may respond to a first user requesting to pin a link included in a message received from a second user by storing the link in a database table associated with the first user. Alternatively, if the first user requests to clone the link, the tracking engine may store the link in the database table as well as generate a local copy of a file associated with the link. The tracking engine may generate, based on the database table, a user interface for displaying, at a client associated with the first user, one or more links received by the first user. The tracking engine may update the database table to mark or remove invalid links. As such, the user interface that is generated based on the database table may exclude invalid links or include unselectable user interface elements for the invalid links.

Claims (44)

1. A system, comprising:

at least one data processor; and

at least one memory storing instructions which, when executed by the at least one data processor, cause the at least one data processor to at least:

in response to a first user receiving, from a second user, a message including a first link to a first file associated with a file sharing service, generate a first user interface including a first user interface element for pinning the first link and a second user interface element for cloning the first link;

in response to the first user requesting to pin the first link by selecting the first user interface element, store, in a database table associated with the first user, the first link;

in response to the first user requesting to clone the first link by selecting the second user interface element, generate, at the client associated with the first user, a local copy of the first file in addition to storing the first link in the database table associated with the first user;

traverse the database table to determine a validity of each link included in the database table;

determine, based at least on the first file being unavailable at a location associated with the first link, that the first link is invalid;

in response to determining that the first link is invalid, update the database table to indicate that the first link is invalid and remove, from the client associated with the first user, the local copy of the first file; and

generate, based at least on the database table, a second user interface configured to provide, at a client device associated with the first user, access to one or more files associated with one or more valid links received by the first user, the second user interface further configured to prevent access to the first file associated with the first link based at least on the first link being invalid.

2. The system of claim 1 , wherein the local copy of the first file is generated by at least downloading, from the file sharing service, the first file and storing the first file at the client.

3. The system of claim 1 , wherein the local copy of the first file is accessed in response to the first user selecting the first link displayed as part of the second user interface.

4. The system of claim 1 , wherein storing the first link in the database table includes storing, in the database table, an identifier of the first file, a name of the first file, a size of the first file, a date the first file was uploaded to the file sharing service, a creator of the first file, and a validity period during which the first link, and/or a sender of the first link.

5. The system of claim 1 , wherein the at least one data processor is further caused to at least:

update the database table by at least setting an indicator to indicate that the first link is invalid or removing the first link from the database table.

6. The system of claim 1 , wherein the first link is determined to be invalid further based at least on an expiration of a validity period specified by the second user, and wherein the validity period corresponds to a quantity of time during which the first file is accessible to the first user.

7. The system of claim 1 , wherein the one or more links displayed as part of the second user interface includes a second link based at least on the second link being valid, wherein the second user interface provides access to a second file associated with the second link by at least including an user interface element corresponding to the second link, and wherein the second file is accessed by selecting the user interface element.

8. The system of claim 1 , wherein the second user interface prevents access to the first file associated with the first link by at least excluding the first link from the one or more links displayed as part of the second user interface.

9. The system of claim 1 , wherein the second user interface prevents access to the first file associated with the first link by at least including an unselectable user interface element corresponding to the first link.

10. The system of claim 1 , wherein the second user interface is generated in response to the first user accessing a directory, and wherein the one or more links received by the first user are displayed as part of the directory.

11. A computer-implemented method, comprising:

in response to a first user receiving, from a second user, a message including a first link to a first file associated with a file sharing service, generating a first user interface including a first user interface element for pinning the first link and a second user interface element for cloning the first link;

in response to the first user requesting to pin the first link by selecting the first user interface element, storing, in a database table associated with the first user, the first link;

in response to the first user requesting to clone the first link by selecting the second user interface element, generating, at the client associated with the first user, a local copy of the first file in addition to storing the first link in the database table associated with the first user;

traversing the database table to determine a validity of each link included in the database table;

determining, based at least on the first file being unavailable at a location associated with the first link, that the first link is invalid;

in response to determining that the first link is invalid, updating the database table to indicate that the first link is invalid and removing, from the client associated with the first user, the local copy of the first file; and

generating, based at least on the database table, a second user interface configured to provide, at a client device associated with the first user, access to one or more files associated with one or more valid links received by the first user, the second user interface further configured to prevent access to the first file associated with the first link based at least on the first link being invalid.

12. The method of claim 11 , further comprising:

generating the local copy of the first file by at least downloading, from the file sharing service, the first file and storing the first file at the client; and

in response to the first user selecting the first link displayed as part of the second user interface, accessing the local copy of the first file.

13. The method of claim 11 , further comprising:

updating the database table by at least setting an indicator to indicate that the first link is invalid or removing the first link from the database table.

14. The method of claim 11 , wherein the second link is determined to be invalid further based at least on an expiration of a validity period specified by the second user, and wherein the validity period corresponds to a quantity of time during which the first file is accessible to the first user.

15. The method of claim 11 , wherein the second user interface prevents access to the first file associated with the first link by at least excluding the first link from the one or more links displayed as part of the second user interface.

16. The method of claim 11 , wherein the second user interface prevents access to the first file associated with the first link by at least including an unselectable user interface element corresponding to the first link.

17. A non-transitory computer readable medium storing instructions, which when executed by at least one data processor, result in operations comprising:

in response to a first user receiving, from a second user, a message including a link to a file associated with a file sharing service, generating a first user interface including a user interface element for pinning the link and a second user interface element for cloning the first link;

in response to the first user requesting to pin the link by selecting the user interface element, storing, in a database table associated with the first user, the link;

in response to the first user requesting to clone the first link by selecting the second user interface element, generating, at the client associated with the first user, a local copy of the first file in addition to storing the first link in the database table associated with the first user;

traversing the database table to determine a validity of each link included in the database table;

determining, based at least on the file being unavailable at a location associated with the link, that the link is invalid;

in response to determining that the link is invalid, updating the database table to indicate that the link is invalid and removing, from the client associated with the first user, the local copy of the first file; and

generating, based at least on the database table, a second user interface configured to provide, at a client device associated with the first user, access to one or more files associated with one or more valid links received by the first user, the second user interface further configured to prevent access to the file associated with the link based at least on the link being invalid.

Assignments (16)
SECURITY INTEREST Recorded Jul 21, 2025
From: PROGRESS SOFTWARE CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 072094/0790 →
SECURITY INTEREST Recorded Dec 26, 2024
From: PROGRESS SOFTWARE CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 069784/0578 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2024
From: CITRIX SYSTEMS, INC.
To: PROGRESS SOFTWARE CORPORATION
Reel/Frame 069618/0836 →
RELEASE OF CERTAIN PATENT SECURITY INTERESTS AT REEL/FRAME 067662/0568 Recorded Nov 2, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 069291/0525 →
RELEASE OF CERTAIN PATENT SECURITY INTERESTS AT REEL/FRAME 062079/0001 Recorded Nov 2, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: CITRIX SYSTEMS, INC.
Reel/Frame 069291/0536 →
RELEASE OF CERTAIN PATENT SECURITY INTERESTS AT REEL/FRAME 062112/0262 Recorded Nov 2, 2024
From: BANK OF AMERICA, N.A.
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 069291/0492 →
RELEASE OF CERTAIN PATENT SECURITY INTERESTS AT REEL/FRAME 063340/0164 Recorded Nov 2, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 069291/0503 →
RELEASE OF CERTAIN PATENT SECURITY INTERESTS AT REEL/FRAME 062113/0470 Recorded Nov 2, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 069291/0514 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2020
From: XU, KE; QIAO, ZONGPENG; ZHUANG, JIE
To: CITRIX SYSTEMS, INC.
Reel/Frame 053168/0153 →
Continuity (2)
Continuation PCTCN2020081600 · Mar 27, 2020
Related Publication 20210303520A1 · Sep 30, 2021