IP Library Granted Patent US 10,146,915
Granted Patent B2
US 10,146,915 · App. 15/078,430 · Granted Dec 4, 2018

Publication of collaborative file to library

Inventors: Miko Arnab Bose (San Francisco, CA); Robert J. Snell (London, GB); Mark Francis Movida (Berkeley, CA); Valliappan Annamalai Natarajan (San Ramon, CA); Adam Thielemann Wegel (San Francisco, CA); Matthew Charles Hagenian (San Francisco, CA); Durgesh Singh (Sunnyvale, CA)
Assignee: salesforce.com, inc.
G06F21/00G06F21/6245
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,146,915
App. No.
15/078,430
Granted
Dec 4, 2018
Kind
B2
Abstract

Disclosed are examples of systems, apparatus, methods and computer program products for sharing and publishing files. In one aspect, the database system can maintain a user database, a file database and a library. The database system can receive a first request initiated by a first user to share a first file with one or more second users and, responsive to the first request, enable a second set of one or more permissions for each of the second users. The database system also can receive a second request initiated by the first user to publish the first file to the library and, responsive to the second request, publish the first file to the library. The database system additionally can restrict access to the published file based on permissions associated with the library.

Claims (60)

1. A system for sharing and publishing files, the system comprising:

a multi-tenant database system implemented using a server system, the multi-tenant database system configurable to:

maintain a multi-tenant user database including user data associated with users of the multi-tenant database system;

maintain a multi-tenant file database including file data associated with a plurality of files;

maintain a library of published files;

receive a first request initiated by a first user of the multi-tenant database system to share a first file of the plurality of files with one or more second users of the multi-tenant database system, the first user having a first set of one or more permissions enabled with respect to the first file, the first set of one or more permissions defining access privileges to the first file by the first user;

enable, responsive to the first request, a second set of one or more permissions for each of the second users, the second set of one or more permissions defining access privileges to the first file by each of the second users;

receive a second request initiated by the first user to publish the first file to the library;

publish, responsive to the second request, the first file to the library;

disable the second set of one or more permissions for each of the second users;

restrict access to the published first file based on one or more permissions associated with the library; and

responsive to a third request to access the published first file, cause transmission of a message to a user device associated with the third request, the message indicating the restricted access to the published first file.

2. The system of claim 1 , the second set of one or more permissions including one or more permissions enabling each of the second users to edit the first file.

3. The system of claim 1 , the restricting of the access to the published first file including restricting access to the published first file by each of a plurality of collaborating users.

4. The system of claim 1 , the multi-tenant database system further configurable to:

receive a fourth request initiated by the first user to upload the first file or to upload a reference to the first file;

store the uploaded first file or the uploaded reference to the first file in the multi-tenant file database; and

enable the first set of one or more permissions for the first user responsive to the fourth request.

5. The system of claim 4 , wherein content of the first file remains stored in a third party storage location.

6. The system of claim 1 , wherein the publishing of the first file to the library includes updating a status of the first file in the multi-tenant file database to identify that the first file is a published file.

7. The system of claim 1 , wherein the publishing of the first file to the library includes storing a published version of the first file is a different storage location than a non-published version of the first file.

8. The system of claim 1 , the multi-tenant database system further configurable to receive an updated version of the first file and to store the updated version of the first file in the multi-tenant file database, wherein the published first file is the updated version of the first file.

9. The system of claim 1 , the multi-tenant database system further configurable to provide a networking environment enabling the first user and the second users to collaborate on the first file via one or more network feeds.

10. The system of claim 1 , the multi-tenant database system further configurable to provide an interface enabling the first user to associate metadata to the published first file in the library.

11. A method for sharing and publishing files, comprising:

maintaining, by one or more servers, a multi-tenant user database including user data associated with users of a multi-tenant database system;

maintaining, by one or more servers, a multi-tenant file database including file data associated with a plurality of files;

maintaining, by one or more servers, a library of published files;

receiving, by one or more servers, a first request initiated by a first user of the multi-tenant database system to share a first file of the plurality of files with one or more second users of the multi-tenant database system, the first user having a first set of one or more permissions enabled with respect to the first file, the first set of one or more permissions defining access privileges to the first file by the first user;

enabling, responsive to the first request, a second set of one or more permissions for each of the second users, the second set of one or more permissions defining access privileges to the first file by each of the second users;

receiving, by one or more servers, a second request initiated by the first user to publish the first file to the library;

publishing, responsive to the second request, the first file to the library;

disabling the second set of one or more permissions for each of the second users;

restricting access to the published first file based on one or more permissions associated with the library; and

responsive to a third request to access the published first file, causing transmission of a message to a user device associated with the third request, the message indicating the restricted access to the published first file.

12. The method of claim 11 , the second set of one or more permissions including one or more permissions enabling each of the second users to edit the first file.

13. The method of claim 11 , the restricting of the access to the published first file including restricting access to the published first file by each of a plurality of collaborating users.

14. The method of claim 11 , further comprising:

receiving a fourth request initiated by the first user to upload the first file or to upload a reference to the first file;

storing the uploaded first file or the uploaded reference to the first file in the multi-tenant file database; and

enabling the first set of one or more permissions for the first user responsive to the fourth request.

15. The method of claim 11 , further comprising receiving an updated version of the first file and storing the updated version of the first file in the multi-tenant file database, wherein the published first file is the updated version of the first file.

16. A computer program product comprising computer-readable program code capable of being executed by one or more processors when retrieved from a non-transitory computer-readable medium, the program code comprising instructions configurable to cause:

maintaining, by one or more servers, a multi-tenant user database including user data associated with users of a multi-tenant database system;

maintaining, by one or more servers, a multi-tenant file database including file data associated with a plurality of files;

maintaining, by one or more servers, a library of published files;

receiving, by one or more servers, a first request initiated by a first user of the multi-tenant database system to share a first file of the plurality of files with one or more second users of the multi-tenant database system, the first user having a first set of one or more permissions enabled with respect to the first file, the first set of one or more permissions defining access privileges to the first file by the first user;

enabling, responsive to the first request, a second set of one or more permissions for each of the second users, the second set of one or more permissions defining access privileges to the first file by each of the second users;

receiving, by one or more servers, a second request initiated by the first user to publish the first file to the library;

publishing, responsive to the second request, the first file to the library;

disabling the second set of one or more permissions for each of the second users;

restricting access to the published first file based on one or more permissions associated with the library; and

responsive to a third request to access the published first file, transmitting a message to a user device associated with the third request, the message indicating the restricted access to the published first file.

17. The computer program product of claim 16 , the second set of one or more permissions including one or more permissions enabling each of the second users to edit the first file.

18. The computer program product of claim 16 , the restricting of the access to the published first file including restricting access to the published first file by each of a plurality of collaborating users.

19. The computer program product of claim 16 , the instructions further configurable to cause:

obtaining a fourth request initiated by the first user to upload the first file or to upload a reference to the first file;

storing the uploaded first file or the uploaded reference to the first file in the multi-tenant file database; and

enabling the first set of one or more permissions for the first user responsive to the fourth request.

20. The computer program product of claim 16 , the instructions further configurable to cause obtaining an updated version of the first file and storing the updated version of the first file in the multi-tenant file database, wherein the published first file is the updated version of the first file.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2016
From: BOSE, MIKO ARNAB; SNELL, ROBERT J.; MOVIDA, MARK FRANCIS; NATARAJAN, VALLIAPPAN ANNAMALAI; WEGEL, ADAM THIELEMANN; HAGENIAN, MATTHEW CHARLES; SINGH, DURGESH
To: SALESFORCE.COM, INC.
Reel/Frame 038662/0459 →
Continuity (2)
Provisional Application 62218440 · Sep 14, 2015
Related Publication 20170075919A1 · Mar 16, 2017