Method and apparatus for selectable event dispatching

Electrical computers and digital processing systems: interprogra – Event handling or event notification

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C719S315000

Reexamination Certificate

active

06829771

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates generally to an improved distributed data processing system and, in particular to an improved method and apparatus for creating applications. Still more particularly, the present invention relates to a method and apparatus for creating client applications.
2. Description of Related Art
Distributed data processing systems involve data transfers between clients and servers (also know as services). Typically, a client locates a server, initiates a session with a server and requests the server to perform some service. The server expects requests from a client to arrive in a particular format. A server is more complex than a client because the server typically handles a large number of clients simultaneously, often fetches and stores information from a large database, creates additional transactions for other services, performs business logic, and returns information formatted according to each client channel. For example, data will be specified in a particular message format. A particular transmission protocol will deliver the message to the server. The server accepts the message protocol as its application programming model (API) to its services and returns a result. A variety of software systems, such as Enterprise Java Beans (EJB), Servlets, Java Server Pages (JSP), and XML have been implemented to enhance the development of client and server-side software.
Client applications perform a number of different functions. For example, the application on the client side handles the user interface and may provide program logic for processing user input. Additionally, a client application must match the requirements of a particular server to provide communications with the particular server. Clients are packaged and distributed according to the services provided by the server.
A graphical user interface (GUI) exists in the client application to handle what the user views on the screen. Events resulting from user input, such as mouse clicks or keyboard strokes, are detected and handled using “listeners” processes in the application. The events are processed by program logic. The program logic may result in requests being sent to a server. Communication with the server is provided using processes that use protocols, such as hypertext transfer protocol (HTTP), secure sockets (SSL), or Remote Method Invocation (RMI).
Client software can be either “thick” or “thin”. A thick client is typically a large client-installed application that may access a database directly and apply business logic. They typically have dependence on the client operating system and require manual support to install and configure. By contrast a thin client is typically a small application downloaded on request from a server and accesses the database through an intermediate application server. This is known as a multi-tier application. A number of different usage scenarios for clients are present, resulting in a variety of client needs being present. For example, it is typical that in a global enterprise Intranet, the client configuration is controlled by the business but the large number of clients includes older machines with slow networks (e.g. 9600 baud). Likewise, in the Internet, there is little configuration control by the business and it is estimated that a large percentage of clients worldwide still use 14.4K connections that result in very slow network speeds and downloads. A typical user will become very frustrated if downloads take longer than a minute or two. Further, mobile users require compact software that can be customized and packaged to fit on machines and operate disconnected from the network. Subsequent automated support to connect to the network is needed.
At the other end of the spectrum, power users with high-speed connections expect screen refresh times in the sub-second range and “instantaneous” echoing of typed characters to provide the look and feel of processing in a local environment. In a multi-tier computing environment, the primary role of the client is to present and gather information quickly. The client application is considered a business asset independent of the network topology and server function. In these environments, it is desirable to be able to use the same client processing code for different user types and interface channels, such as automated teller machines (ATM), Kiosks, Internet [hypertext markup language (HTML)/applets], and regional office clients (applications).
Consequently, a common thin or thick client development environment for developing clients may be used to solve these problems, especially when the size and speed of the application download, integration and operation is important. Any software development environment should be based on sound software engineering principles.
Object-oriented languages have been employed in creating thin clients. Object-oriented programming environments have been presented as providing software reuse, which is a desirable feature in creating thin clients and reducing development time. In reality, the present object-oriented programming environments for developing thin clients are unable to provide enough object reuse and repeatability for quickly developing thin clients. Nor do they specify how to readily support additional message formats, protocols, data models and servers, mobile disconnected users, and caching.
Therefore, it would be advantageous to have an improved method and apparatus for a client development architecture that facilitates creating thin clients in a manner in which component reuse is increased while client development time is reduced, and multiple message formats, protocols, data models and servers, mobile disconnected users and caching can be readily integrated.
SUMMARY OF THE INVENTION
The present invention provides an architectural pattern for creating applications for a data processing system. A graphical user interface is created in which the graphical user interface includes a plurality of components. Processes for presenting the plurality of components and receiving user input are handled by a first set of graphical objects, wherein in response to selected user input, a first event is generated. An application object is created in which the application process controls an order in which the graphical objects present the set of components and process the event and wherein the application generates a second event. A transport object is created in which the transport object processes the second event and forwards the second event for processing to a destination within the plurality of destinations. A plurality of destination objects are created in which each destination object within the plurality of destinations objects handles accessing a destination within the plurality of destinations.
The present invention provides a method and apparatus in a data processing system for refreshing data in an application. A call is received to update data in the application, wherein the data is destined for a component in the application. A data type is identified for the data. Responsive to the data type being a handled data type, the data is formatted and a refresh is called on the component.
The present invention provides a method and apparatus in a data processing system for displaying a component or container. The container is displayed within a display using a first component. A location of the component or container is controlled within the display using a second component, wherein the second component controls the location and geometry of the component or container in response to receiving an event. The component or container is selectively displayed using a third component, wherein the third component generates the event.
The present invention provides a process in a data processing system for managing services in a desktop environment from an object oriented-environment. A presentation of a graphical user interface is controlled using a view controller, wherein the view controller handles user input to the graphical u

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and apparatus for selectable event dispatching does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and apparatus for selectable event dispatching, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for selectable event dispatching will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3313954

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.