Patents by Inventor Craig Federighi
Craig Federighi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 7584468Abstract: Distributing and synchronizing objects is disclosed. An object (including the data and behavior for the object) is copied into local address space. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, a policy that specifies conditions as to when objects are synchronized is used. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.) or based on the type or number of messages transmitted. A default policy may provide for the synchronization of local objects whenever a client issues a request from the remote server. The remote server transmits any updated object information when it responds to the local object request. The updated object information may be utilized to synchronize the objects.Type: GrantFiled: June 20, 2005Date of Patent: September 1, 2009Assignee: Apple Inc.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 7194692Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: GrantFiled: June 27, 2002Date of Patent: March 20, 2007Assignee: Apple Computer, Inc.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Publication number: 20060294470Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: ApplicationFiled: July 31, 2006Publication date: December 28, 2006Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Willrich, Stefanie Herzer, Craig Federighi
-
Publication number: 20060271853Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: ApplicationFiled: July 18, 2006Publication date: November 30, 2006Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Willrich, Stefanie Herzer, Craig Federighi
-
Publication number: 20060271586Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based “undo” capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: ApplicationFiled: May 1, 2006Publication date: November 30, 2006Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Patent number: 7111013Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based “undo” capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: GrantFiled: May 16, 2003Date of Patent: September 19, 2006Assignee: Next Software, Inc.Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Publication number: 20050268307Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: June 20, 2005Publication date: December 1, 2005Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 6910052Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: GrantFiled: May 16, 2002Date of Patent: June 21, 2005Assignee: Apple Computer, Inc.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20040015480Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based “undo” capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: ApplicationFiled: May 16, 2003Publication date: January 22, 2004Applicant: NeXT SOFTWARE, INC.Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Patent number: 6604109Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based “undo” capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: GrantFiled: June 30, 2000Date of Patent: August 5, 2003Assignee: Next Software, Inc.Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Publication number: 20030035003Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: ApplicationFiled: June 27, 2002Publication date: February 20, 2003Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Publication number: 20030004977Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: May 16, 2002Publication date: January 2, 2003Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 6429880Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: GrantFiled: April 25, 2001Date of Patent: August 6, 2002Assignee: Apple Computer, Inc.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Patent number: 6430576Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: GrantFiled: May 10, 1999Date of Patent: August 6, 2002Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20020049579Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: May 10, 1999Publication date: April 25, 2002Inventors: PATRICK GATES, CRAIG FEDERIGHI, ERIC NOYAU
-
Publication number: 20010045963Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: ApplicationFiled: April 25, 2001Publication date: November 29, 2001Applicant: APPLE COMPUTER, INC.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Patent number: 6262729Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: GrantFiled: April 14, 1997Date of Patent: July 17, 2001Assignee: Apple Computer, Inc.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Patent number: 6085197Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based "undo" capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: GrantFiled: October 6, 1998Date of Patent: July 4, 2000Assignee: NeXT Software, Inc.Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Patent number: 5956728Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based "undo" capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: GrantFiled: July 17, 1996Date of Patent: September 21, 1999Assignee: NeXT Software, Inc.Inventors: Craig Federighi, Dan Willhite, Eric Noyau