Patents by Inventor Alan Bateman

Alan Bateman 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: 11640813
    Abstract: A string bender mechanism for a string musical instrument having a bender assembly comprising a control member and at least two bender levers. The control member moving between a first position and at least a second position, being a rest and active position, respectively. The at least two bender levers have a first end and a second end. The first end of said bender lever is dimensioned or adjacent to the control member and the second end of the bender lever receives a string. When the control member is in the first position, the bender levers are at rest and a tone emanates from a plucked string. When the control member is in the second position, the bender levers move simultaneously, and a varied tone emanates from a plucked string. In an alternative embodiment, one or more bender levers may be replaced with a switcher assembly.
    Type: Grant
    Filed: February 24, 2021
    Date of Patent: May 2, 2023
    Inventors: James Wade Black, Barry Alan Bateman
  • Patent number: 11366643
    Abstract: A runtime environment generates a proxy class in response to detecting a request for a proxy object. The proxy class implements a set of interfaces specified by the request for the proxy object. The runtime environment selects or generates a proxy module, in a module system, to include the proxy class. The runtime environment exposes interfaces from other modules to the proxy module using a qualified export that does not expose the interfaces to modules other than the proxy module. The runtime environment does not expose the proxy class, of the proxy module, to other modules in the module system.
    Type: Grant
    Filed: May 6, 2020
    Date of Patent: June 21, 2022
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
  • Patent number: 11347487
    Abstract: A module (m1) is allowed to gain private reflective access to any class in any module (C2 in m2), if and only if m2 grants to m1 deep reflective access for C2. A caller class may invoke a method to generate a second lookup object associated with a second principal class based on a first lookup object associated with a first principal class. The method is successfully executed only if (a) an access mode of the first lookup object allows for teleporting with private reflective access and (b) a module including the second principal class grants to a module including the first principal class deep reflective access for the second principal class. The second lookup object drops the access mode allowing for teleporting with private reflective access. Hence reflective access is confined within the limits imposed by module boundaries, as relaxed by access agreements between pairs of modules. The bilateral agreements are not transferable to other modules.
    Type: Grant
    Filed: November 21, 2019
    Date of Patent: May 31, 2022
    Assignee: Oracle International Corporation
    Inventors: Lai Hung Mandy Chung, John Robert Rose, Alan Bateman
  • Publication number: 20210264885
    Abstract: A string bender mechanism for a string musical instrument having a bender assembly comprising a control member and at least two bender levers. The control member moving between a first position and at least a second position, being a rest and active position, respectively. The at least two bender levers have a first end and a second end, The first end of said bender lever is dimensioned or adjacent to the control member and the second end of the bender lever receives a string. When the control member is in the first position, the bender levers are at rest and a tone emanates from a plucked string. When the control member is in the second position, the bender levers move simultaneously, and a varied tone emanates from a plucked string. In an alternative embodiment, one or more bender levers may be replaced with a switcher assembly.
    Type: Application
    Filed: February 24, 2021
    Publication date: August 26, 2021
    Inventors: JAMES WADE BLACK, Barry Alan Bateman
  • Publication number: 20200409674
    Abstract: A module (m1) is allowed to gain private reflective access to any class in any module (C2 in m2), if and only if m2 grants to m1 deep reflective access for C2. A caller class may invoke a method to generate a second lookup object associated with a second principal class based on a first lookup object associated with a first principal class. The method is successfully executed only if (a) an access mode of the first lookup object allows for teleporting with private reflective access and (b) a module including the second principal class grants to a module including the first principal class deep reflective access for the second principal class. The second lookup object drops the access mode allowing for teleporting with private reflective access. Hence reflective access is confined within the limits imposed by module boundaries, as relaxed by access agreements between pairs of modules. The bilateral agreements are not transferable to other modules.
    Type: Application
    Filed: November 21, 2019
    Publication date: December 31, 2020
    Applicant: Oracle International Corporation
    Inventors: Lai Hung Mandy Chung, John Robert Rose, Alan Bateman
  • Patent number: 10853110
    Abstract: Techniques for performing constructor accessibility checks during deserialization are disclosed. A system receives a command that requires deserializing a serialized object of a target type. The system determines an ancestor type of the target type. Without calling any constructors and regardless of whether the ancestor type is serializable, the system determines whether a constructor of the ancestor type is accessible to the target type. The system deserializes the serialized object only after determining that the constructor of the ancestor type is accessible to the target type.
    Type: Grant
    Filed: December 20, 2018
    Date of Patent: December 1, 2020
    Assignee: Oracle International Corporation
    Inventors: Stuart Warren Marks, Alan Bateman
  • Patent number: 10846417
    Abstract: Techniques for identifying permitted illegal access operations in a module system are disclosed. An operation, expressed in a first module, that attempts to access a module element of a second module is identified. Based on a module declaration associated with the second module, the module element is determined inaccessible to the first module. Additionally or alternatively, based on an access modifier associated with the module element, the module element is determined inaccessible to the operation. The operation is determined as an illegal access operation. The illegal access operation is permitted to access the module element. A warning corresponding to the illegal access operation is generated.
    Type: Grant
    Filed: October 17, 2017
    Date of Patent: November 24, 2020
    Assignee: Oracle International Corporation
    Inventors: Alan Bateman, Chris Hegarty, Alexander R. Buckley, Brian Goetz, Mark B. Reinhold
  • Publication number: 20200264846
    Abstract: A runtime environment generates a proxy class in response to detecting a request for a proxy object. The proxy class implements a set of interfaces specified by the request for the proxy object. The runtime environment selects or generates a proxy module, in a module system, to include the proxy class. The runtime environment exposes interfaces from other modules to the proxy module using a qualified export that does not expose the interfaces to modules other than the proxy module. The runtime environment does not expose the proxy class, of the proxy module, to other modules in the module system.
    Type: Application
    Filed: May 6, 2020
    Publication date: August 20, 2020
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
  • Patent number: 10684827
    Abstract: A runtime environment generates a proxy class in response to detecting a request for a proxy object. The proxy class implements a set of interfaces specified by the request for the proxy object. The runtime environment selects or generates a proxy module, in a module system, to include the proxy class. The runtime environment exposes interfaces from other modules to the proxy module using a qualified export that does not expose the interfaces to modules other than the proxy module. The runtime environment does not expose the proxy class, of the proxy module, to other modules in the module system.
    Type: Grant
    Filed: August 23, 2018
    Date of Patent: June 16, 2020
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
  • Publication number: 20200019423
    Abstract: Techniques for performing constructor accessibility checks during deserialization are disclosed. A system receives a command that requires deserializing a serialized object of a target type. The system determines an ancestor type of the target type. Without calling any constructors and regardless of whether the ancestor type is serializable, the system determines whether a constructor of the ancestor type is accessible to the target type. The system deserializes the serialized object only after determining that the constructor of the ancestor type is accessible to the target type.
    Type: Application
    Filed: December 20, 2018
    Publication date: January 16, 2020
    Applicant: Oracle International Corporation
    Inventors: STUART WARREN MARKS, ALAN BATEMAN
  • Patent number: 10394610
    Abstract: Techniques for managing split packages in a module system are disclosed. A code conflict exists between two packages, in different modules, based at least in part on the packages being named identically and including executable code. No code conflict exists between two other identically-named packages, in different modules, based at least in part on the packages not including any executable code. Managing split packages may be based, at least in part, on module membership records associated with the modules.
    Type: Grant
    Filed: September 30, 2017
    Date of Patent: August 27, 2019
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Lai Hung Mandy Chung, Mark B. Reinhold, Alan Bateman
  • Patent number: 10367822
    Abstract: Access to a module element within a first module by a second module is prohibited if the module element within the first module has not been exposed to the second module. If a particular module element within a first module has been exposed to a second module, then access to the particular module element by the second module may or may not be allowed depending on: (a) whether the particular module element has been declared with a public or non-public access modifier, (b) whether a second exposed module element, which includes the particular module element, has been declared with a public or non-public access modifier, (c) a level of access associated with the operation that attempts to access the particular module element of the first module, and/or (d) whether an accessibility override configuration is set for accessing the particular module element.
    Type: Grant
    Filed: August 23, 2018
    Date of Patent: July 30, 2019
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mark B. Reinhold, Alan Bateman, Paul Sandoz, Chris Hegarty
  • Patent number: 10346225
    Abstract: Techniques for renaming a module in a module system are disclosed. It is determined that a first module is declared with a corresponding first module name. It is determined that the first module is associated with a second module name. Responsive to determining that the first module is associated with the second module name: a second module declared with the second module name is synthesized, and a dependency of the second module, with the second module name, is declared on the first module with the first module name.
    Type: Grant
    Filed: September 14, 2017
    Date of Patent: July 9, 2019
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Alan Bateman
  • Publication number: 20190102230
    Abstract: Techniques for managing split packages in a module system are disclosed. A code conflict exists between two packages, in different modules, based at least in part on the packages being named identically and including executable code. No code conflict exists between two other identically-named packages, in different modules, based at least in part on the packages not including any executable code. Managing split packages may be based, at least in part, on module membership records associated with the modules.
    Type: Application
    Filed: September 30, 2017
    Publication date: April 4, 2019
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, Lai Hung Mandy Chung, Mark B. Reinhold, Alan Bateman
  • Publication number: 20190079811
    Abstract: Techniques for renaming a module in a module system are disclosed. It is determined that a first module is declared with a corresponding first module name. It is determined that the first module is associated with a second module name. Responsive to determining that the first module is associated with the second module name: a second module declared with the second module name is synthesized, and a dependency of the second module, with the second module name, is declared on the first module with the first module name.
    Type: Application
    Filed: September 14, 2017
    Publication date: March 14, 2019
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, Alan Bateman
  • Publication number: 20190028483
    Abstract: Access to a module element within a first module by a second module is prohibited if the module element within the first module has not been exposed to the second module. If a particular module element within a first module has been exposed to a second module, then access to the particular module element by the second module may or may not be allowed depending on: (a) whether the particular module element has been declared with a public or non-public access modifier, (b) whether a second exposed module element, which includes the particular module element, has been declared with a public or non-public access modifier, (c) a level of access associated with the operation that attempts to access the particular module element of the first module, and/or (d) whether an accessibility override configuration is set for accessing the particular module element.
    Type: Application
    Filed: August 23, 2018
    Publication date: January 24, 2019
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mark B. Reinhold, Alan Bateman, Paul Sandoz, Chris Hegarty
  • Publication number: 20180364989
    Abstract: A runtime environment generates a proxy class in response to detecting a request for a proxy object. The proxy class implements a set of interfaces specified by the request for the proxy object. The runtime environment selects or generates a proxy module, in a module system, to include the proxy class. The runtime environment exposes interfaces from other modules to the proxy module using a qualified export that does not expose the interfaces to modules other than the proxy module. The runtime environment does not expose the proxy class, of the proxy module, to other modules in the module system.
    Type: Application
    Filed: August 23, 2018
    Publication date: December 20, 2018
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
  • Patent number: 10158647
    Abstract: Access to a module element within a first module by a second module is prohibited if the module element within the first module has not been exposed to the second module. If a particular module element within a first module has been exposed to a second module, then access to the particular module element by the second module may or may not be allowed depending on: (a) whether the particular module element has been declared with a public or non-public access modifier, (b) whether a second exposed module element, which includes the particular module element, has been declared with a public or non-public access modifier, (c) a level of access associated with the operation that attempts to access the particular module element of the first module, and/or (d) whether an accessibility override configuration is set for accessing the particular module element.
    Type: Grant
    Filed: September 8, 2015
    Date of Patent: December 18, 2018
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mark B. Reinhold, Alan Bateman, Paul Sandoz, Chris Hegarty
  • Patent number: 10140119
    Abstract: A serial form of a serializable exposed first module element of a module in a module system is analyzed. An unexposed and/or inaccessible second module element expressed in the serial form is identified as a potential error condition. A corrective execution is executed and/or a warning is presented.
    Type: Grant
    Filed: March 17, 2016
    Date of Patent: November 27, 2018
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley, Mark B. Reinhold, Alan Bateman
  • Patent number: 10120777
    Abstract: Techniques for remediating serialization incompatibilities are disclosed. A runtime environment of a module system identifies a first serializable runtime object comprising a reference to a second serializable runtime object. The first serializable runtime object is an instantiation of a first element in a first package of the module system. The first package is open to one or more reflective operations. Based on determining that (a) the second serializable runtime object is an instantiation of a second element in a second package of the module system and (b) the second element is not open to the one or more reflective operations, a remedial operation, associated with the first serializable runtime object, is executed.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: November 6, 2018
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alan Bateman