Table of Contents

Sablonul de proiectare Proxy

Descriere

Sablonul proxy ofera un mecanism de acces controlat la un obiect prin intermediul altui obiect.

Situatii in care sablonul proxy este util:

Diagrama UML

Exemplu

package isp.dp.proxy;
 
public class Client {
    public static void main(String[] args) {
        Proxy opsProxy = new Proxy();
        opsProxy.action2();
        opsProxy.action1();
    }
}
 
interface Operations{
    void action1();
    void action2();
}
 
class RealOperations implements Operations{
    @Override
    public void action1() {
        System.out.println("Do action 1");
    }
 
    @Override
    public void action2() {
        System.out.println("Do action 2");
    }
}
 
class Proxy implements Operations{
 
    private RealOperations real;
 
    Proxy(){
        real = new RealOperations();
    }
 
 
    @Override
    public void action1() {
        real.action1();
    }
 
    @Override
    public void action2() {
        real.action2();
    }
}

Rezultatul rularii codului:

Do action 2
Do action 1