proxy.java

来自「《Java与模式》一书的源代码」· Java 代码 · 共 47 行

JAVA
47
字号
package com.javapatterns.proxy.smartproxy;

public class Proxy implements Searcher
{

    private RealSearcher searcher = null;
    private UsageLogger usageLogger = null;
    private AccessValidator accessValidator = null;

    public Proxy()
    {
        searcher = new RealSearcher();
    }

    public String doSearch(String userId, String keyValue)
    {
        if (checkAccess(userId))
        {
            String result = searcher.doSearch(null, keyValue);
            logUsage(userId);

            return result;
        }
        else
        {
            return null;
        }
    }

    private boolean checkAccess(String userId)
    {
        accessValidator = new AccessValidator();

        return accessValidator.vaidateUser(userId);
    }

    private void logUsage(String userId)
    {
        UsageLogger logger = new UsageLogger();

        logger.setUserId(userId);

        logger.save();
    }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?