RU2632142C2 - Method and electronic permission management unit for objects - Google Patents

Method and electronic permission management unit for objects Download PDF

Info

Publication number
RU2632142C2
RU2632142C2 RU2015126020A RU2015126020A RU2632142C2 RU 2632142 C2 RU2632142 C2 RU 2632142C2 RU 2015126020 A RU2015126020 A RU 2015126020A RU 2015126020 A RU2015126020 A RU 2015126020A RU 2632142 C2 RU2632142 C2 RU 2632142C2
Authority
RU
Russia
Prior art keywords
interrogator
action
permission
request
perform
Prior art date
Application number
RU2015126020A
Other languages
Russian (ru)
Other versions
RU2015126020A (en
Inventor
Александр Александрович Зинчук
Original Assignee
Общество С Ограниченной Ответственностью "Яндекс"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество С Ограниченной Ответственностью "Яндекс" filed Critical Общество С Ограниченной Ответственностью "Яндекс"
Priority to RU2015126020A priority Critical patent/RU2632142C2/en
Priority to PCT/IB2016/050520 priority patent/WO2017001938A1/en
Publication of RU2015126020A publication Critical patent/RU2015126020A/en
Application granted granted Critical
Publication of RU2632142C2 publication Critical patent/RU2632142C2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory

Abstract

FIELD: electricity.
SUBSTANCE: in the method, one receives the request to the first object from the first requester for performing the requiring the first permission first operation on the first object. The central permission manager gives the first permission for the first operation performing to the first requester in reaction to the first request. The first requester controls the first object, the receiving the second request to the first object from the second requester for performing the requiring the second permission second operation on the first object. In reaction to the second request, one provides the transmission of the second request to the first requester, who controls the first object, and either, in reaction to the fact that the first requester gives the second permission to the second requester, one permits the second operation to the second requester, the second requester gains the control over the first object, and one ends the first permission and the first operation performing by the first requester, or, in reaction to the fact that the first requester does not give the second permission to the second requester and does not permit the second operation performing by the second requester, the first requester continues to control the object.
EFFECT: permission management for objects provision.
15 cl 3 dwg

Description

Перекрестная ссылкаCross reference

[01] Отсутствует.[01] Not available.

Область техники, к которой относится изобретениеFIELD OF THE INVENTION

[02] Настоящее техническое решение относится к интерфейсам программирования приложений (API) в целом, и, конкретнее, к системе и способу управления объектами в различных вариантах реализации API.[02] The present technical solution relates to application programming interfaces (APIs) in general, and more specifically, to a system and method for managing objects in various API implementations.

Уровень техникиState of the art

[03] Различные глобальные или локальные сети связи (Интернет, Всемирная Паутина, локальные сети и подобные им) предлагают пользователю большой объем информации. Информация включает в себя контекстуальные разделы, такие как, среди прочего, новости и текущие события, карты, информация о компаниях, финансовая информация и ресурсы, информация о трафике, игры и информация развлекательного характера. Пользователи используют множество электронных устройств (настольный компьютер, портативный компьютер, ноутбук, смартфон, планшеты и подобные им) для получения доступа к богатому информационному контенту (например, изображениям, аудио- и видеофайлам, анимированным изображениям и прочему мультимедийному контенту подобных сетей). Подобные электронные устройства становятся все более популярными в повседневной жизни благодаря их все возрастающей функциональности. Таким образом, программное обеспечение становится все более обширным по размеру и количеству, и, следовательно, возрастает необходимость в совместной работе различных программ.[03] Various global or local communication networks (Internet, World Wide Web, local area networks and the like) offer the user a large amount of information. Information includes contextual sections such as, but not limited to, news and current affairs, maps, company information, financial information and resources, traffic information, games and entertainment information. Users use a variety of electronic devices (desktop computer, laptop computer, laptop, smartphone, tablets and the like) to access rich information content (such as images, audio and video files, animated images and other multimedia content of similar networks). Such electronic devices are becoming increasingly popular in everyday life due to their ever-increasing functionality. Thus, the software is becoming more and more extensive in size and quantity, and, consequently, the need for joint work of various programs.

[04] Интерфейс программирования приложений (API) представляет собой набор процедур, протоколов и инструментов для создания программных приложений. API указывает на то, как именно должны взаимодействовать различные программные компоненты. API используются, например, при разработке компонентов графического пользовательского интерфейса (GUI). API помогает разрабатывать программное обеспечение путем предоставления всех строительных блоков, которые программист далее составляет вместе. Существуют различные типы API для операционных систем, приложений и веб-сайтов.[04] Application Programming Interface (API) is a set of procedures, protocols, and tools for creating software applications. The API indicates how exactly the various software components should interact. APIs are used, for example, in the development of graphical user interface (GUI) components. The API helps develop software by providing all the building blocks that the programmer further compiles together. There are various types of APIs for operating systems, applications, and websites.

[05] Многие API используют объектно-ориентированное программирование, в которых программисты определяют не только тип данных в структуре данных, но также типы операций (функций), которые будут применяться к структуре данных. Поэтому структура данных становится объектом, который включает в себя данные и функции. В общем случае, «объект» является элементом, который может индивидуально выбираться и управляться. Он может включать в себя формы и изображения, которые появляются на экране монитора, а также менее осязаемые объекты. В объектно-ориентированном программировании, например, объект представляет собой автономный элемент, который состоит из данных и процедур для управления данными. Объектно-ориентированные способы программирования позволяют программистам создавать модули, которые нет необходимости менять в тот момент, когда добавлен новый объект, поскольку программист может легко создавать новый объект, который наследует многие из характеристик существующих объектов, что делает объектно-ориентированные объекты более удобными для модификации. Дополнительно, программисты могут создавать связи между объектами. Например, объекты могут наследовать характеристики от других объектов.[05] Many APIs use object-oriented programming, in which programmers define not only the type of data in the data structure, but also the types of operations (functions) that will be applied to the data structure. Therefore, the data structure becomes an object that includes data and functions. In general, an “object” is an element that can be individually selected and controlled. It may include the shapes and images that appear on the monitor screen, as well as less tangible objects. In object-oriented programming, for example, an object is an autonomous element that consists of data and procedures for managing data. Object-oriented programming methods allow programmers to create modules that do not need to be changed when a new object is added, since a programmer can easily create a new object that inherits many of the characteristics of existing objects, which makes object-oriented objects more convenient for modification. Additionally, programmers can create relationships between objects. For example, objects can inherit characteristics from other objects.

[06] Поскольку число компьютерных программ (например, браузеры, приложения, апплеты и так далее), которые используются электронными устройствами, растет, возрастает и необходимость совместного управления объектами. В общем случае, объекты управляются центральным менеджером разрешений, который способствует определению и/или выдаче разрешений, которые необходимы для работы. Тем не менее, существует необходимость в улучшенных способах и системах для управления объектами в пределах программной среды, например, API.[06] As the number of computer programs (eg, browsers, applications, applets and so on) that are used by electronic devices is growing, so does the need for joint management of objects. In general, objects are managed by a central permissions manager, which helps to identify and / or issue permissions that are necessary for the job. However, there is a need for improved methods and systems for managing objects within a software environment, such as an API.

[07] Патент США №US 6993665, опубл. 31.01.2006 описывает способы и устройство для предоставления менеджера разрешений, который способен помогать апплету, например, определять и/или давать разрешения, которые необходимы для работы. Описано устройство для управления разрешениями, устройство включает в себя программное приложение, менеджер разрешений, который связан с программным приложением и получает запрос, отправленный программным приложением, и программную среду, связанную с менеджером разрешений. Запрос может указывать на разрешение, которое может быть запрошено менеджером разрешений. Менеджер разрешений может получать доступ к программной среде для определения необходимого разрешения, соответствующего разрешению, и для определения того, как именно следует давать запрашиваемое разрешение.[07] US Patent No. US 6993665, publ. 01/31/2006 describes methods and apparatus for providing a permission manager that is capable of assisting an applet, for example, determining and / or giving permissions that are necessary for work. A device for managing permissions is described, the device includes a software application, a permission manager that is associated with the software application and receives a request sent by the software application, and a software environment associated with the permission manager. The request may indicate a permission that may be requested by the permission manager. The permission manager can access the software environment to determine the required permission corresponding to the permission, and to determine how the requested permission should be given.

[08] Международная заявка WO 1994023362 опубл. 13.10.1994 описывает объектно-ориентированную программную среду. Среда включает в себя множество классов и объектов. Каждый объект связывается с другими объектами в среде путем передачи сообщений, которые выполняют способы в этих других объектах. Среда содержит по меньшей мере один целевой объект, который содержит один или несколько универсальных способов, которые используются для связи с другим объектом. Эти универсальные способы обычно включены во все целевые объекты в среде, одновременно с соответствующими универсальными экземплярами переменных, которые использовались универсальными способами, тем самым формируя универсальный протокол или интерфейс для целевых объектов. Поведенческие объекты, объекты, которые реализуют поведение других объектов, получают и модифицируют свойства целевого объекта путем прямого применения универсальных способов, находящихся в целевом объекте. Связь между поведенческим объектом и целевым объектом осуществляется по универсальному протоколу (способ и экземпляры переменных).[08] International application WO 1994023362 publ. 10/13/1994 describes an object-oriented software environment. The environment includes many classes and objects. Each object communicates with other objects in the environment by transmitting messages that execute methods in these other objects. The environment contains at least one target, which contains one or more universal methods that are used to communicate with another object. These universal methods are usually included in all targets in the environment, simultaneously with the corresponding universal instances of variables that were used by universal methods, thereby forming a universal protocol or interface for the targets. Behavioral objects, objects that realize the behavior of other objects, receive and modify the properties of the target object by direct application of universal methods located in the target object. The connection between the behavioral object and the target object is carried out according to a universal protocol (method and variable instances).

[09] Известны шаблоны посредников для определения объекта, в котором заключается описание того, как именно взаимодействуют объекты. С учетом шаблона посредника, связь между объектами описывается с помощью объекта-посредника. Объекты больше не взаимодействуют друг с другом, они взаимодействуют через посредника. Это уменьшает зависимость между связанными объектами, что снижает связанность (см. «Посредник (шаблон проектирования)» в Википедии. Фонд Википедии, 28 ноября 2014 года. Web. https://ru.wikipedia.org/wiki/Посредник_(шаблон_проектирования))[09] Known patterns of intermediaries for determining the object, which is a description of how exactly the objects interact. Given the mediator template, the relationship between objects is described using an intermediary object. Objects no longer interact with each other, they interact through an intermediary. This reduces the relationship between related objects, which reduces connectivity (see “Intermediary (design pattern)” on Wikipedia. Wikipedia Foundation, November 28, 2014. Web. Https://en.wikipedia.org/wiki/Mediation_Project_Master))

Раскрытие изобретенияDisclosure of invention

[10] Задачей предлагаемого технического решения является устранение по меньшей мере некоторых недостатков, присущих известному уровню техники. Варианты осуществления настоящего технического решения были разработаны на основе предположений изобретателей о том, что существует необходимость в способах и системах для управления объектами в программной среде, например, API.[10] The objective of the proposed technical solution is to eliminate at least some of the disadvantages inherent in the prior art. Embodiments of the present technical solution were developed based on the assumptions of the inventors that there is a need for methods and systems for managing objects in a software environment, for example, an API.

[11] Одним объектом настоящего технического решения является способ управления разрешениями для объектов, объекты выполняются сервером как часть программных процедур, способ выполняется на электронном устройстве (например, клиентском устройстве или сервере). Способ включает в себя получение первого запроса на первый объект от первого элемента запроса, первый запрос включает запрос на выполнение первого действия над первым объектом, выполнение первого действия требует первого разрешения. В ответ на первый запрос, дается первое разрешение на выполнение первого действия первому запросчику, и первый запросчик, следовательно, контролирует первый объект. Получают второй запрос на первый объект от второго запросчика, второй запрос включает запрос на выполнение второго действия над первым объектом, выполнение второго действия требует второго разрешения. В ответ на указанный второй запрос, второй запрос передается первому запросчику, первый запросчик контролирует первый объект. Выполняется одно из следующего: первый запросчик дает второе разрешение второму запросчику, что позволяет выполнять второе действие вторым запросчиком, второй запросчик, следовательно, контролирует первый объект, и завершение первого разрешения и выполнения первого действия первым запросчиком; или первый запросчик не дает второе разрешение второму запросчику, тем самым не позволяя выполнять второе действие вторым запросчиком, первый запросчик продолжает контролировать первый объект.[11] One object of the present technical solution is a method of managing permissions for objects, objects are executed by the server as part of software procedures, the method is performed on an electronic device (for example, a client device or server). The method includes receiving a first request for a first object from a first request element, a first request includes a request to perform a first action on a first object, performing a first action requires a first permission. In response to the first request, the first permission to perform the first action is given to the first requestor, and the first requestor, therefore, controls the first object. A second request to the first object is received from the second interrogator, the second request includes a request to perform the second action on the first object, the second action requires a second permission. In response to the specified second request, the second request is transmitted to the first interrogator, the first interrogator controls the first object. One of the following is performed: the first interrogator gives the second permission to the second interrogator, which allows the second interrogator to perform the second action, the second interrogator, therefore, controls the first object, and the completion of the first permission and the first action by the first interrogator; or the first interrogator does not give a second permission to the second interrogator, thereby preventing the second interrogator from performing the second action, the first interrogator continues to monitor the first object.

[12] В некоторых вариантах осуществления настоящего технического решения, в ответ на то, что первый запросчик дает второе разрешение второму запросчику и позволяет выполнять второе действие вторым запросчиком, первый запросчик, тем не менее, продолжает контролировать первый объект.[12] In some embodiments of the present technical solution, in response to the fact that the first interrogator gives a second permission to the second interrogator and allows the second action to be performed by the second interrogator, the first interrogator nevertheless continues to control the first object.

[13] В некоторых вариантах осуществления настоящего технического решения, первое действие и второе действие являются одним и тем же действием. В альтернативных вариантах осуществления настоящего технического решения, первое действие и второе действие являются различными действиями. В некоторых вариантах осуществления настоящего технического решения, второе действие включает в себя первое действие и дополнительное действие. В подобных вариантах осуществления первый запросчик может частично давать второе разрешение второму запросчику, что позволяет выполнять часть второго действия вторым запросчиком. Например, первый запросчик может частично давать второе разрешение второму запросчику, что позволяет выполнять первое действие вторым запросчиком и не позволяет выполнять дополнительное действие вторым запросчиком. В альтернативных вариантах осуществления настоящего технического решения, первый запросчик может позволить выполнение дополнительного действия вторым запросчиком и не позволить выполнение первого действия вторым запросчиком. В тех вариантах осуществления настоящего технического решения, где разрешение было частично дано второму запросчику, первый запросчик продолжает частично контролировать первый объект, второй запросчик контролирует часть второго действия, для которого было дано разрешение и выполнение которого было разрешено.[13] In some embodiments of the present technical solution, the first action and the second action are the same action. In alternative embodiments of the present technical solution, the first action and the second action are different actions. In some embodiments of the present technical solution, the second action includes a first action and an additional action. In such embodiments, the first interrogator may partially give a second permission to the second interrogator, which allows part of the second action to be performed by the second interrogator. For example, the first interrogator may partially give a second permission to the second interrogator, which allows the second interrogator to perform the first action and does not allow the second interrogator to perform the additional action. In alternative embodiments of the present technical solution, the first interrogator may allow the second interrogator to perform an additional action and not allow the second interrogator to perform the first action. In those embodiments of the present technical solution where the permission was partially granted to the second interrogator, the first interrogator continues to partially control the first object, the second interrogator controls the part of the second action for which permission was granted and the execution of which was allowed.

[14] В некоторых вариантах осуществления настоящего технического решения, первый объект включает в себя элемент пользовательского интерфейса, указатель, аудио-объект, объект изображения, видео-объект или текстовый объект. Неограничивающие примеры элементов пользовательского интерфейса включают в себя текстовые поля, панели инструментов, строки меню и кнопки. В некоторых вариантах осуществления настоящего технического решения, первый объект может представлять собой всплывающий объект.[14] In some embodiments of the present technical solution, the first object includes a user interface element, a pointer, an audio object, an image object, a video object, or a text object. Non-limiting examples of user interface elements include text fields, toolbars, menu bars, and buttons. In some embodiments of the present technical solution, the first object may be a pop-up object.

[15] В некоторых вариантах осуществления настоящего технического решения, первое действие, второе действие и дополнительное действие включают в себя, независимо, одно или несколько из: демонстрацию первого объекта, что позволяет первому объекту появляться, ввод текста в первый объект, ввод данных или информации в первый объект, нажатие на первый объект, выбор первого объекта, выбор части первого объекта, удаление первого объекта.[15] In some embodiments of the present technical solution, the first action, the second action and the additional action include, independently, one or more of: a demonstration of the first object, which allows the first object to appear, entering text into the first object, entering data or information in the first object, clicking on the first object, selecting the first object, selecting a part of the first object, deleting the first object.

[16] Другим объектом настоящего технического решения является электронное устройство, связанное с пользователем, электронное устройство включает в себя интерфейс связи для установления связи с сервером через интерфейс связи, сервер выполнен с возможностью выполнять объекты как часть программных процедур; и процессор, функционально связанный с интерфейсом связи. Процессор дополнительно выполнен с возможностью осуществлять получение первого запроса на первый объект от первого элемента запроса, первый запрос включает запрос на выполнение первого действия над первым объектом, выполнение первого действия требует первого разрешения. В ответ на указанный первый запрос, процессор выполнен с возможностью давать первое разрешение на выполнение первого действия первому запросчику, и первый запросчик, следовательно, контролирует первый объект. Процессор дополнительно выполнен с возможностью осуществлять получение второго запроса на первый объект от второго запросчика, второй запрос включает запрос на выполнение второго действия над первым объектом, выполнение второго действия требует второго разрешения. В ответ на указанный второй запрос, процессор выполнен с возможностью осуществлять передачу второго запроса первому запросчику, причем первый запросчик контролирует первый объект, и выполнять одно из следующего: 1) в ответ на то, что первый запросчик дает второе разрешение второму запросчику, процессор выполнен с возможностью выполнять второе действие вторым запросчиком, второй запросчик, следовательно, контролирует первый объект, и завершение первого разрешения и выполнения первого действия первым запросчиком; или 2) в ответ на то, что первый запросчик не дает второе разрешение второму запросчику, процессор выполнен с возможностью не позволить выполнять второе действие вторым запросчиком, первый запросчик продолжает контролировать первый объект.[16] Another object of the present technical solution is an electronic device associated with a user, the electronic device includes a communication interface for establishing communication with the server via the communication interface, the server is configured to execute objects as part of program procedures; and a processor operatively coupled to the communication interface. The processor is additionally configured to receive the first request for the first object from the first request element, the first request includes a request to perform the first action on the first object, the first action requires first permission. In response to the specified first request, the processor is configured to give the first permission to perform the first action to the first requestor, and the first requestor, therefore, controls the first object. The processor is additionally configured to receive a second request to the first object from the second interrogator, the second request includes a request to perform a second action on the first object, the second action requires a second permission. In response to the specified second request, the processor is configured to transmit the second request to the first interrogator, the first interrogator controlling the first object, and to perform one of the following: 1) in response to the first interrogator giving the second permission to the second interrogator, the processor is executed with the ability to perform the second action by the second interrogator, the second interrogator, therefore, controls the first object, and the completion of the first resolution and the first action by the first interrogator; or 2) in response to the fact that the first interrogator does not give a second permission to the second interrogator, the processor is configured to prevent the second interrogator from performing the second action, the first interrogator continues to monitor the first object.

[17] В некоторых вариантах осуществления электронного устройства, в ответ на то, что первый запросчик дает второе разрешение второму запросчику и позволяет выполнять второе действие вторым элементом, первый запросчик, тем не менее, продолжает контролировать первый объект.[17] In some embodiments of the electronic device, in response to the first interrogator giving the second permission to the second interrogator and allowing the second action to be performed by the second element, the first interrogator, however, continues to monitor the first object.

[18] В некоторых вариантах осуществления электронного устройства, первое действие и второе действие являются одним и тем же действием. В альтернативных вариантах осуществления электронного устройства, первое действие и второе действие являются разными действиями. В некоторых вариантах осуществления электронного устройства, второе действие включает в себя и первое действие и дополнительное действие, и первый запросчик частично дает второе разрешение второму запросчику, таким образом, выполнение части второго действия разрешено вторым запросчиком. Например, в некоторых вариантах осуществления настоящего технического решения, первый запросчик частично дает второе разрешение второму запросчику, что позволяет выполнить первое действие вторым запросчиком и не позволяет выполнить дополнительное действие вторым запросчиком. В альтернативных вариантах осуществления настоящего технического решения, первый запросчик частично дает второе разрешение второму запросчику, что позволяет выполнить дополнительное действие вторым запросчиком и не позволяет выполнять первое действие вторым запросчиком. В подобных вариантах осуществления настоящего технического решения, первый запросчик продолжает частично контролировать первый объект, второй запросчик контролирует часть второго действия, для которого было дано разрешение и выполнение которого было разрешено.[18] In some embodiments of the electronic device, the first action and the second action are the same action. In alternative embodiments of an electronic device, the first action and the second action are different actions. In some embodiments of the electronic device, the second action includes both the first action and the additional action, and the first interrogator partially gives the second permission to the second interrogator, thus the execution of the second part of the action is permitted by the second interrogator. For example, in some embodiments of the present technical solution, the first interrogator partially gives the second permission to the second interrogator, which allows the first action to be performed by the second interrogator and does not allow the additional action to be performed by the second interrogator. In alternative embodiments of the present technical solution, the first interrogator partially gives the second permission to the second interrogator, which allows an additional action to be performed by the second interrogator and does not allow the first action to be performed by the second interrogator. In such embodiments of the implementation of the present technical solution, the first interrogator continues to partially control the first object, the second interrogator controls part of the second action for which permission was given and the execution of which was allowed.

[19] В некоторых вариантах осуществления электронного устройства, первый объект включает в себя элемент пользовательского интерфейса, указатель, аудио-объект, объект изображения, видео-объект или текстовый объект. Неограничивающие примеры элементов пользовательского интерфейса включают в себя текстовые поля, панели инструментов, строки меню, гиперссылки и кнопки. В некоторых вариантах осуществления электронного устройства первый объект является всплывающим объектом.[19] In some embodiments of an electronic device, the first object includes a user interface element, a pointer, an audio object, an image object, a video object, or a text object. Non-limiting examples of user interface elements include text fields, toolbars, menu bars, hyperlinks, and buttons. In some embodiments of an electronic device, the first object is a pop-up object.

[20] В некоторых вариантах осуществления электронного устройства, первое действие, второе действие и дополнительное действие включают в себя, независимо, одно или несколько из: демонстрацию первого объекта, что позволяет первому объекту появляться, и ввод текста в первый объект, и ввод данных или информации в первый объект, и нажатие на первый объект, и выбор первого объекта, и выбор части первого объекта, и удаление первого объекта.[20] In some embodiments of the electronic device, the first action, the second action and the additional action include, independently, one or more of: a demonstration of the first object that allows the first object to appear, and text input to the first object, and data input or information into the first object, and clicking on the first object, and selecting the first object, and selecting a part of the first object, and deleting the first object.

[21] В контексте настоящего описания «сервер» подразумевает под собой компьютерную программу, работающую на соответствующем оборудовании, которая способна получать запросы (например, от электронных устройств) по сети (например, сети передачи данных) и выполнять эти запросы или инициировать выполнение этих запросов. Оборудование может представлять собой один физический компьютер или одну физическую компьютерную систему, но ни то, ни другое не является обязательным для настоящего технического решения. В контексте настоящего технического решения использование выражения «сервер» не означает, что каждая задача (например, полученные команды или запросы) или какая-либо конкретная задача будет получена, выполнена или инициирована к выполнению одним и тем же сервером (то есть одним и тем же программным обеспечением и/или аппаратным обеспечением); это означает, что любое количество элементов программного обеспечения или аппаратных устройств может быть вовлечено в прием/передачу, выполнение или инициирование выполнения любого запроса или последствия любого запроса, связанного с клиентским устройством, и все это программное и аппаратное обеспечение может быть одним сервером или несколькими серверами, оба варианта включены в выражение «по меньшей мере один сервер».[21] In the context of the present description, “server” means a computer program running on appropriate equipment that is able to receive requests (for example, from electronic devices) over a network (eg, data network) and execute these requests or initiate the execution of these requests . The equipment may be one physical computer or one physical computer system, but neither one nor the other is mandatory for this technical solution. In the context of this technical solution, the use of the expression “server” does not mean that each task (for example, received commands or requests) or any specific task will be received, completed or initiated to be executed by the same server (that is, by the same software and / or hardware); this means that any number of software elements or hardware devices can be involved in receiving / transmitting, executing or initiating the execution of any request or the consequences of any request associated with the client device, and all this software and hardware can be one server or several servers , both options are included in the expression “at least one server”.

[22] В контексте настоящего описания «электронное устройство» подразумевает под собой вычислительное устройство или компьютерное устройство, способное работать с программным обеспечением, подходящим к решению соответствующей задачи. Таким образом, некоторыми примерами электронных устройств (среди прочего) могут служить универсальные персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.), мобильные компьютерные устройства, смартфоны, планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует иметь в виду, что электронное устройство в настоящем контексте может вести себя как сервер по отношению к другим электронным устройствам. Использование выражения «электронное устройство» не исключает возможности использования множества электронных устройств для получения/отправки, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного метода. В контексте настоящего описания термин «клиентское устройство» относится к любому из ряда клиентских электронных устройств, связанных с пользователем, например, персональные компьютеры, планшеты, смартфоны и тому подобное.[22] In the context of the present description, "electronic device" means a computing device or a computer device capable of working with software suitable for solving the corresponding problem. Thus, some examples of electronic devices (among other things) include universal personal computers (desktop computers, laptops, netbooks, etc.), mobile computer devices, smartphones, tablets, and network equipment such as routers, switches, and gateways . It should be borne in mind that an electronic device in the present context can behave like a server in relation to other electronic devices. The use of the expression “electronic device” does not exclude the possibility of using multiple electronic devices to receive / send, execute or initiate the execution of any task or request, or the consequences of any task or request, or the steps of any method described above. In the context of the present description, the term "client device" refers to any of a number of client electronic devices associated with the user, for example, personal computers, tablets, smartphones and the like.

[23] В контексте настоящего описания «база данных» подразумевает под собой любой структурированный набор данных, не зависящий от конкретной структуры, программного обеспечения по управлению базой данных, аппаратного обеспечения компьютера, на котором данные хранятся, используются или иным образом оказываются доступны для использования. База данных может находиться на том же оборудовании, выполняющем процесс, который сохраняет или использует информацию, хранящуюся в базе данных, или же она может находиться на отдельном оборудовании, например, выделенном сервере или множестве серверов.[23] In the context of the present description, “database” means any structured data set independent of the specific structure, database management software, hardware of the computer on which data is stored, used or otherwise made available for use. The database may reside on the same hardware that runs the process that stores or uses the information stored in the database, or it may reside on separate hardware, such as a dedicated server or multiple servers.

[24] В контексте настоящего описания термин «данные» включает в себя любую информацию, которая может храниться, например, в базе данных, или может быть передана в электронной форме, например, потоком. Таким образом, данные включают в себя, среди прочего, аудиовизуальные произведения (изображения, видео, звукозаписи, презентации и т.д.), данные о местоположении, цифровые данные и т.д., текст (мнения, комментарии, вопросы, сообщения и т.д.), документы, таблицы и т.д.[24] In the context of the present description, the term "data" includes any information that may be stored, for example, in a database, or may be transmitted in electronic form, for example, by stream. Thus, data includes, but is not limited to, audiovisual works (images, videos, sound recordings, presentations, etc.), location data, digital data, etc., text (opinions, comments, questions, messages and etc.), documents, tables, etc.

[25] В контексте настоящего описания термин «машиночитаемый носитель информации» подразумевает носитель абсолютно любого типа. Машиночитаемый носитель информации может включать в себя энергозависимые и энергонезависимые, переносные и не переносные носители, которые реализованы в соответствии с любым способом или технологией, для хранения информации, например, машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерные носители могут включать в себя ОЗУ, ПЗУ, электрически стираемое программируемое ПЗУ, флэш-память или любая другая архитектура памяти, компакт диски, DVD-диски или другие оптические носители, дискеты, жесткие диски, магнитные кассеты, накопители на магнитной ленте, USB ключи, твердотельные накопители, ленточные накопители или любые другие носители, которые могут быть использованы для хранения желаемой информации, которая может быть доступна для извлечения[25] In the context of the present description, the term "computer-readable storage medium" means a medium of absolutely any type. A computer-readable storage medium may include volatile and non-volatile, portable and non-portable media that are implemented in accordance with any method or technology for storing information, for example, machine-readable instructions, data structures, program modules or other data. Computer storage media may include RAM, ROM, electrically erasable programmable ROM, flash memory or any other memory architecture, CDs, DVDs or other optical media, floppy disks, hard drives, magnetic tapes, magnetic tape drives, USB keys , solid state drives, tape drives, or any other media that can be used to store the desired information that may be available for retrieval

[26] В контексте настоящего описания термин «сеть передачи данных» означает любую сеть передачи данных, например, компьютерную сеть, Интернет, телефонную сеть, систему телексной связи, сеть TCP/IP (например, сеть WAN, сеть LAN) и тому подобное. Термин «сеть передачи данных» включает в себя проводную сеть или напрямую соединенную сеть, а также беспроводную связь, например, акустическую, радиочастотную, инфракрасную и другие типы беспроводной связи, а также комбинации любых из вышеперечисленных.[26] In the context of the present description, the term "data network" means any data network, for example, a computer network, the Internet, a telephone network, a telex communication system, a TCP / IP network (for example, a WAN network, a LAN network) and the like. The term "data network" includes a wired network or a directly connected network, as well as wireless communications, for example, acoustic, radio frequency, infrared and other types of wireless communications, as well as combinations of any of the above.

[27] Специалисты в данной области техники поймут, что в настоящем описании выражение «получение данных» от пользователя или программы подразумевает получение электронным устройством данных от пользователя или программы в виде электронного (или другого) сигнала. Кроме того, специалисты в данной области техники поймут, что отображение данных пользователю через графический интерфейс пользователя или GUI (например, экран компьютерного устройства и тому подобное) может включать в себя передачу сигнала графическому интерфейсу пользователя, этот сигнал содержит данные, которые могут быть обработаны, и по меньшей мере часть этих данных может отображаться пользователю через графический интерфейс пользователя. Некоторые из этих этапов, а также передача-получение сигнала хорошо известны в данной области техники и поэтому для упрощения были опущены в конкретных частях данного описания. Важно иметь в виду, что варианты осуществления сигналов никак конкретно не ограничены. Например, сигналы могут быть переданы и получены, без установления ограничений, с помощью оптических средств (например, оптического соединения), электронных средств (например, проводного или беспроводного соединения) и механических средств (например, на основе давления, температуры или другого подходящего параметра).[27] Those of ordinary skill in the art will understand that in the present description, the expression “receiving data” from a user or program means that the electronic device receives data from the user or program as an electronic (or other) signal. In addition, those skilled in the art will understand that displaying data to a user through a graphical user interface or GUI (for example, a computer device screen and the like) may include transmitting a signal to a graphical user interface, this signal contains data that can be processed, and at least a portion of this data may be displayed to the user via a graphical user interface. Some of these steps, as well as signal transmission-reception, are well known in the art and, therefore, have been omitted in specific parts of this description for simplicity. It is important to keep in mind that signal embodiments are not particularly limited. For example, signals can be transmitted and received, without limitation, using optical means (e.g., optical connection), electronic means (e.g., wired or wireless connection) and mechanical means (e.g., based on pressure, temperature or other suitable parameter) .

[28] В контексте настоящего описания термин «сервис облачного хранения» представляет собой вычислительные средства, в которых множество клиентов, клиентских устройств, обществ, IT доменов, и/или приложений управляются или контролируются по отдельности в среде со множеством управляющих элементов. «Облачная» среда относится к структуре, в которой множество независимых пользователей используют общую инфраструктуру, платформы, сервисы/приложения или ресурсы таким образом, что каждая из них изолирована друг от друга. Пользователь/клиент может представлять собой компанию, организацию, индивидуального человека, а клиентское устройство может относиться к любому из клиентских устройств пользователя, как описано здесь. Такие облачные сервисы обеспечивают связь для использования, например, персональными компьютерами, планшетами, смартфонами или другим пользовательскими устройствами (домашние развлечения и так далее). Известны многие типы облачных сервисов. Например, облачный сервис может включать в себя отдельные административные модели, которые применяются к блейд-серверам в дата центре, или любое распределение соединенных устройств. Общая инфраструктура, платформы, сервисы/приложения или ресурсы обычно управляются администратором, который поддерживает работу облачного сервиса. Облачные ресурсы могут быть личными или публичными.[28] In the context of the present description, the term "cloud storage service" is a computing tool in which multiple clients, client devices, societies, IT domains, and / or applications are individually managed or controlled in an environment with multiple controls. A “cloud” environment refers to a structure in which many independent users use a common infrastructure, platform, service / application or resource in such a way that each of them is isolated from each other. The user / client may be a company, organization, individual person, and the client device may refer to any of the client devices of the user, as described here. Such cloud services provide communications for use, for example, by personal computers, tablets, smartphones or other user devices (home entertainment, and so on). Many types of cloud services are known. For example, a cloud service may include separate administrative models that apply to blade servers in a data center, or any distribution of connected devices. Shared infrastructure, platforms, services / applications, or resources are typically managed by an administrator who maintains the cloud service. Cloud resources can be personal or public.

[29] В контексте настоящего описания слова «первый», «второй», «третий» и т.д. используются в виде прилагательных исключительно для того, чтобы отличать существительные, к которым они относятся, друг от друга, а не для целей описания какой-либо конкретной связи между этими существительными. Так, например, следует иметь в виду, что использование терминов «первый пользователь» и «третий пользователь» не подразумевает какого-либо порядка, отнесения к определенному типу, хронологии, иерархии или ранжирования (например) пользователей/между пользователями, равно как и их использование (само по себе) не предполагает, что некий «второй пользователь» обязательно должен существовать в той или иной ситуации. В дальнейшем, как указано здесь в других контекстах, упоминание "первого" элемента и "второго" элемента не исключает возможности того, что это один и тот же фактический реальный элемент. Так, например, в некоторых случаях, "первый" сервер и "второй" сервер могут являться одним и тем же программным и/или аппаратным обеспечением, а в других случаях они могут являться разным программным и/или аппаратным обеспечением.[29] In the context of the present description, the words “first”, “second”, “third”, etc. used in the form of adjectives solely to distinguish the nouns to which they relate from each other, and not for the purpose of describing any specific relationship between these nouns. So, for example, it should be borne in mind that the use of the terms “first user” and “third user” does not imply any order, assignment to a certain type, chronology, hierarchy or ranking (for example) of users / between users, as well as their use (in itself) does not imply that a certain “second user” must exist in a given situation. Hereinafter, as indicated here in other contexts, reference to the “first” element and the “second” element does not exclude the possibility that it is one and the same actual real element. So, for example, in some cases, the “first” server and the “second” server can be the same software and / or hardware, and in other cases they can be different software and / or hardware.

[30] Каждый вариант осуществления настоящего технического решения преследует по меньшей мере одну из вышеупомянутых целей и/или объектов. Следует иметь в виду, что некоторые объекты настоящего технического решения, полученные в результате попыток достичь вышеупомянутой цели, могут удовлетворять и другим целям, отдельно не указанным здесь.[30] Each embodiment of the present technical solution pursues at least one of the aforementioned objectives and / or objects. It should be borne in mind that some of the objects of this technical solution obtained as a result of attempts to achieve the aforementioned goals can also satisfy other goals not specifically indicated here.

[31] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.[31] Additional and / or alternative characteristics, aspects and advantages of embodiments of the present technical solution will become apparent from the following description, the attached drawings and the attached claims.

Краткое описание чертежейBrief Description of the Drawings

[32] Для лучшего понимания настоящего технического решения, а также других его аспектов и характерных черт сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:[32] For a better understanding of this technical solution, as well as its other aspects and characteristics, reference is made to the following description, which should be used in combination with the accompanying drawings, where:

[33] На Фиг. 1 представлена принципиальная схема системы, выполненной в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.[33] In FIG. 1 is a schematic diagram of a system made in accordance with embodiments of the present technical solution, not limiting its scope.

[34] На Фиг. 2 представлен снимок экрана, на котором показан графический пользовательский интерфейс, отображающий карту улиц и связанные программные объекты.[34] In FIG. 2 is a screen shot showing a graphical user interface showing a street map and related software objects.

[35] На Фиг. 3 представлена блок-схема способа, выполняемого в рамках системы, изображенной на Фиг. 1, и выполненного с вариантами осуществления настоящего технического решения, не ограничивающими его объем.[35] In FIG. 3 is a flowchart of a method performed within the system of FIG. 1, and made with the options for implementing the present technical solution, not limiting its scope.

Осуществление изобретенияThe implementation of the invention

[36] На Фиг. 1 представлена принципиальная схема системы 100, выполненной в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. Важно иметь в виду, что нижеследующее описание системы 100 представляет собой описание иллюстративных вариантов осуществления настоящего технического решения. Таким образом, все последующее описание представлено только как описание иллюстративного примера настоящего технического решения. Это описание не предназначено для определения объема или установления границ настоящего технического решения. Некоторые полезные примеры модификаций системы 100 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящего технического решения. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, это не должно интерпретироваться так, что там, где не были изложены примеры модификаций, никакие модификации невозможны, и/или что то, что описано, является единственным вариантом осуществления этого экземпляра настоящего технического решения. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что система 100 представляет собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящего технического решения, и в подобных случаях представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящего технического решения будут обладать гораздо большей сложностью.[36] In FIG. 1 is a schematic diagram of a system 100 made in accordance with embodiments of the present technical solution, not limiting its scope. It is important to keep in mind that the following description of system 100 is a description of illustrative embodiments of the present technical solution. Thus, the entire following description is presented only as a description of an illustrative example of the present technical solution. This description is not intended to determine the scope or boundaries of this technical solution. Some useful examples of modifications to the system 100 may also be covered by the following description. The purpose of this is also solely assistance in understanding, and not determining the scope and boundaries of this technical solution. These modifications are not an exhaustive list, and it will be understood by those skilled in the art that other modifications are possible. In addition, this should not be interpreted so that where examples of modifications have not been set forth, no modifications are possible, and / or that what is described is the only embodiment of this instance of this technical solution. As will be clear to a person skilled in the art, this is most likely not the case. In addition, it should be borne in mind that the system 100 is in some specific manifestations a fairly simple embodiment of the present technical solution, and in such cases is presented here in order to facilitate understanding. As will be clear to a person skilled in the art, many embodiments of the present technical solution will have much greater complexity.

[37] Система 100 включает в себя сеть 50 передачи данных. Сеть 50 передачи данных обычно связана с электронным устройством 20 и сервером 40, сервер 40 связан с устройством 30 хранения данных, которое хранит программный код для программ 10, 15.[37] System 100 includes a data network 50. Data transmission network 50 is usually connected to electronic device 20 and server 40, server 40 is connected to data storage device 30, which stores program code for programs 10, 15.

[38] Варианты осуществления сервера 40 никак конкретно не ограничены, и, например, сервер 40 может быть реализован как одиночный сервер. Альтернативно, сервер 40 может представлять собой множество серверов.[38] Embodiments of server 40 are not particularly limited, and, for example, server 40 may be implemented as a single server. Alternatively, server 40 may be a plurality of servers.

[39] Варианты осуществления устройства 30 хранения данных никак конкретно не ограничены. Например, устройство 30 хранения данных может является таким устройством памяти как жесткий диск (не показано), встроенный в электронное устройство 20, или устройство 30 хранения данных может быть соединено с электронным устройством 20 по сети 50 передачи данных или по любому подходящему проводному или беспроводному соединению. Устройство 30 хранения данных обычно представляет собой элемент, способный хранить файлы и данные, например, программный код для программ 10, 15. Аналогично серверу 40, устройство 30 хранения данных может быть реализовано как одиночный элемент, или, альтернативно, как множество элементов. В рамках последнего варианта, каждое из множества устройств хранения данных, реализующих устройство 30 хранения данных, может отвечать за сохранение файлов для пользователей в конкретном регионе; или конкретного типа пользователей; или конкретного типа или размера файлов. Альтернативно, каждое из множества устройств хранения данных, реализующих устройство 30 хранения данных, может быть выполнено с возможностью сохранять файлы в соответствии с принципом распределения нагрузки, который выполняется контролирующим элементом (который может быть, например, сервером 40, или одним из множества серверов).[39] Embodiments of the data storage device 30 are not particularly limited. For example, the storage device 30 may be a memory device such as a hard disk drive (not shown) embedded in the electronic device 20, or the storage device 30 may be connected to the electronic device 20 via a data network 50 or any suitable wired or wireless connection . The data storage device 30 is typically an element capable of storing files and data, for example, program code for programs 10, 15. Like the server 40, the data storage device 30 may be implemented as a single element, or, alternatively, as a plurality of elements. In the latter embodiment, each of a plurality of data storage devices implementing the data storage device 30 may be responsible for storing files for users in a particular region; or a specific type of user; or a particular type or size of files. Alternatively, each of the plurality of storage devices implementing the storage device 30 may be configured to save files in accordance with the principle of load balancing, which is performed by a monitoring element (which may be, for example, server 40, or one of the plurality of servers).

[40] Важно иметь в виду, что может быть использовано любое подходящее аппаратное обеспечение для хранения данных. В некоторых вариантах осуществления настоящего технического решения устройство 30 хранения данных может быть физически смежным с сервером 40, т.е. это не обязательно должны быть различные аппаратные устройства, как представлено, хотя это может быть и так. В некоторых вариантах осуществления настоящего технического решения устройство 30 хранения данных и/или сервер 40 могут быть реализованы в облачной среде, например, как часть сервиса облачного хранения.[40] It is important to keep in mind that any suitable hardware for storing data can be used. In some embodiments of the present technical solution, the data storage device 30 may be physically adjacent to the server 40, i.e. it does not have to be various hardware devices, as presented, although this may be so. In some embodiments of the present technical solution, the data storage device 30 and / or server 40 may be implemented in a cloud environment, for example, as part of a cloud storage service.

[41] Варианты осуществления электронного устройства 20 никак конкретно не ограничены. Электронное устройство может представлять собой любое вычислительное устройство, которое способно работать с подходящим программным обеспечением для заданной задачи, например, без установления ограничений: персональные компьютеры общего назначения (настольные компьютеры, ноутбуки, нетбуки и так далее), мобильные вычислительные устройства, смартфоны, планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Электронное устройство 20 включает в себя процессор или центральный процессор (CPU) 22 и блок 25 памяти. Несмотря на то, на иллюстративном примере на Фиг. 1 представлено одиночное электронное устройство 20, множество электронных устройств может быть использовано для получения/передачи, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного способа.[41] Embodiments of the electronic device 20 are not particularly limited. An electronic device can be any computing device that is capable of working with suitable software for a given task, for example, without imposing restrictions: general purpose personal computers (desktop computers, laptops, netbooks and so on), mobile computing devices, smartphones, tablets, as well as network equipment such as routers, switches, and gateways. The electronic device 20 includes a processor or central processing unit (CPU) 22 and a memory unit 25. Although in the illustrative example of FIG. 1, a single electronic device 20 is shown, a plurality of electronic devices can be used to receive / transmit, execute or initiate the execution of any task or request, or the consequences of any task or request, or the steps of any method described above.

[42] Следует иметь в виду, что электронное устройство 20 может вести себя как сервер 40 по отношению к другим электронным устройствам (не показаны). Другими словами, несмотря на то, что вариант осуществления, представленный на Фиг. 1, представляет электронное устройство 20 и сервер 40 как отдельные аппаратные компоненты, в некоторых вариантах осуществления настоящего технического решения сервер 40 может быть физически смежен с электронным устройством 20, т.е. они не обязательно являются отдельными элементами аппаратного обеспечения, как показано, хотя это может быть и так.[42] It should be borne in mind that the electronic device 20 may behave like a server 40 with respect to other electronic devices (not shown). In other words, although the embodiment shown in FIG. 1 represents the electronic device 20 and the server 40 as separate hardware components, in some embodiments of the present technical solution, the server 40 may be physically adjacent to the electronic device 20, i.e. they are not necessarily separate pieces of hardware, as shown, although this may be so.

[43] Экземпляр 11 программы 10 загружен в адресное пространство памяти 25 электронного устройства 20. Варианты осуществления памяти 25 никак конкретно не ограничены. Память 25 может содержать в себе систему виртуальной памяти с физической памятью, отдельной от адресного пространства, но с целью упрощения память показана на Фиг. 1 как простой блок 25.[43] Instance 11 of program 10 is loaded into the address space of memory 25 of electronic device 20. Embodiments of memory 25 are not particularly limited. The memory 25 may comprise a virtual memory system with physical memory separate from the address space, but for the sake of simplicity, the memory is shown in FIG. 1 as a simple block 25.

[44] Экземпляр 11 программы конкретно выполнен, в свою очередь, для инстанцирования ряда программных объектов от 121 до 122 (указаны вместе как программные объекты 12). Программные объекты могут представлять собой сочетание выполняемого кода и данных, и, следовательно, могут выполнять обработку самостоятельно и/или предоставлять данные для обработки другими программными объектами. Например, программный объект, такой как функция или подпрограмма, может быть создан родительским объектом или даже основной программой для выполнения некоторой обработки от имени вызывающего родительского объекта или основной программы. Данные объекта могут быть различных типов, например: примитивные типы данных, такие как целые числа, вещественные числа, булевы числа, знаки; и структурированные или абстрактные типы данных, такие как, массивы или списки, а также определенные типы данных, каждый из которых включает в себя множество экземпляров данных или комбинаций типов данных.[44] The program instance 11 is specifically executed, in turn, for instantiating a number of program objects from 121 to 122 (indicated together as program objects 12). Software objects may be a combination of executable code and data, and, therefore, may perform processing on their own and / or provide data for processing by other program objects. For example, a program object, such as a function or subroutine, can be created by the parent object or even the main program to perform some processing on behalf of the calling parent object or main program. Object data can be of various types, for example: primitive data types, such as integers, real numbers, Boolean numbers, signs; and structured or abstract data types, such as arrays or lists, as well as certain data types, each of which includes multiple instances of data or combinations of data types.

[45] Как было описано выше программные объекты могут содержать в себе примеры функций, созданных в течение выполнения экземпляра 11 программы или простых или структурированных объектов данных, некоторые из которых могут содержать значения указателей, которые указывают на другие функции или данные. Программные объекты 12 обычно расположены в иерархическом порядке, с родительскими объектами вызывающими инстанцирование одного или нескольких дочерних объектов. Для простоты понимания, только один уровень дочерних объектов показан на Фиг. 1 с объектами 121-122, которые инстанцированы экземпляром программы 10. Однако, будет понятно, что даже в программе средней сложности иерархия объектов может содержать множество уровней объектов.[45] As described above, program objects may contain examples of functions created during execution of program instance 11 or simple or structured data objects, some of which may contain pointer values that point to other functions or data. Software objects 12 are usually arranged in a hierarchical order, with parent objects invoking the instantiation of one or more child objects. For ease of understanding, only one level of child objects is shown in FIG. 1 with objects 121-122 that are instantiated by an instance of program 10. However, it will be understood that even in a medium-complexity program, the hierarchy of objects can contain many levels of objects.

[46] Программные объекты 12 могут быть выполнены сервером 40 как часть программных процедур, например, как часть программ 10, 15. Важно иметь в виду, что варианты осуществления программных объектов никак конкретно не ограничены. Неограничивающие примеры программных объектов 12 включают в себя элементы пользовательского интерфейса (например, текстовые поля, панели инструментов, строки меню и кнопки и тому подобное), указатели, аудио объекты, объекты изображений, видео объекты и текстовые объекты. В некоторых вариантах осуществления настоящего технического решения, программные объекты 12 могут представлять собой всплывающие объекты. Неограничивающие примеры всплывающих объектов включают в себя объекты, которые появляются поверх или над окном браузера с веб-сайтом. Например, всплывающий объект может появляться в тот момент, когда опция была выбрана путем нажатия или какого-либо другого указания на выбор пользователя. В некоторых вариантах осуществления настоящего технического решения, всплывающий объект может появляться когда пользователь располагает курсор (например, наводит курсор) на часть браузерного окна или веб-сайта. Многие варианты осуществления всплывающих объектов могут быть использованы, что хорошо известно в данной области техники.[46] Program objects 12 can be executed by server 40 as part of program procedures, for example, as part of programs 10, 15. It is important to keep in mind that embodiments of program objects are not particularly limited. Non-limiting examples of program objects 12 include user interface elements (eg, text fields, toolbars, menu bars and buttons, and the like), pointers, audio objects, image objects, video objects, and text objects. In some embodiments of the present technical solution, program objects 12 may be pop-up objects. Non-limiting examples of pop-up objects include objects that appear above or above a browser window with a website. For example, a pop-up object may appear at a time when the option was selected by clicking or some other indication of the user's choice. In some embodiments of the present technical solution, a pop-up object may appear when a user places a cursor (for example, hover) on a part of a browser window or website. Many embodiments of pop-up objects can be used, which is well known in the art.

[47] Реализация сети 50 передачи данных никак конкретно не ограничена, и будет зависеть от того, как именно реализовано электронное устройство 20, сервер 40 и устройство 30 беспроводной связи. В некоторых вариантах осуществления настоящего технического решения, не ограничивающих его объем, сеть 50 передачи данных может представлять собой Интернет. В других вариантах осуществления настоящего технического решения, сеть передачи данных 50 может быть реализована иначе - в виде глобальной сети связи, локальной сети связи, частной сети связи и т.п.В качестве примера, но не ограничения, в данных вариантах осуществления настоящего технического решения в случаях, когда электронное устройство 20 представляет собой клиентское устройство, например, беспроводное устройство связи (например, смартфон), сеть 50 передачи данных представляет собой беспроводной канал передачи данных (например, среди прочего, линия передачи данных 3G, линия передачи данных 4G, беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п.). В тех примерах, где электронное устройство 20 представляет собой портативный компьютер, сеть 50 передачи данных может быть как беспроводной (беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п) так и проводной (соединение на основе сети Ethernet). Различные электронные устройства и различные сети передачи данных могут быть реализованы независимо друг от друга.[47] The implementation of the data network 50 is not particularly limited, and will depend on how the electronic device 20, the server 40, and the wireless communication device 30 are implemented. In some non-limiting embodiments of the present technical solution, the data network 50 may be the Internet. In other embodiments of the present technical solution, the data network 50 may be implemented differently - in the form of a global communication network, a local communication network, a private communication network, etc. As an example, but not limitation, in these embodiments of the present technical solution in cases where the electronic device 20 is a client device, for example, a wireless communication device (for example, a smartphone), the data network 50 is a wireless data channel (for example, among for example, a 3G data line, a 4G data line, Wireless Fidelity or, shortly, WiFi®, Bluetooth®, etc.). In those examples where the electronic device 20 is a laptop computer, the data network 50 may be either wireless (Wireless Internet Wireless Fidelity or WiFi®, Bluetooth®, etc.) or wired (Ethernet-based connection). Various electronic devices and various data networks can be implemented independently of each other.

[48] Для дальнейшего понимания и иллюстрации системы 100 будет сделана ссылка на Фиг. 2, на которой представлен снимок 200 экрана графического пользовательского интерфейса, который отображает карту 260 улиц пользователю (не показан), карта 260 улиц указывает местоположение адреса 250 пользователю. Важно иметь в виду, что Фиг. 2 представлена только для целей иллюстрации и облегчения понимания сути настоящего технического решения. Важно также иметь в виду, что Фиг. 2 содержит большой объем информации, но только актуальные части будут пронумерованы и описаны.[48] For further understanding and illustration of the system 100, reference will be made to FIG. 2, which shows a screen shot 200 of a graphical user interface that displays a street map 260 to a user (not shown), a street map 260 indicates the location of the address 250 to the user. It is important to bear in mind that FIG. 2 is presented only for the purpose of illustration and to facilitate understanding of the essence of this technical solution. It is also important to bear in mind that FIG. 2 contains a large amount of information, but only the relevant parts will be numbered and described.

[49] Варианты осуществления снимка 200 экрана никак конкретно не ограничены. В одном неограничивающем примере снимок 200 экрана может отображаться браузерным приложением (не показано) или открываться с помощью интернет-браузера (не показано).[49] Embodiments of a screen shot 200 are not particularly limited. In one non-limiting example, a screenshot 200 may be displayed by a browser application (not shown) or opened using an Internet browser (not shown).

[50] В неограничивающем варианте осуществления настоящего технического решения, показанном на Фиг. 2, снимок 200 экрана показывает объект 210 данных, в котором пользователь (не показан) ввел адрес 250 «адрес 1» (англ. «address1»), который пользователь ищет; объект 220 кнопки, на который пользователь может нажать для инициирования отображения адреса 250, введенного в объект 210 ввода данных; второй объект 230 кнопки; объект 240 указателя, указывающий положение адреса 250 на карте 260 улиц.[50] In a non-limiting embodiment of the present technical solution shown in FIG. 2, a screenshot 200 shows a data object 210 in which a user (not shown) has entered the address 250 “address 1” (English “address1”) that the user is looking for; a button object 220, which the user can click on to initiate the display of the address 250 entered in the data input object 210; a second button object 230; a pointer object 240 indicating the location of address 250 on a map of 260 streets.

[51] Во втором объекте 230 кнопки пользователь может нажимать на термины («отели», «рестораны») для инициирования поиска ближайших отелей или ресторанов (расположенных неподалеку от адреса 250). Например, если пользователь (не показан) нажимает на термин «отели» на втором объекте 230 кнопки, то может возникнуть новый объект (не показан), новый объект будет указывать на отель, расположенный неподалеку от адреса 250. В некоторых вариантах осуществления настоящего технического решения, другие объекты также могут быть перемещены в ответ на нажатие пользователем на термин «отели» на втором объекте 230 кнопки. Например, в ответ на нажатие пользователей на термин «отели» на втором объекте 230 кнопки, появляется новый объект (не показан), объект 240 указателя и объект 210 ввода данных могут быть удалены.[51] In the second button object 230, the user can click on the terms ("hotels", "restaurants") to initiate a search for the nearest hotels or restaurants (located near address 250). For example, if a user (not shown) clicks on the term “hotels” on the second button object 230, then a new object (not shown) may appear, the new object will indicate a hotel located near address 250. In some embodiments of the present technical solution , other objects can also be moved in response to a user tapping the term “hotels” on the second button object 230. For example, in response to users clicking on the term “hotels” on the second button object 230, a new object (not shown) appears, the pointer object 240 and the data entry object 210 can be deleted.

[52] Реализация карты 260 улиц, доступной пользователю, никак конкретно не ограничена. В качестве одного примера, пользователь может получать доступ к веб-сайту, связанному с картой или другими сервисами. Например, сервис Яндекс Карты может быть вызван путем ввода URL (например, https://maps.yandex.com) в браузер, например, связанного с поисковой системой Yandex www.yandex.ru. Клиентское устройство может, например, выполнять приложение Яндекс браузер. Важно иметь в виду, что любое другое коммерчески доступное или собственное браузерное приложение, и любая доступная картографическая система могут быть использованы для реализации вариантов осуществления настоящего технического решения, не ограничивающих его объем.[52] The implementation of the 260 street map available to the user is not specifically limited. As one example, a user may access a website associated with a map or other services. For example, Yandex Maps service can be called by entering a URL (for example, https://maps.yandex.com) in a browser, for example, associated with the Yandex search system www.yandex.ru. The client device may, for example, run the Yandex browser application. It is important to keep in mind that any other commercially available or proprietary browser application, and any available cartographic system can be used to implement embodiments of this technical solution that do not limit its scope.

[53] В альтернативных вариантах осуществления настоящего технического решения пользователь может скачать приложение Яндекс Карты (также упоминаемое как «приложение») на клиентское устройство, например, смартфон, и может получать доступ к картографическому сервису с помощью приложения. В другом неограничивающем варианте осуществления настоящего технического решения, API Яндекс Карт может быть установлен на веб-приложении или сайте, а пользователь может получать доступ к картографическому сервису с помощью API на веб-приложении или сайте. Другие варианты осуществления также возможны, что будет очевидно специалистам в данной области техники.[53] In alternative embodiments of the present technical solution, the user can download the Yandex Maps application (also referred to as the “application”) to a client device, such as a smartphone, and can access the map service using the application. In another non-limiting embodiment of the present technical solution, the Yandex Maps API can be installed on a web application or website, and the user can access the map service using the API on a web application or website. Other embodiments are also possible, as will be apparent to those skilled in the art.

[54] На Фиг. 3 представлена принципиальная схема способа 300, выполненного в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. Процесс 300 может выполняться электронным устройством 20.[54] In FIG. 3 is a schematic diagram of a method 300 performed in accordance with embodiments of the present technical solution that does not limit its scope. Process 300 may be performed by electronic device 20.

[55] Этап 302 - получение первого запроса на первый объект от первого элемента запроса, первый запрос включает в себя запрос на выполнение первого действия над первым объектом, выполнение первого действия требует первого разрешения[55] Step 302 - receiving the first request to the first object from the first request element, the first request includes a request to perform the first action on the first object, performing the first action requires first permission

[56] Способ 300 начинается на этапе 302, где процессор 22 электронного устройства 20 получает первый запрос (не показано) на первый объект 121 от сервера 40, первый запрос включает в себя запрос на выполнение первого действия (не показано) над первым объектом 121, выполнение первого действия требует первого разрешения (не показано).[56] The method 300 begins at step 302, where the processor 22 of the electronic device 20 receives a first request (not shown) to the first object 121 from the server 40, the first request includes a request to perform a first action (not shown) on the first object 121, the first action requires a first permission (not shown).

[57] В некоторых неограничивающих вариантах осуществления настоящего технического решения первый запрос получают от программы 10 через сервер 40 и сеть 50 передачи данных. В альтернативных неограничивающих вариантах осуществления настоящего технического решения первый запрос получают от экземпляра 11 программы 10, загруженного в память 25 электронного устройства 20. В подобных вариантах осуществления настоящего технического решения первый запрос может быть получен от процессора 22 электронного устройства 20.[57] In some non-limiting embodiments of the present technical solution, a first request is received from program 10 through server 40 and data network 50. In alternative non-limiting embodiments of the present technical solution, the first request is received from the instance 11 of the program 10 loaded into the memory 25 of the electronic device 20. In such embodiments of the present technical solution, the first request can be received from the processor 22 of the electronic device 20.

[58] Варианты осуществления первого объекта 121 никак конкретно не ограничены. Обращаясь к иллюстративному варианту осуществления настоящего технического решения, представленному на Фиг. 2, первый объект 121 для целей иллюстрации может считаться объектом 240 указателя. Важно отметить, что возможны многие другие варианты осуществления настоящего технического решения. Например, в альтернативных вариантах осуществления настоящего технического решения, первый объект 121 может представлять собой объект 210 ввода данных, объект 220 кнопки или объект 230 второй кнопки. Для простоты иллюстрации предполагается, что в рассматриваемом варианте осуществления настоящего технического решения первый объект 121 представляет собой объект 240 указателя.[58] Embodiments of the first object 121 are not particularly limited. Turning to the illustrative embodiment of the present technical solution presented in FIG. 2, the first object 121, for purposes of illustration, may be considered a pointer object 240. It is important to note that many other options for implementing this technical solution are possible. For example, in alternative embodiments of the present technical solution, the first object 121 may be a data entry object 210, a button object 220, or a second button object 230. For simplicity of illustration, it is assumed that in the present embodiment of the present technical solution, the first object 121 is a pointer object 240.

[59] Первый запрос включает в себя запрос на выполнение первого действия над первым объектом 121. Варианты осуществления первого действия никак конкретно не ограничены. Как известно в данной области техники, могут выполняться различные операции или функции в связи с программными объектами 12 или с их помощью. Неограничивающие примеры подобных действий включают в себя отображение или демонстрацию объекта, например, в GUI; разрешение на появление объекта; ввод текста в объект; ввод данных или информации в объект; нажатие на объект; выбор объекта; выбор части объекта; и удаление объекта.[59] The first request includes a request to perform the first action on the first object 121. Options for the first action are not particularly limited. As is known in the art, various operations or functions may be performed in connection with or using software objects 12. Non-limiting examples of such actions include displaying or demonstrating an object, for example, in a GUI; permission for the appearance of the object; text input into the object; entering data or information into an object; clicking on an object; object selection; selection of part of the object; and deleting an object.

[60] Обращаясь снова к иллюстративному варианту осуществления, показанному на Фиг. 2, первый запрос на первый объект 121 (соответствующий объект 240 указателя в данном примере) включает в себя запрос отобразить объект 204 указателя на карте 260 улиц, на месте адреса 250. Первый запросчик в данном примере представляет собой программу 10 (или экземпляр 11 программы 10), которая в целях иллюстрации соответствует картографическому приложению (например, Яндекс Карты).[60] Turning again to the illustrative embodiment shown in FIG. 2, the first request to the first object 121 (the corresponding pointer object 240 in this example) includes a request to display the pointer object 204 on a street map 260, at the address 250 location. The first requestor in this example is program 10 (or instance 11 of program 10 ), which for illustration purposes corresponds to the cartographic application (for example, Yandex Maps).

[61] Далее, на первом этапе 302 способа 300, представленного на Фиг. 3, осуществляется получение первого запроса на первый объект от первого элемента запроса. Первый запрос требует первого разрешения (не показано). Другими словами, первый запросчик запрашивает разрешение для выполнения первого действия над первым объектом. В примере, показанном на Фиг. 2, картографическое приложение (не показано) запрашивает разрешение отобразить объект 240 указателя на карте 260 улиц, на месте адреса 250, пользователь ввел адрес 250 в объект 210 ввода данных и нажал на объект 220 кнопки для инициации отображения адреса 250.[61] Next, in a first step 302 of the method 300 of FIG. 3, the first request for the first object is received from the first request element. The first request requires the first permission (not shown). In other words, the first requestor requests permission to perform the first action on the first object. In the example shown in FIG. 2, a map application (not shown) requests permission to display the pointer object 240 on a map of 260 streets, at the location of address 250, the user entered the address 250 into the data entry object 210 and pressed the button object 220 to initiate the display of the address 250.

[62] Этап 304 - в ответ на первый запрос дается первое разрешение на выполнение первого действия запросчику, и первый запросчик, следовательно, контролирует первый объект[62] Step 304 - in response to the first request, the first permission is given to perform the first action to the requestor, and the first requestor, therefore, controls the first object

[63] Способ 300 далее переходит к выполнению этапа 304. В ответ на получение первого запроса, первому запросчику дается первое разрешение на выполнение первого действия.[63] The method 300 then proceeds to step 304. In response to the receipt of the first request, the first requestor is given a first permission to perform the first action.

[64] В общем случае, операционная система (не показана) электронного устройства 20 включает в себя центральный менеджер разрешений (не показан), который определяет разрешения в рамках и внутри системы электронного устройства 20. На этапе 304 первый запрос поступает центральному менеджеру разрешений, первое разрешение на выполнение первого действия дается первому запросчику центральным менеджером разрешений. Со ссылкой на пример, показанный на Фиг. 2, разрешение отобразить объект 240 указателя на карте 260 улиц на месте адреса 250, дается первому запросчику центральному менеджеру разрешений (не показано) электронного устройства 20. Объект 240 указателя, следовательно, отображается на карте 260 улиц на месте адреса 250, например, на GUI (не показан) электронного устройства 20.[64] In general, the operating system (not shown) of the electronic device 20 includes a central permission manager (not shown) that determines the permissions within and within the system of the electronic device 20. At step 304, the first request is sent to the central permission manager, the first permission to perform the first action is given to the first requestor by the central permission manager. With reference to the example shown in FIG. 2, permission to display the pointer object 240 on a map of 260 streets at the location of address 250, is given to the first requestor by the central permission manager (not shown) of the electronic device 20. The pointer object 240 is therefore displayed on the map of 260 streets at the place of address 250, for example, on the GUI (not shown) of the electronic device 20.

[65] Продолжая с этапом 304 способа 300, первый запросчик получил первое разрешение от центрального менеджера разрешений (не показан) электронного устройства 20, первый запросчик, следовательно, контролирует первый объект 121 (объект 240 указателя в данном случае). В контексте настоящего описания термин «контролирует» данный объект подразумевает под собой контроль за разрешениями для данного объекта. Таким образом, несмотря на то, что первично центральный менеджер разрешений (не показан) электронного устройства 20 определяет разрешения для первого объекта 121, после того как первое разрешение было дано первому запросчику, первый запросчик получает контроль над разрешениями для первого объекта 121 от центрального менеджера разрешений. Далее, когда первый запросчик продолжает контролировать первый объект 121, уже первый запросчик будет давать/не давать разрешения в ответ на последующие запросы на выполнение действий над первым объектом 121.[65] Continuing with step 304 of method 300, the first interrogator received the first permission from the central permission manager (not shown) of the electronic device 20, the first interrogator, therefore, controls the first object 121 (pointer object 240 in this case). In the context of the present description, the term "controls" this object implies control of permissions for this object. Thus, although the primary central permission manager (not shown) of the electronic device 20 determines the permissions for the first entity 121 after the first permission has been given to the first requester, the first requester receives control of the permissions for the first entity 121 from the central permission manager . Further, when the first requestor continues to control the first object 121, the first requestor will give / not give permission in response to subsequent requests to perform actions on the first object 121.

[66] В вариантах осуществления настоящего технического решения, разрешения определяются (даются/не даются) в соответствии с заранее определенными правилами. Элемент, ответственный за разрешения (например, центральный менеджер разрешений электронного устройства 20, запросчик или элемент, контролирующий первый объект 121), будет определять разрешения для объектов 12 в соответствии с заранее установленными правилами. Например, центральный менеджер разрешений, API и/или рассматриваемая программа могут следовать набору заранее определенных правил и процедур, как будет понятно специалистам в данной области техники.[66] In embodiments of the present technical solution, permissions are determined (given / not given) in accordance with predetermined rules. The permission element (e.g., the central permission manager of the electronic device 20, the requester or the element controlling the first object 121) will determine the permissions for the objects 12 in accordance with predefined rules. For example, the central permission manager, API, and / or the program in question may follow a set of predefined rules and procedures, as will be appreciated by those skilled in the art.

[67] Варианты осуществления первого элемента запроса никак конкретно не ограничены. В некоторых вариантах осуществления настоящего технического решения объектно-ориентированный менеджер разрешений, отдельный от центрального менеджера разрешений, но связанный с ним, становится связанным с первым запросчиком. Последующие запросы, относящиеся к первому объекту 121, будут передаваться от центрального менеджера разрешений объектно-ориентированному менеджеру разрешений, связанному с первым запросчиком, который определяет разрешения для первого объекта 121. Если другой запросчик контролирует первый объект 121, то объектно-ориентированный менеджер разрешений становится связанным с другим запросчиком и так далее. Если не было сделано никакого запроса и ни один из элементов запроса не контролирует первый объект 121, то объектно-ориентированный менеджер разрешений остается связанным с центральным менеджером разрешений.[67] Embodiments of the first request element are not particularly limited. In some embodiments of the present technical solution, an object-oriented permission manager, separate from but associated with the central permission manager, becomes associated with the first interrogator. Subsequent requests related to the first object 121 will be sent from the central permission manager to the object-oriented permission manager associated with the first requestor, which determines the permissions for the first object 121. If another requestor controls the first object 121, then the object-oriented permission manager becomes linked with another interrogator and so on. If no request has been made and none of the request elements control the first object 121, then the object-oriented permission manager remains associated with the central permission manager.

[68] Способ 300 далее переходит к выполнению этапа 306.[68] The method 300 then proceeds to step 306.

[69] Этап 306 - получение второго запроса на первый объект от второго элемента запроса, второй запрос включает запрос на выполнение второго действия над первым объектом, выполнение второго действия требует второго разрешения[69] Step 306 - receiving a second request to the first object from the second request element, the second request includes a request to perform a second action on the first object, the second action requires a second permission

[70] Способ 300 продолжается на этапе 306, где второй запрос (не показан) на первый объект 121 получают от второго элемента запроса (не показан), второй запрос включает в себя запрос на выполнение второго действия (не показано) над первым объектом 121, выполнение второго действия требует второго разрешения (не показано).[70] The method 300 continues at step 306, where a second request (not shown) to the first object 121 is received from a second request element (not shown), the second request includes a request to perform a second action (not shown) on the first object 121, the second action requires a second permission (not shown).

[71] Как описано со ссылкой на этап 302 и первый запрос, центральный менеджер разрешений (не показан) электронного устройства 20 получает второй запрос на первый объект 121 от сервера 40. В некоторых неограничивающих вариантах осуществления настоящего технического решения второй запрос получают от второго элемента запроса через сервер 40 и сеть 50 передачи данных. В альтернативных неограничивающих вариантах осуществления настоящего технического решения, второй запросчик расположен в памяти 25 электронного устройства 20, и второй запрос получают от процессора 22 электронного устройства 20 через центральный менеджер разрешений.[71] As described with reference to step 302 and the first request, the central permission manager (not shown) of the electronic device 20 receives a second request for the first object 121 from the server 40. In some non-limiting embodiments of the present technical solution, the second request is received from the second request element through the server 40 and the data network 50. In alternative non-limiting embodiments of the present technical solution, the second interrogator is located in the memory 25 of the electronic device 20, and the second request is received from the processor 22 of the electronic device 20 through a central permission manager.

[72] Варианты осуществления второго действия никак конкретно не ограничены. Важно иметь в виду, что второе действие может быть или не быть точно таким же, как первое действие, т.е. первое действие и второе действие могут быть одинаковыми или отличающимися. Со ссылкой на вариант осуществления настоящего технического решения, представленный на Фиг. 2, первое действие и второе действие могут отображать объект 240 указателя на карте 260 улиц. Например, второй запрос от второго элемента запроса может быть запросом отобразить объект 240 указателя на карте 260 улиц на втором месте (не показано), которое отличается от первого места, соответствующего адресу 250. Альтернативно, второй запрос от второго элемента запроса может отличаться от первого запроса для отображения объекта 240 указателя, который является запросом на модификацию внешнего вида объекта 240 указателя, например, путем изменения цвета или размера или присоединения к нему второго объекта (например, поля текста).[72] Embodiments of the second action are not particularly limited. It is important to keep in mind that the second action may or may not be exactly the same as the first action, i.e. the first action and the second action may be the same or different. With reference to an embodiment of the present technical solution presented in FIG. 2, the first action and the second action can display a pointer object 240 on a street map 260. For example, the second request from the second request element may be a request to display a pointer object 240 on a street map 260 in a second place (not shown) that is different from the first place corresponding to address 250. Alternatively, the second request from the second request element may be different from the first request to display the pointer object 240, which is a request to modify the appearance of the pointer object 240, for example, by changing the color or size or by attaching a second object to it (for example, a text field).

[73] В некоторых неограничивающих вариантах осуществления настоящего технического решения, второе действие может включать в себя оба первое действие и дополнительное действие. Например, второй запрос от второго элемента запроса может быть запросом отобразить объект 240 указателя на карте 260 улиц на втором месте (не показано), а также запросом на модификацию внешнего вида объекта 240 указателя. Многие подобные варианты осуществления также возможны, что известно специалистам в данной области техники.[73] In some non-limiting embodiments of the present technical solution, the second action may include both the first action and the additional action. For example, the second request from the second request element may be a request to display a pointer object 240 on a street map 260 in second place (not shown), as well as a request to modify the appearance of the pointer object 240. Many such embodiments are also possible, as is known to those skilled in the art.

[74] Варианты осуществления второго элемента запроса никак конкретно не ограничены. В некоторых неограничивающих вариантах осуществления настоящего технического решения, первый запросчик и второй запросчик являются отдельными элементами. Например, в описанном выше примере, первый запросчик является программой 10 (или экземпляром 11 программы 10), соответствующий в представленном на Фиг. 2 варианте осуществления настоящего технического решения картографическому приложению (например, Яндекс. Карты). Продолжая с этим примером, второй запросчик представляет собой программу 15 (или экземпляр (не показан) программы 15, загруженный в адресное пространство в памяти 25 электронного устройства 20). Программа 15 отделена от программы 10. Например, программа 10 (первый запросчик) представляет собой Яндекс. Карты, а программа 15 (второй запросчик) может представлять собой Sky Maps, приложение, которое отображает карты звезд, созвездий и других небесных объектов. Второй запросчик, программа 15 (Sky Maps) может запрашивать разрешение отображать объект 240 указателя на карте звезд (не показано) в ответ на запрос пользователя.[74] Embodiments of the second request element are not particularly limited. In some non-limiting embodiments of the present technical solution, the first interrogator and the second interrogator are separate elements. For example, in the example described above, the first interrogator is program 10 (or instance 11 of program 10) corresponding to that shown in FIG. 2 embodiment of the present technical solution to the cartographic application (for example, Yandex. Maps). Continuing with this example, the second interrogator is program 15 (or an instance (not shown) of program 15 loaded into the address space in memory 25 of electronic device 20). Program 15 is separate from program 10. For example, program 10 (the first interrogator) is Yandex. Maps, and program 15 (the second interrogator) can be Sky Maps, an application that displays maps of stars, constellations, and other celestial objects. The second interrogator, program 15 (Sky Maps), may request permission to display a pointer object 240 on a star map (not shown) in response to a user request.

[75] Несмотря на то, что первый запросчик, программа 10, и второй запросчик, программа 15, представлены на Фиг. 1 как отдельные элементы, первый запросчик и второй запросчик не обязательно должны представлять собой отдельные элементы. В некоторых неограничивающих вариантах осуществления настоящего технического решения, первый запросчик и второй запросчик могут быть одинаковыми, т.е. первый запрос и второй запрос были созданы одной и той же программой. Продолжая с представленным на Фиг. 2 примером, первый запросчик представляет собой программу 10 (или экземпляр 11 программы 10), соответствующую Яндекс, картам, Яндекс. Карты запрашивают разрешение отобразить объект 240 указателя на карте 260 улиц по адресу 250. В ответ на ввод пользователем второго адреса (не показано) в объекте 210 ввода данных, второй запрос получают от Яндекс. Карт, второй запрос включает в себя запрос на отображение объекта 240 указателя на месте второго адреса. Возможны многие подобные варианты осуществления.[75] Although the first interrogator, program 10, and the second interrogator, program 15, are shown in FIG. 1 as separate elements, the first interrogator and the second interrogator need not be separate elements. In some non-limiting embodiments of the present technical solution, the first interrogator and the second interrogator may be the same, i.e. the first request and the second request were created by the same program. Continuing with the one shown in FIG. 2 by example, the first interrogator is program 10 (or instance 11 of program 10) corresponding to Yandex, cards, Yandex. Cards request permission to display a pointer object 240 on a map of 260 streets at address 250. In response to a user entering a second address (not shown) in data entry object 210, a second request is received from Yandex. Maps, the second request includes a request to display the pointer object 240 in place of the second address. Many such embodiments are possible.

[76] Способ 300 далее переходит к выполнению этапа 308.[76] The method 300 then proceeds to step 308.

[77] Этап 308 - в ответ на второй запрос, передача второго запроса первому запросчику, первый запросчик контролирует первый объект[77] Step 308 - in response to the second request, transmitting the second request to the first interrogator, the first interrogator controls the first entity

[78] Способ 300 продолжается на этапе 308, где, в ответ на получение второго запроса, второй запрос передается первому запросчику центральным менеджером разрешения, первый запросчик контролирует первый объект 121. Например, центральный менеджер разрешения может передавать второй запрос объектно-ориентированному менеджеру разрешений. Объектно-ориентированный менеджер разрешений становится связанным с первым запросчиком.[78] The method 300 continues at block 308, where, in response to a second request, the second request is sent to the first requestor by the central permission manager, the first requestor monitors the first object 121. For example, the central permission manager can send the second request to the object-oriented permission manager. An object-oriented permission manager becomes associated with the first requestor.

[79] Варианты осуществления первого элемента запроса никак конкретно не ограничены. В некоторых вариантах осуществления настоящего технического решения объектно-ориентированный менеджер разрешений, отдельный от центрального менеджера разрешений, но связанный с ним, становится связанным с первым запросчиком. Последующие запросы, относящиеся к первому объекту 121, будут передаваться от центрального менеджера разрешений объектно-ориентированному менеджеру разрешений, связанному с первым запросчиком, который определяет разрешения для первого объекта 121. Если другой запросчик контролирует первый объект 121, то объектно-ориентированный менеджер разрешений становится связанным с другим запросчиком и так далее. Если не было сделано никакого запроса и ни один из элементов запроса не контролирует первый объект 121, то объектно-ориентированный менеджер разрешений остается связанным с центральным менеджером разрешений.[79] Embodiments of the first request element are not particularly limited. In some embodiments of the present technical solution, an object-oriented permission manager, separate from but associated with the central permission manager, becomes associated with the first interrogator. Subsequent requests related to the first object 121 will be sent from the central permission manager to the object-oriented permission manager associated with the first requestor, which determines the permissions for the first object 121. If another requestor controls the first object 121, then the object-oriented permission manager becomes linked with another interrogator and so on. If no request has been made and none of the request elements control the first object 121, then the object-oriented permission manager remains associated with the central permission manager.

[80] Как обсуждалось ранее, когда первый запросчик продолжает контролировать первый объект 121, уже первый запросчик будет определять разрешения на выполнение действий над первым объектом 121. Следовательно, процессор 22 электронного устройства 20 предает второй запрос запросчику (программа 10 в выше описанном примере) для определения разрешения для второго запроса.[80] As previously discussed, when the first interrogator continues to monitor the first object 121, the first interrogator will determine the permissions to perform actions on the first object 121. Therefore, the processor 22 of the electronic device 20 submits the second request to the interrogator (program 10 in the above described example) for determination of permission for the second request.

[81] Способ 300 продолжается либо на этапе 310 либо на этапе 312, в зависимости от того, дает ли первый запросчик второе разрешение второму запросчику.[81] Method 300 continues either at step 310 or at step 312, depending on whether the first interrogator gives the second interrogator second permission.

[82] Этап 310 - в ответ на то, что первый запросчик дает второе разрешение второму запросчику, позволение выполнения второго действия вторым запросчиком, второй запросчик, соответственно, контролирует первый объект, и завершение первого разрешения и выполнения первого действия первым запросчиком[82] Step 310 - in response to the fact that the first interrogator gives the second permission to the second interrogator, allowing the second interrogator to perform the second action, the second interrogator controls the first object, respectively, and the first interrogator completes the first permission and the first interrupt

[83] Этап 312 - в ответ на то, что первый запросчик не дает второе разрешение второму запросчику и не позволяет выполнять второе действие вторым запросчиком, первый запросчик продолжает контролировать первый объект[83] Step 312 - in response to the fact that the first interrogator does not give a second permission to the second interrogator and does not allow the second action to be performed by the second interrogator, the first interrogator continues to monitor the first object

[84] Если первый запросчик дает второе разрешение второму запросчику, способ продолжается на этапе 310, таким образом, что разрешается выполнение второго действия вторым запросчиком. Второй запросчик, следовательно, контролирует первый объект 121, и первое разрешение и выполнение первого действия первым запросчиком завершается.[84] If the first interrogator gives the second permission to the second interrogator, the method continues at step 310, so that the second action is permitted to be performed by the second interrogator. The second requestor, therefore, controls the first object 121, and the first resolution and execution of the first action by the first requestor is completed.

[85] Продолжая с описанным выше и представленным на Фиг. 2 примером, предполагается, что первый запросчик представляет собой программу 10 (или экземпляр 11 программы 10), соответствующую Яндекс.Картам, Яндекс. Карты запрашивают (и получают) разрешение отобразить объект 240 указателя на карте 260 улиц по адресу 250. В ответ на ввод пользователем второго адреса (не показано) в объекте 210 ввода данных, второй запрос получают от второго элемента запроса (в данном случае, Яндекс. Карт), второй запрос включает в себя включает в себя запрос на отображение объекта 240 указателя на месте второго адреса (не показано). На этапе 310 дается разрешение на отображение объекта 240 указателя на карте 260 улиц на месте второго адреса. Соответственно, первое разрешение и выполнение первого действия первым запросчиком завершаются, т.е. объект 240 указателя убирается с адреса 250 (который отображается вместо этого на месте второго адреса). Второй элемент контролирует первый объект 121, т.е. захватывает управление за всеми последующими разрешениями для объекта 240 указателя.[85] Continuing with the above and shown in FIG. 2 by example, it is assumed that the first interrogator is program 10 (or instance 11 of program 10) corresponding to Yandex.Maps, Yandex. Cards request (and receive) permission to display a pointer object 240 on a map of 260 streets at address 250. In response to a user entering a second address (not shown) in the data entry object 210, a second request is received from the second request element (in this case, Yandex. Maps), the second request includes a request to display the pointer object 240 in place of the second address (not shown). At 310, permission is given to display the pointer object 240 on a street map 260 in the place of the second address. Accordingly, the first resolution and the execution of the first action by the first interrogator are completed, i.e. pointer object 240 is removed from address 250 (which is displayed instead in place of the second address). The second element controls the first object 121, i.e. takes control of all subsequent permissions for the pointer object 240.

[86] Альтернативно, если первый запросчик не дает второе разрешение второму запросчику, способ продолжается на этапе 312, таким образом, выполнение второго действия вторым запросчиком не разрешено. В этом случае, объект 240 указателя остается на карте 260 улиц по адресу 250, и первый запросчик продолжает контролировать первый объект 121.[86] Alternatively, if the first interrogator does not give a second permission to the second interrogator, the method continues at step 312, so that the second action is not permitted by the second interrogator. In this case, the pointer object 240 remains on the street map 260 at address 250, and the first interrogator continues to monitor the first object 121.

[87] В альтернативных вариантах осуществления настоящего технического решения этапа 310 первый запросчик продолжает контролировать первый объект 121, несмотря на то, что было дано разрешение второму запросчику и было разрешено выполнение второго действия вторым запросчиком. Например, в описанном выше варианте, несмотря на то, что на этапе 310 дается разрешение второму запросчику для отображения объекта 240 указателя на карте 260 улиц на месте второго адреса, первый запросчик продолжает контролировать первый объект 121, т.е. первый запросчик все еще определяет последующие разрешения для объекта 240 указателя, а второй запросчик не захватывает контроль последующими разрешениями для объекта 240 указателя.[87] In alternative embodiments of the present technical solution of step 310, the first interrogator continues to monitor the first entity 121, although permission has been given to the second interrogator and the second interrogator has been allowed to perform the second action. For example, in the embodiment described above, although at step 310 permission is given to the second interrogator to display the pointer object 240 on a street map 260 in the place of the second address, the first interrogator continues to monitor the first object 121, i.e. the first interrogator still determines subsequent permissions for the pointer object 240, and the second interrogator does not take control of subsequent permissions for the pointer object 240.

[88] В некоторых вариантах осуществления настоящего технического решения, где второе действие включает в себя и первое действие и дополнительное действие, первый запросчик может частично давать второе разрешение второму запросчику, таким образом, разрешая выполнение части второго действия вторым запросчиком. Например, когда второй запрос от второго элемента запроса представляет собой запрос отобразить объект 240 указателя на карте 260 улиц на втором месте, а также запрос модифицировать внешний вид объекта 240 указателя, первый запросчик может давать разрешение второму запросчику отобразить объект 240 указателя на карте 260 улиц на втором месте, но не давать разрешение модифицировать внешний вид объекта 240 указателя. В альтернативных вариантах осуществления настоящего технического решения, первый запросчик может давать разрешение второму запросчику модифицировать внешний вид объекта 240 указателя, но не отображать объект 240 указателя на карте 260 улиц на втором месте. В подобных вариантах осуществления, первый запросчик может контролировать первый объект 121 (в данном случае - объект 240 указателя) полностью, частично или вовсе не контролировать (т.е. второй запросчик контролирует первый объект 121).[88] In some embodiments of the present technical solution, where the second action includes both the first action and the additional action, the first interrogator can partially give the second permission to the second interrogator, thus allowing the second interrogator to execute part of the second action. For example, when the second request from the second request element is a request to display a pointer object 240 on a street map 260 in second place, as well as a request to modify the appearance of a pointer object 240, the first interrogator may give permission to the second interrogator to display a pointer object 240 on a street map 260 second place, but do not give permission to modify the appearance of the object 240 pointer. In alternative embodiments of the present technical solution, the first interrogator may give permission to the second interrogator to modify the appearance of the pointer object 240, but not display the pointer object 240 on the street map 260 in second place. In such embodiments, the first interrogator can control the first object 121 (in this case, the pointer object 240) completely, partially or not at all (i.e., the second interrogator controls the first object 121).

[89] В вариантах осуществления настоящего технического решения, где первый запросчик продолжает контролировать объект частично, второй запросчик контролирует первый объект 121 частично, управление разрешениями в этом случае будет разделяться между первым запросчиком и вторым запросчиком. В общем случае, в подобных вариантах осуществления настоящего технического решения второй запросчик контролирует первый объект 121 для части второго действия, для которого было дано разрешение и выполнение которого было разрешено, первый запросчик продолжает контролировать первый объект 121 для части второго действия, для которого не было дано разрешения второму запросчику. Например, в случае, когда первый запросчик дал разрешение второму запросчику отобразить объект 240 указателя на карте 260 улиц на втором месте, но не давал разрешения второму запросчику модифицировать внешний вид объекта 240 указателя, второй запросчик может контролировать управление разрешениями на отображения объекта 240 указателя, а первый запросчик все еще контролирует управление разрешениями на модификацию внешнего вида объекта 240 указателя. Как будет понятно специалистам в данной области техники, возможны многие другие вариации.[89] In embodiments of the present technical solution, where the first interrogator continues to control the object partially, the second interrogator controls the first object 121 partially, permission control in this case will be divided between the first interrogator and the second interrogator. In general, in such embodiments of the present technical solution, the second interrogator monitors the first object 121 for a part of the second action for which permission was granted and the execution of which was permitted, the first interrogator continues to control the first object 121 for a part of the second action for which it was not given permissions to the second interrogator. For example, in the case where the first interrogator gave permission to the second interrogator to display the pointer object 240 on the street map 260 in second place, but did not allow the second interrogator to modify the appearance of the pointer object 240, the second interrogator can control the management of display permissions of the pointer object 240, and the first interrogator still controls the management of permissions to modify the appearance of the pointer object 240. As will be appreciated by those skilled in the art, many other variations are possible.

[90] В альтернативных вариантах осуществления этапа 310, первый запросчик может давать второе разрешение второму запросчику, что позволяет выполнять второе действие вторым запросчиком, без завершения первого разрешения и выполнения первого действия первым запросчиком. В описанном выше примере первый запросчик может давать разрешение второму запросчику отобразить второй объект указателя (не показан) на карте 260 улиц на втором месте (не показано), не оканчивая отображение объекта 240 указателя на первом месте, соответствующем адресу 250. В этом случае, будет отображаться два объекта указателя на карте 260 улиц, один на первом месте, соответствующем адресу 250, а второй на втором месте. В подобных вариантах осуществления настоящего технического решения, первый запросчик может продолжать или не продолжать контролировать первый объект 121 (объект 240 указателя), т.е. второй второй запросчик может контролировать или не контролировать первый объект 121.[90] In alternative embodiments of step 310, the first interrogator may give a second permission to the second interrogator, allowing the second interrogator to perform the second action without completing the first permission and the first interrogator to complete the first action. In the example described above, the first interrogator can give permission to the second interrogator to display the second pointer object (not shown) on a street map 260 in second place (not shown) without ending displaying the pointer object 240 in first place corresponding to address 250. In this case, there will be two pointer objects are displayed on a map of 260 streets, one in first place corresponding to address 250, and the second in second place. In such embodiments of the present technical solution, the first interrogator may or may not continue to monitor the first object 121 (pointer object 240), i.e. the second second interrogator may or may not control the first entity 121.

[91] Таким образом, с некоторой точки зрения, варианты осуществления настоящего технического решения можно изложить следующим образом, структурировано, пронумерованными пунктами.[91] Thus, from a certain point of view, embodiments of the present technical solution can be stated as follows, structured, numbered paragraphs.

[92] ПУНКТ 1 Способ управления разрешениями для объектов (12), объекты (12) исполняются сервером (40) как часть программных процедур, способ выполняется на электронном устройстве (20) и включает в себя:[92] ITEM 1 A method for managing permissions for objects (12), objects (12) are executed by a server (40) as part of software procedures, the method is performed on an electronic device (20) and includes:

[93] а) получение первого запроса на первый объект (121) от первого элемента запроса, первый запрос включает в себя запрос на выполнение первого действия над первым объектом (121), выполнение первого действия требует первого разрешения.[93] a) receiving the first request to the first object (121) from the first request element, the first request includes a request to perform the first action on the first object (121), the first action requires first permission.

[94] b) ответ на указанный первый запрос дается первое разрешение на выполнение первого действия первому запросчику, и первый запросчик, следовательно, контролирует первый объект (121);[94] b) the response to the specified first request is given the first permission to perform the first action to the first requestor, and the first requestor, therefore, controls the first object (121);

[95] с) получение второго запроса на первый объект (121) от второго элемента запроса, второй запрос включает запрос на выполнение второго действия над первым объектом (121), выполнение второго действия требует второго разрешения;[95] c) receiving a second request to the first object (121) from the second request element, the second request includes a request to perform a second action on the first object (121), the second action requires a second permission;

[96] d) в ответ на второй запрос, передача второго запроса первому запросчику, первый запросчик контролирует первый объект (121); и[96] d) in response to the second request, transmitting the second request to the first interrogator, the first interrogator controls the first entity (121); and

[97] выполнение одного из:[97] performing one of:

[98] е) в ответ на то, что первый запросчик дает второе разрешение второму запросчику, позволение выполнения второго действия вторым запросчиком, второй запросчик, соответственно, контролирует первый объект (121), и завершение первого разрешения и выполнения первого действия первым запросчиком; или[98] e) in response to the fact that the first interrogator gives the second permission to the second interrogator, allowing the second interrogator to perform the second action, the second interrogator, respectively, controls the first object (121), and the completion of the first authorization and the execution of the first action by the first interrogator; or

[99] f) в ответ на то, что первый запросчик не дает второе разрешение второму запросчику и не позволяет выполнять второе действие вторым элементом, первый запросчик продолжает контролировать первый объект (121).[99] f) in response to the fact that the first interrogator does not give a second permission to the second interrogator and does not allow the second action to be performed by the second element, the first interrogator continues to monitor the first object (121).

[100] ПУНКТ 2 Способ по п. 1, в котором первое действие и второе действие являются одним и тем же действием.[100] ITEM 2 The method of claim 1, wherein the first action and the second action are the same action.

[101] ПУНКТ 3 Способ по п. 1, в котором первое действие и второе действие являются разными действиями.[101] ITEM 3 The method of claim 1, wherein the first action and the second action are different actions.

[102] ПУНКТ 4 Способ по п. 3, в котором на этапе е), в ответ на то, что первый запросчик дает второе разрешение второму запросчику и позволяет выполнять второе действие вторым элементом, первый запросчик продолжает контролировать первый объект (121).[102] ITEM 4 The method of claim 3, wherein in step e), in response to the first interrogator giving the second permission to the second interrogator and allowing the second action to be performed by the second element, the first interrogator continues to monitor the first object (121).

[103] ПУНКТ 5 Способ по любому из пп. 3-4, в котором второе действие включает в себя первое действие и дополнительное действие, в котором первый запросчик дает второе разрешение второму запросчику, включая то, что первый запросчик частично дает второе разрешение второму запросчику, разрешая выполнение части второго действия вторым запросчиком.[103] ITEM 5 The method according to any one of paragraphs. 3-4, in which the second action includes a first action and an additional action, in which the first interrogator gives the second permission to the second interrogator, including the fact that the first interrogator partially gives the second permission to the second interrogator, allowing the second interrogator to execute part of the second action.

[104] ПУНКТ 6 Способ по п. 5, в котором первый запросчик частично дает второе разрешение второму запросчику, включая то, что первый запросчик позволяет выполнять первое действие вторым запросчиком и не позволяет выполнять дополнительное действие вторым запросчиком.[104] ITEM 6 The method of claim 5, wherein the first interrogator partially grants a second permission to the second interrogator, including that the first interrogator allows the first interrogator to perform the first action and does not allow the second interrogator to perform the additional action.

[105] ПУНКТ 7 Способ по п. 5, в котором первый запросчик частично дает второе разрешение второму запросчику, включая то, что первый запросчик позволяет выполнять дополнительное действие вторым запросчиком и не позволяет выполнять первое действие вторым запросчиком.[105] ITEM 7 The method of claim 5, wherein the first interrogator partially gives a second permission to the second interrogator, including that the first interrogator allows the second interrogator to perform an additional action and does not allow the second interrogator to perform the first action.

[106] ПУНКТ 8 Способ по любому из пп. 5-7, в котором первый запросчик продолжает частично контролировать первый объект (121), второй запросчик контролирует часть второго действия, для которого было дано разрешение и выполнение которого было разрешено.[106] ITEM 8 The method according to any one of paragraphs. 5-7, in which the first interrogator continues to partially control the first object (121), the second interrogator controls part of the second action for which permission was given and the execution of which was allowed.

[107] ПУНКТ 9 Способ по любому из пп. 1-8, в котором первый объект (121) включает в себя элемент пользовательского интерфейса и указатель и аудио-объект и объект изображения и видео-объект и текстовый объект.[107] ITEM 9 The method according to any one of paragraphs. 1-8, in which the first object (121) includes a user interface element and a pointer and an audio object and an image object and a video object and a text object.

[108] ПУНКТ 10 Способ по п. 9, в котором элемент пользовательского интерфейса включает в себя текстовое поле и панель инструментов и строку меню и гиперссылку и кнопку.[108] ITEM 10 The method of claim 9, wherein the user interface element includes a text field and a toolbar and a menu bar and a hyperlink and a button.

[109] ПУНКТ 11 Способ по любому из пп. 1-10, в котором первый объект (121) является всплывающим объектом.[109] ITEM 11 The method according to any one of paragraphs. 1-10, in which the first object (121) is a pop-up object.

[110] ПУНКТ 12 Способ по любому из пп. 4-7, в котором первое действие, второе действие и дополнительное действие включают в себя, независимо, одно или несколько из: демонстрацию первого объекта (121), что позволяет первому объекту (121) появляться, и ввод текста в первый объект (121), и ввод данных или информации в первый объект (121), и нажатие на первый объект (121), и выбор первого объекта (121), и выбор части первого объекта (121), и удаление первого объекта (121).[110] ITEM 12 The method according to any one of paragraphs. 4-7, in which the first action, the second action and the additional action include, independently, one or more of: a demonstration of the first object (121), which allows the first object (121) to appear, and text input in the first object (121) , and entering data or information into the first object (121), and clicking on the first object (121), and selecting the first object (121), and selecting a part of the first object (121), and deleting the first object (121).

[111] ПУНКТ 13 Способ по любому из пп. 1-12, в котором электронное устройство (20) является клиентским устройством или сервером (40).[111] ITEM 13 The method according to any one of paragraphs. 1-12, in which the electronic device (20) is a client device or server (40).

[112] ПУНКТ 14 Электронное устройство (20) связано с пользователем, электронное устройство (20) включает в себя:[112] ITEM 14 An electronic device (20) is associated with a user, an electronic device (20) includes:

интерфейс связи для установления связи с сервером (40) через сеть (50) передачи данных, сервер (40) выполнен с возможностью выполнять объекты (12) как часть программных процедур;a communication interface for establishing communication with the server (40) through the data transmission network (50), the server (40) is configured to execute objects (12) as part of the software procedures;

процессор (22) функционально связанный с интерфейсом связи, процессор дополнительно выполнен с возможностью осуществлять:a processor (22) operably coupled to a communication interface, the processor is further configured to:

a) получение первого запроса на первый объект (121) от первого элемента запроса, первый запрос включает в себя запрос на выполнение первого действия над первым объектом (121), выполнение первого действия требует первого разрешения;a) receiving the first request to the first object (121) from the first request element, the first request includes a request to perform the first action on the first object (121), the first action requires first permission;

b) в ответ на указанный первый запрос выдачу первого разрешения на выполнение первого действия первому запросчику, и первый запросчик, следовательно, контролирует первый объект (121);b) in response to the specified first request, issuing the first permission to perform the first action to the first requestor, and the first requestor, therefore, controls the first object (121);

c) получение второго запроса на первый объект (121) от второго элемента запроса, второй запрос включает запрос на выполнение второго действия над первым объектом (121), выполнение второго действия требует второго разрешения;c) receiving a second request to the first object (121) from the second request element, the second request includes a request to perform a second action on the first object (121), the second action requires a second permission;

d) в ответ на второй запрос, передачу второго запроса первому запросчику, первый запросчик контролирует первый объект (121); иd) in response to the second request, the transmission of the second request to the first interrogator, the first interrogator controls the first object (121); and

выполнение одного из:execution of one of:

e) в ответ на то, что первый запросчик дает второе разрешение второму запросчику, позволение выполнения второго действия вторым запросчиком, второй запросчик, соответственно, контролирует первый объект (121), и завершение первого разрешения и выполнения первого действия первым запросчиком; иe) in response to the fact that the first interrogator gives the second permission to the second interrogator, allowing the second interrogator to perform the second action, the second interrogator controls the first object (121), respectively, and the first interrogator completes the first permission and the first action; and

f) в ответ на то, что первый запросчик не дает второе разрешение второму запросчику и не позволяет выполнять второе действие вторым элементом, первый запросчик продолжает контролировать первый объект (121).f) in response to the fact that the first interrogator does not give a second permission to the second interrogator and does not allow the second action to be performed by the second element, the first interrogator continues to control the first object (121).

[113] ПУНКТ 15 Электронное устройство (20) по п. 14, в котором первое действие и второе действие являются одним и тем же действием.[113] ITEM 15 An electronic device (20) according to claim 14, wherein the first action and the second action are the same action.

[114] ПУНКТ 16 Электронное устройство (20) по п. 14, в котором первое действие и второе действие являются разными действиями.[114] ITEM 16 An electronic device (20) according to claim 14, wherein the first action and the second action are different actions.

[115] ПУНКТ 17 Электронное устройство (20) по п. 16, в котором на этапе е), в ответ на то, что первый запросчик дает второе разрешение второму запросчику и выполнять второе действие вторым элементом разрешено, первый запросчик продолжает контролировать первый объект (121).[115] ITEM 17 An electronic device (20) according to claim 16, wherein in step e), in response to the first interrogator giving a second permission to the second interrogator and allowing the second action to be performed by the second element, the first interrogator continues to monitor the first object ( 121).

[116] ПУНКТ 18 Электронное устройство по п. 16 или п. 17, в котором второе действие включает в себя и первое действие и дополнительное действие, в котором первый запросчик дает второе разрешение второму запросчику, включая то, что первый запросчик частично дает второе разрешение второму запросчику, разрешая выполнение части второго действия вторым запросчиком.[116] ITEM 18 An electronic device according to claim 16 or claim 17, wherein the second action includes both a first action and an additional action, in which the first interrogator gives the second permission to the second interrogator, including the fact that the first interrogator partially gives the second permission the second interrogator, allowing the execution of part of the second action by the second interrogator.

[117] ПУНКТ 19 Электронное устройство по п. 18, в котором первый запросчик частично дает второе разрешение второму запросчику, включая то, что первый запросчик позволяет выполнять первое действие вторым запросчиком и не позволяет выполнять дополнительное действие второму запросчику.[117] Clause 19 The electronic device of claim 18, wherein the first interrogator partially grants a second permission to the second interrogator, including that the first interrogator allows the first interrogation to be performed by the second interrogator and does not allow the second interrogator to perform an additional action.

[118] ПУНКТ 20 Электронное устройство по п. 18, в котором первый запросчик частично дает второе разрешение второму запросчику, включая то, что первый запросчик позволяет выполнять дополнительное действие вторым запросчиком и не позволяет выполнять первое действие вторым запросчиком.[118] ITEM 20 The electronic device of claim 18, wherein the first interrogator partially grants a second permission to the second interrogator, including that the first interrogator allows the second interrogator to perform an additional action and does not allow the second interrogator to perform the first action.

[119] ПУНКТ 21 Электронное устройство по любому из пп. 18-20, в котором первый запросчик продолжает частично контролировать первый объект (121), второй запросчик контролирует часть второго действия, для которого было дано разрешение и выполнение которого было разрешено.[119] ITEM 21 An electronic device according to any one of paragraphs. 18-20, in which the first interrogator continues to partially control the first object (121), the second interrogator controls part of the second action for which permission was given and the execution of which was allowed.

[120] ПУНКТ 22 Способ по любому из пп. 14-21, в котором первый объект (121) включает в себя элемент пользовательского интерфейса, указатель, аудио-объект, объект изображения, видео-объект или текстовый объект.[120] ITEM 22 The method according to any one of paragraphs. 14-21, in which the first object (121) includes a user interface element, a pointer, an audio object, an image object, a video object, or a text object.

[121] ПУНКТ 23 Электронное устройство по п. 22, в котором элемент пользовательского интерфейса включает в себя текстовое поле, панель инструментов, строку меню, гиперссылку или кнопку.[121] ITEM 23 The electronic device of claim 22, wherein the user interface element includes a text field, a toolbar, a menu bar, a hyperlink, or a button.

[122] ПУНКТ 24 Электронное устройство по любому из пп. 14-23, в котором первый объект (121) является всплывающим объектом.[122] ITEM 24 An electronic device according to any one of paragraphs. 14-23, in which the first object (121) is a pop-up object.

[123] ПУНКТ 25 Электронное устройство по любому из пп. 17-20, в котором первое действие, второе действие и дополнительное действие включают в себя, независимо, одно или несколько из: демонстрацию первого объекта (121), что позволяет первому объекту (121) появляться, ввод текста в первый объект (121), ввод данных или информации в первый объект (121), нажатие на первый объект (121), выбор первого объекта (121), выбор части первого объекта (121), удаление первого объекта (121).[123] ITEM 25 An electronic device according to any one of paragraphs. 17-20, in which the first action, the second action and the additional action include, independently, one or more of: a demonstration of the first object (121), which allows the first object (121) to appear, entering text in the first object (121), entering data or information into the first object (121), clicking on the first object (121), selecting the first object (121), selecting a part of the first object (121), deleting the first object (121).

[124] ПУНКТ 26 Электронное устройство по любому из пп. 14-25, в котором электронное устройство является клиентским устройством или сервером (40).[124] ITEM 26 An electronic device according to any one of paragraphs. 14-25, in which the electronic device is a client device or server (40).

[125] Некоторые технические эффекты неограничивающих вариантов осуществления настоящего технического решения могут включать в себя предоставление децентрализованного управления объектами, при этом центральный менеджер разрешений не отвечает за определение разрешений для объектов во всех экземплярах. Это предоставление управления объектами может быть эффективнее, быстрее, менее затратным с позиции вычислительных ресурсов, уменьшать нагрузку на процессор, снижать использование ОЗУ и/или снижать потребление энергии электронным устройством. В тех вариантах осуществления настоящего технического решения, где электронное устройство 20 выполнено как беспроводное устройство передачи данных, способность снижать потребление энергии может привести к сбережению заряда аккумулятора электронного устройства 20. Важно иметь в виду, варианты осуществления настоящего технического решения могут быть выполнены с проявлением и других технических результатов.[125] Some of the technical effects of non-limiting embodiments of the present technical solution may include the provision of decentralized management of objects, while the central permission manager is not responsible for determining permissions for objects in all instances. This provision of facility management can be more efficient, faster, less costly in terms of computing resources, reduce processor load, reduce RAM usage and / or reduce energy consumption by an electronic device. In those embodiments of the present technical solution where the electronic device 20 is designed as a wireless data transmission device, the ability to reduce energy consumption can lead to the saving of the battery charge of the electronic device 20. It is important to keep in mind that the embodiments of the present technical solution can be performed with other technical results.

[126] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений. Таким образом, объем настоящего технического решения ограничен только объемом прилагаемой формулы изобретения.[126] Modifications and improvements to the above-described embodiments of the present technical solution will be apparent to those skilled in the art. The preceding description is provided as an example only and is not subject to any restrictions. Thus, the scope of the present technical solution is limited only by the scope of the attached claims.

Claims (31)

1. Способ управления разрешениями для объектов, объекты исполняются сервером как часть программных процедур, способ выполняется на электронном устройстве и включает в себя:1. A method of managing permissions for objects, objects are executed by the server as part of software procedures, the method is performed on an electronic device and includes: получение первого запроса на первый объект от первого запросчика, первый запрос включает в себя запрос на выполнение первого действия над первым объектом, выполнение первого действия требует первого разрешения;receiving the first request to the first object from the first interrogator, the first request includes a request to perform the first action on the first object, the first action requires first permission; в ответ на указанный первый запрос центральным менеджером разрешений дается первое разрешение на выполнение первого действия первому запросчику, и первый запросчик контролирует первый объект;in response to the indicated first request, the central permission manager gives the first permission to perform the first action to the first requestor, and the first requestor controls the first object; получение второго запроса на первый объект от второго запросчика, второй запрос включает запрос на выполнение второго действия над первым объектом, выполнение второго действия требует второго разрешения;receiving a second request to the first object from the second interrogator, the second request includes a request to perform a second action on the first object, the second action requires a second permission; в ответ на второй запрос осуществляют передачу второго запроса первому запросчику, контролирующему первый объект; иin response to the second request, the second request is transmitted to the first interrogator controlling the first object; and выполнение одного из:execution of one of: в ответ на то, что первый запросчик дает второе разрешение второму запросчику, разрешают выполнять второму запросчику второе действие, второй запросчик получает контроль над первым объектом, и завершение первого разрешения и выполнения первого действия первым запросчиком; илиin response to the fact that the first interrogator gives a second permission to the second interrogator, the second interrogator is allowed to perform the second action, the second interrogator gains control of the first object, and the first interrogator completes the first permission and performs the first action; or в ответ на то, что первый запросчик не дает второе разрешение второму запросчику и не позволяет выполнять второе действие вторым запросчиком, первый запросчик продолжает контролировать объект.in response to the fact that the first interrogator does not give a second permission to the second interrogator and does not allow the second action to be performed by the second interrogator, the first interrogator continues to control the object. 2. Способ по п. 1, в котором первое действие и второе действие являются одним и тем же действием.2. The method of claim 1, wherein the first action and the second action are the same action. 3. Способ по п. 1, в котором первое действие и второе действие являются разными действиями.3. The method of claim 1, wherein the first action and the second action are different actions. 4. Способ по п. 1, в котором первый объект является всплывающим объектом.4. The method of claim 1, wherein the first object is a pop-up object. 5. Способ по п. 1, в котором электронное устройство является клиентским устройством или сервером.5. The method of claim 1, wherein the electronic device is a client device or server. 6. Способ по п. 1, в котором первый объект включает в себя элемент пользовательского интерфейса, и указатель, и аудио-объект, и объект изображения, и видео-объект, и текстовый объект.6. The method of claim 1, wherein the first object includes a user interface element, and a pointer, and an audio object, and an image object, and a video object, and a text object. 7. Способ по п. 3, в котором в ответ на то, что первый запросчик дает второе разрешение второму запросчику и позволяет выполнять второе действие вторым элементом, первый запросчик продолжает контролировать первый объект.7. The method according to claim 3, in which in response to the fact that the first interrogator gives the second permission to the second interrogator and allows the second action to be performed by the second element, the first interrogator continues to monitor the first object. 8. Способ по п. 3, в котором второе действие включает в себя первое действие и дополнительное действие, в котором первый запросчик дает второе разрешение второму запросчику, включая то, что первый запросчик частично дает второе разрешение второму запросчику, разрешая выполнение части второго действия вторым запросчиком.8. The method according to claim 3, in which the second action includes a first action and an additional action, in which the first interrogator gives the second permission to the second interrogator, including the fact that the first interrogator partially gives the second permission to the second interrogator, allowing the execution of the second part of the second the interrogator. 9. Способ по п. 6, в котором элемент пользовательского интерфейса включает в себя текстовое поле, и панель инструментов, и строку меню, и гиперссылку, и кнопку.9. The method according to claim 6, in which the user interface element includes a text field, and a toolbar, and a menu bar, and a hyperlink, and a button. 10. Способ по п. 7, в котором первое действие, второе действие и дополнительное действие включают в себя, независимо, одно или несколько из: демонстрацию первого объекта, что позволяет первому объекту появляться, и ввод текста в первый объект, и ввод данных или информации в первый объект, и нажатие на первый объект, и выбор первого объекта, и выбор части первого объекта, и удаление первого объекта.10. The method according to claim 7, in which the first action, the second action and the additional action include, independently, one or more of: demonstrating the first object, which allows the first object to appear, and entering text into the first object, and entering data or information into the first object, and clicking on the first object, and selecting the first object, and selecting a part of the first object, and deleting the first object. 11. Способ по п. 8, в котором первый запросчик частично дает второе разрешение второму запросчику, включая то, что первый запросчик позволяет выполнять первое действие вторым запросчиком и не позволяет выполнять дополнительное действие вторым запросчиком.11. The method according to claim 8, in which the first interrogator partially gives the second permission to the second interrogator, including that the first interrogator allows the first action to be performed by the second interrogator and does not allow the additional action to be performed by the second interrogator. 12. Способ по п. 8, в котором первый запросчик частично дает второе разрешение второму запросчику, включая то, что первый запросчик позволяет выполнять дополнительное действие второму запросчику и не позволяет выполнять первое действие второму запросчику.12. The method according to claim 8, in which the first interrogator partially gives the second permission to the second interrogator, including that the first interrogator allows the second interrogator to perform an additional action and does not allow the second interrogator to perform the first action. 13. Способ по п. 8, в котором первый запросчик продолжает частично контролировать первый объект, второй запросчик контролирует часть второго действия, для которого было дано разрешение и выполнение которого было разрешено.13. The method according to claim 8, in which the first interrogator continues to partially control the first object, the second interrogator controls part of the second action, for which permission was given and the execution of which was allowed. 14. Электронное устройство, связанное с пользователем, электронное устройство включает в себя:14. The electronic device associated with the user, the electronic device includes: интерфейс связи для установления связи с сервером через сеть передачи данных, сервер выполнен с возможностью выполнять объекты как часть программных процедур;a communication interface for establishing communication with the server through the data network, the server is configured to execute objects as part of software procedures; процессор функционально связанный с интерфейсом связи, процессор дополнительно выполнен с возможностью осуществлять:a processor functionally associated with a communication interface, the processor is further configured to: получение первого запроса на первый объект от первого запросчика, первый запрос включает в себя запрос на выполнение первого действия над первым объектом, выполнение первого действия требует первого разрешения;receiving the first request to the first object from the first interrogator, the first request includes a request to perform the first action on the first object, the first action requires first permission; в ответ на указанный первый запрос выдавать центральным менеджером разрешений первое разрешение на выполнение первого действия первому запросчику, и первый запросчик контролирует первый объект;in response to said first request, issue by the central permission manager a first permission to perform the first action to the first requestor, and the first requestor controls the first object; получение второго запроса на первый объект от второго запросчика, второй запрос включает запрос на выполнение второго действия над первым объектом, выполнение второго действия требует второго разрешения;receiving a second request to the first object from the second interrogator, the second request includes a request to perform a second action on the first object, the second action requires a second permission; в ответ на второй запрос, осуществляют передачу второго запроса первому запросчику, контролирующему первый объект; иin response to the second request, the second request is transmitted to the first interrogator controlling the first object; and выполнение одного из:execution of one of: в ответ на то, что первый запросчик дает второе разрешение второму запросчику, позволение выполнения второго действия вторым запросчиком, второй запросчик контролирует первый объект; илиin response to the fact that the first interrogator gives a second permission to the second interrogator, allowing the second action to be performed by the second interrogator, the second interrogator controls the first object; or в ответ на то, что первый запросчик не дает второе разрешение второму запросчику и не позволяет выполнять второе действие вторым запросчиком, продолжают контролировать первый объект первым запросчиком.in response to the fact that the first interrogator does not give a second permission to the second interrogator and does not allow the second action to be performed by the second interrogator, the first interrogator continues to monitor the first object. 15. Электронное устройство по п. 14, в котором электронное устройство является клиентским устройством или сервером.15. The electronic device according to claim 14, in which the electronic device is a client device or server.
RU2015126020A 2015-06-30 2015-06-30 Method and electronic permission management unit for objects RU2632142C2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
RU2015126020A RU2632142C2 (en) 2015-06-30 2015-06-30 Method and electronic permission management unit for objects
PCT/IB2016/050520 WO2017001938A1 (en) 2015-06-30 2016-02-02 Objects management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2015126020A RU2632142C2 (en) 2015-06-30 2015-06-30 Method and electronic permission management unit for objects

Publications (2)

Publication Number Publication Date
RU2015126020A RU2015126020A (en) 2017-01-11
RU2632142C2 true RU2632142C2 (en) 2017-10-02

Family

ID=57607921

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015126020A RU2632142C2 (en) 2015-06-30 2015-06-30 Method and electronic permission management unit for objects

Country Status (2)

Country Link
RU (1) RU2632142C2 (en)
WO (1) WO2017001938A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU186650U1 (en) * 2018-04-25 2019-01-29 Федеральное государственное казенное военное образовательное учреждение высшего образования "Михайловская военная артиллерийская академия" МО РФ DEVICE FOR CALCULATING THE COMPLETENESS OF THE MILITARY MANAGEMENT BODY AT THE CONTROL OF THE COMBAT PREPARATION OF SLAVING FORMATIONS

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994023362A1 (en) * 1993-03-31 1994-10-13 Kalieda Labs, Inc. Behavior objects
RU2207619C2 (en) * 2001-07-12 2003-06-27 Щеглов Андрей Юрьевич Resource access differentiation system
US6993665B2 (en) * 2002-05-01 2006-01-31 Sun Microsystems, Inc. Applet permissions manager
US7970823B2 (en) * 2004-09-02 2011-06-28 Broadway Technology, Llc System for sharing data objects among applications
WO2012155096A1 (en) * 2011-05-11 2012-11-15 Oracle International Corporation Access control architecture
US8656465B1 (en) * 2011-05-09 2014-02-18 Google Inc. Userspace permissions service
US20150089575A1 (en) * 2013-09-20 2015-03-26 Oracle International Corporation Authorization policy objects sharable across applications, persistence model, and application-level decision-combining algorithm
US9032011B2 (en) * 2004-09-02 2015-05-12 Broadway Technology Llc Management of data object sharing among applications

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8265942B2 (en) * 2005-04-15 2012-09-11 Fmr Llc Multi-authoring within benefits content system
US9239666B2 (en) * 2007-09-12 2016-01-19 Citrix Systems, Inc. Methods and systems for maintaining desktop environments providing integrated access to remote and local resources
US10769296B2 (en) * 2013-12-10 2020-09-08 Early Warning Services, Llc System and method of permission-based data sharing

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994023362A1 (en) * 1993-03-31 1994-10-13 Kalieda Labs, Inc. Behavior objects
RU2207619C2 (en) * 2001-07-12 2003-06-27 Щеглов Андрей Юрьевич Resource access differentiation system
US6993665B2 (en) * 2002-05-01 2006-01-31 Sun Microsystems, Inc. Applet permissions manager
US7970823B2 (en) * 2004-09-02 2011-06-28 Broadway Technology, Llc System for sharing data objects among applications
US9032011B2 (en) * 2004-09-02 2015-05-12 Broadway Technology Llc Management of data object sharing among applications
US8656465B1 (en) * 2011-05-09 2014-02-18 Google Inc. Userspace permissions service
WO2012155096A1 (en) * 2011-05-11 2012-11-15 Oracle International Corporation Access control architecture
US20150089575A1 (en) * 2013-09-20 2015-03-26 Oracle International Corporation Authorization policy objects sharable across applications, persistence model, and application-level decision-combining algorithm

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU186650U1 (en) * 2018-04-25 2019-01-29 Федеральное государственное казенное военное образовательное учреждение высшего образования "Михайловская военная артиллерийская академия" МО РФ DEVICE FOR CALCULATING THE COMPLETENESS OF THE MILITARY MANAGEMENT BODY AT THE CONTROL OF THE COMBAT PREPARATION OF SLAVING FORMATIONS

Also Published As

Publication number Publication date
RU2015126020A (en) 2017-01-11
WO2017001938A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
JP7013466B2 (en) Application data processing methods, equipment, and computer programs
US9519504B2 (en) Managing a server template
US9229771B2 (en) Cloud bursting and management of cloud-bursted applications
US11647086B2 (en) System and method for maintaining user session continuity across multiple devices and/or multiple platforms
WO2017049769A1 (en) Method and device for providing target page in mobile application
US20170010673A1 (en) Gesture based sharing of user interface portion
US9838460B2 (en) Tool for sharing applications across client devices
US9824205B2 (en) Mapping process changes
RU2608472C2 (en) Techniques for adapting interpretive run time application to multiple clients
US10956131B2 (en) Separation of user interface logic from user interface presentation by using a protocol
US20210334118A1 (en) Opening local files in remote applications
KR20150004817A (en) User interface web services
US20150381754A1 (en) Unifying cloud services for online sharing
US20130179414A1 (en) Mechanisms for connecting files between applications
US10839036B2 (en) Web browser having improved navigational functionality
RU2632142C2 (en) Method and electronic permission management unit for objects
US20150264113A1 (en) Dynamic Batching
US20210109895A1 (en) Determining user interface contexts for requested resources
US9379940B2 (en) Virtual device profile to configure virtual network interface cards
US10362108B2 (en) Application transfer using time delay and proximity detection
US9813506B2 (en) Distributed self-served application remoting
US20210374106A1 (en) Using drag-and-drop to open local files remotely
CN109408336A (en) A kind of startup item monitoring method, device, terminal and computer-readable medium
US10305733B1 (en) Defining software infrastructure using a physical model
Mayer et al. Platform simplification for IBM z14

Legal Events

Date Code Title Description
HE9A Changing address for correspondence with an applicant