Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Proxy Pattern SE-2811 Dr. Mark L. Hornick 1. The Proxy Pattern has many variations, but in general: The Proxy Pattern uses an proxy object as a surrogate.

Similar presentations


Presentation on theme: "The Proxy Pattern SE-2811 Dr. Mark L. Hornick 1. The Proxy Pattern has many variations, but in general: The Proxy Pattern uses an proxy object as a surrogate."— Presentation transcript:

1 The Proxy Pattern SE-2811 Dr. Mark L. Hornick 1

2 The Proxy Pattern has many variations, but in general: The Proxy Pattern uses an proxy object as a surrogate (aka stand-in or placeholder) that acts like another object SE-2811 Dr. Mark L. Hornick 2

3 Generic Proxy Pattern: A Client programs to a Subject, which may be a RealSubject or a Proxy SE-2811 Dr. Mark L. Hornick 3

4 The Stub Proxy is a (temporary) placeholder for the Real Subject Sometimes the Real Subject is not available For example: still under development The Stub Proxy can provide implementation of the Subject interface to varying degrees: 1. Just enough to compile without error 2. To allow rudimentary Subject functionality 3. To provide a complete emulation of the RealSubject 4

5 Stub Proxy – the Real Subject emulator SE-2811 Dr. Mark L. Hornick 5

6 The Protection Proxy controls access to a resource (the Real Subject) that is restricted by access rights The Protection Proxy provides predefined access to certain functionality implemented by the Real Subject, but Purposely limited by the access rights built into the Protection Proxy For example, the ability to query (but not modify) a protected database 6

7 The Protection Proxy limits access to the Real Subject SE-2811 Dr. Mark L. Hornick 7 ProtectionProxy

8 The Virtual Proxy controls access to a resource (the Real Subject) that is expensive to create or use The Virtual Proxy provides access to all of the functionality implemented by the Real Subject, but More quicky/cheaply Acts as a surrogate until the Real Subject becomes available 8

9 The Virtual Proxy provides all functionality of the Real Subject SE-2811 Dr. Mark L. Hornick 9 The Virtual Proxy controls access to the Real Subject, and is often responsible for creation of the Real Subject

10 The Remote Proxy provides local access to a remote resource (the Real Subject) The Remote Proxy handles the details of accessing a remote resource Remote Access can be implemented in many different ways, using different communication protocols Simple sockets Remote Method Invocation HTTP-based (e.g. web-services) … 10

11 The Remote Proxy allows the Client to think it is accessing a local resource SE-2811 Dr. Mark L. Hornick 11

12 Lab 9 Approach : RemoteProxy SE-2811 Dr. Mark L. Hornick 12

13 Java Remote Method Invocation is a framework with tools that auto-generate the Remote Proxy and Skeleton Invocation Handler SE-2811 Dr. Mark L. Hornick 13 Java RMI requires several dedicated ports, which may be blocked by firewalls

14 Web Services involve plugins and scripts running on a web server to invoke remote methods SE-2811 Dr. Mark L. Hornick 14 There are many different varieties of web service-based remoting. A primary advantage is that port 80 (the HTTP port) can be used.


Download ppt "The Proxy Pattern SE-2811 Dr. Mark L. Hornick 1. The Proxy Pattern has many variations, but in general: The Proxy Pattern uses an proxy object as a surrogate."

Similar presentations


Ads by Google