Content interchange bus
First Claim
1. A system for exchanging content via messages, comprising:
- a content interchange bus including a processor and a memory;
a messaging module stored in the memory, executable by the processor and configured for;
receiving a first content creation request from a client, the first content creation request comprising a first content object that includes (i) data intended for distribution, wherein the data includes an electronic document, (ii) a first metadata name/value pair describing the first content object, (iii) a second metadata name/value pair describing a first content container and (iv) a plurality of user-specific deletion tags, wherein each user-specific deletion tag is associated with a particular subscriber, the user-specific deletion tags including a first user-specific deletion tag associated with a first subscriber;
creating the first content container in a cloud storage platform, the first content container defining a uniform resource identifier indicating its location in the cloud storage platform;
storing the first content object in the cloud storage platform, the first content object defining a uniform resource identifier indicating its location in the cloud storage platform;
storing a subscription list, the subscription list associating the first subscriber with a first routing string;
receiving a first message from the client, a payload of the first message comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier, the message comprising a topic string that includes the first routing string;
routing the first message to the first subscriber based on the topic string including the first routing string;
receiving a first content retrieval request from the first subscriber, the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier;
determining that the first subscriber is authorized to access the first content container or the first content object;
providing a copy of the first content object to the first subscriber based upon (i) the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier and (ii) determining that the first subscriber is authorized to access the first content container or the first content object;
determine that the first subscriber has retrieved the copy of the first content object;
communicate a notification to a sender of the first content object based on determining that the first subscriber retrieved the copy of the first content object; and
receiving a deletion request to set one or more of the user-specific deletion tags to a delete value and, based on the deletion request, setting one of more of the user-specific deletion tags to a delete value, wherein (i), once the first user-specific deletion tags has been set to a delete value, permission of the first subscriber to access the first content object is removed, and (ii), once all of the user-specific deletion tags have been set to a delete value, the first content object is deleted, wherein the first content object is not deleted until all the user-specific deletion tags have been set to a delete value.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a content interchange bus that is configured for (i) receiving a first content creation request from a client, the first content creation request including a first content object that includes data intended for distribution, a first metadata name/value pair describing the first content object, and a second metadata name/value pair describing a first content container; (ii) creating the first content container in the cloud storage platform; (iii) storing the first content object in the cloud storage platform; (iv) receiving a first message from the client, the first message including the first content container'"'"'s uniform resource identifier and/or the first content object'"'"'s uniform resource identifier, the message including a topic string that includes a first routing string; and (v) routing the first message to a first subscriber based at least partially on the topic string including the first routing string.
235 Citations
21 Claims
-
1. A system for exchanging content via messages, comprising:
-
a content interchange bus including a processor and a memory; a messaging module stored in the memory, executable by the processor and configured for; receiving a first content creation request from a client, the first content creation request comprising a first content object that includes (i) data intended for distribution, wherein the data includes an electronic document, (ii) a first metadata name/value pair describing the first content object, (iii) a second metadata name/value pair describing a first content container and (iv) a plurality of user-specific deletion tags, wherein each user-specific deletion tag is associated with a particular subscriber, the user-specific deletion tags including a first user-specific deletion tag associated with a first subscriber; creating the first content container in a cloud storage platform, the first content container defining a uniform resource identifier indicating its location in the cloud storage platform; storing the first content object in the cloud storage platform, the first content object defining a uniform resource identifier indicating its location in the cloud storage platform; storing a subscription list, the subscription list associating the first subscriber with a first routing string; receiving a first message from the client, a payload of the first message comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier, the message comprising a topic string that includes the first routing string; routing the first message to the first subscriber based on the topic string including the first routing string; receiving a first content retrieval request from the first subscriber, the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier; determining that the first subscriber is authorized to access the first content container or the first content object; providing a copy of the first content object to the first subscriber based upon (i) the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier and (ii) determining that the first subscriber is authorized to access the first content container or the first content object; determine that the first subscriber has retrieved the copy of the first content object; communicate a notification to a sender of the first content object based on determining that the first subscriber retrieved the copy of the first content object; and receiving a deletion request to set one or more of the user-specific deletion tags to a delete value and, based on the deletion request, setting one of more of the user-specific deletion tags to a delete value, wherein (i), once the first user-specific deletion tags has been set to a delete value, permission of the first subscriber to access the first content object is removed, and (ii), once all of the user-specific deletion tags have been set to a delete value, the first content object is deleted, wherein the first content object is not deleted until all the user-specific deletion tags have been set to a delete value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product for exchanging content via messages, comprising a non-transitory computer-readable storage medium having computer-executable instructions for:
-
receiving a first content creation request from a client, the first content creation request comprising a first content object that includes (i) data intended for distribution, wherein the data includes an electronic document, (ii) a first metadata name/value pair describing the first content object, (iii) a second metadata name/value pair describing a first content container and (iv) a plurality of user-specific deletion tags, wherein each user-specific deletion tag is associated with a particular subscriber, the user-specific deletion tags including a first user-specific deletion tag associated with a first subscriber; creating the first content container in a cloud storage platform, the first content container defining a uniform resource identifier indicating its location in the cloud storage platform; storing the first content object in the cloud storage platform, the first content object defining a uniform resource identifier indicating its location in the cloud storage platform; storing a subscription list, the subscription list associating the first subscriber with a first routing string; receiving a first message from the client, a payload of the first message comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier, the message comprising a topic string that includes the first routing string; routing the first message to the first subscriber based on the topic string including the first routing string; receiving a first content retrieval request from the first subscriber, the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier; determining that the first subscriber is authorized to access the first content container or the first content object; providing a copy of the first content object to the first subscriber based upon (i) the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier and (ii) determining that the first subscriber is authorized to access the first content container or the first content object; determining that the first subscriber has retrieved the copy of the first content object; communicating a notification to a sender of the first content object based on determining that the first subscriber retrieved the copy of the first content object; and receiving a deletion request to set one or more of the user-specific deletion tags to a delete value and, based on the deletion request, setting one of more of the user-specific deletion tags to a delete value, wherein (i), once the first user-specific deletion tags has been set to a delete value, permission of the first subscriber to access the first content object is removed, and (ii), once all of the user-specific deletion tags have been set to a delete value, the first content object is deleted, wherein the first content object is not deleted until all the user-specific deletion tags have been set to a delete value. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method of exchanging content via messages, comprising:
-
receiving, using a processor, a first content creation request from a client, the first content creation request comprising a first content object that includes (i) data intended for distribution, wherein the data includes an electronic document, (ii) a first metadata name/value pair describing the first content object, (iii) a second metadata name/value pair describing a first content container and (iv) a plurality of user-specific deletion tags, wherein each user-specific deletion tag is associated with a particular subscriber, the user-specific deletion tags including a first user-specific deletion tag associated with a first subscriber; creating, using a processor, the first content container in a cloud storage platform, the first content container defining a uniform resource identifier indicating its location in the cloud storage platform; storing, using a processor, the first content object in the cloud storage platform, the first content object defining a uniform resource identifier indicating its location in the cloud storage platform; storing, using a processor, a subscription list, the subscription list associating the first subscriber with a first routing string; receiving, using a processor, a first message from the client, a payload of the first message comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier, the message comprising a topic string that includes the first routing string; routing, using a processor, the first message to the first subscriber based partially on the topic string including the first routing string; receiving, using a processor, a first content retrieval request from the first subscriber, the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier; determining, using a processor, that the first subscriber is authorized to access the first content container or the first content object;
providing, using a processor, a copy of the first content object to the first subscriber based upon (i) the first content retrieval request comprising the first content container'"'"'s uniform resource identifier or the first content object'"'"'s uniform resource identifier and (ii) determining that the first subscriber is authorized to access the first content container or the first content object;determining, using a processor, that the first subscriber has retrieved the copy of the first content object; communicating, using a processor, a notification to a sender of the first content object based on determining that the first subscriber retrieved the copy of the first content object; and receiving, using processor, a deletion request to set one or more of the user-specific deletion tags to a delete value and, based on the deletion request, setting one of more of the user-specific deletion tags to a delete value, wherein (i), once the first user-specific deletion tags has been set to a delete value, permission of the first subscriber to access the first content object is removed, and (ii), once all of the user-specific deletion tags have been set to a delete value, the first content object is deleted, wherein the first content object is not deleted until all the user-specific deletion tags have been set to a delete value. - View Dependent Claims (18, 19, 20, 21)
-
Specification