US 11,720,607 B2
System for lightweight objects
Shu-Shang Sam Wei, Danville, CA (US); Roger W. Kilday, Danville, CA (US); Victor Spivak, San Mateo, CA (US); Meir Amiel, Pleasanton, CA (US); Venkat Chandrasekaran, Newark, NJ (US); Yik-Ping Li, Fremont, CA (US); and David Buccola, Pleasanton, CA (US)
Assigned to OPEN TEXT CORPORATION, Waterloo (CA)
Filed by Open Text Corporation, Waterloo (CA)
Filed on Jun. 23, 2020, as Appl. No. 16/909,643.
Application 16/909,643 is a continuation of application No. 15/619,318, filed on Jun. 9, 2017, granted, now 10,726,053.
Application 15/619,318 is a continuation of application No. 13/969,101, filed on Aug. 16, 2013, granted, now 9,760,623.
Application 13/969,101 is a continuation of application No. 13/161,580, filed on Jun. 16, 2011, granted, now 8,560,572.
Application 13/161,580 is a continuation of application No. 11/906,185, filed on Sep. 28, 2007, granted, now 7,987,210.
Prior Publication US 2020/0342008 A1, Oct. 29, 2020
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/00 (2019.01); G06F 16/28 (2019.01)
CPC G06F 16/289 (2019.01) [G06F 16/28 (2019.01)] 18 Claims
OG exemplary drawing
 
1. A system for managing content using lightweight objects, comprising a hardware processor operatively coupled to a computer-readable memory, wherein the processor is configured to:
store, in a computer-readable memory, a plurality of lightweight composite object instances as a plurality of lightweight object instances that refer to a shareable instance as a parent, wherein only a single copy of the shareable instance is stored in the computer-readable memory for the plurality of lightweight composite object instances, and not a copy for each of the plurality of lightweight composite object instances;
receive a request to delete a lightweight composite object instance, wherein the lightweight composite object instance comprises an instance of a lightweight type, the lightweight type having a shareable type designated as a parent of the lightweight type, wherein the lightweight type inherits one or more behaviors or data from the shareable type, the lightweight composite object instance having the shareable instance designated as a parent instance of the instance of the lightweight type, wherein the lightweight composite object instance inherits the one or more behaviors or data from the shareable instance;
responsive to the request:
delete the instance of the lightweight type;
determine whether the sharable instance is being shared by another lightweight composite object instance;
if the sharable instance is not being shared by another lightweight composite object instance, delete the sharable instance; and
if the sharable instance is being shared by another lightweight composite object instance, retain the sharable instance.