usermanagerproxy.java

来自「Jive是基于JSP/JAVA技术构架的一个大型BBS论坛系统,这是Jive论坛」· Java 代码 · 共 116 行

JAVA
116
字号
/** * $RCSfile: UserManagerProxy.java,v $ * $Revision: 1.2 $ * $Date: 2002/06/18 00:12:04 $ * * Copyright (C) 1999-2001 CoolServlets, Inc. All rights reserved. * * This software is the proprietary information of CoolServlets, Inc. * Use is subject to license terms. */package com.jivesoftware.forum;import java.util.Iterator;import java.util.Map;/** * Protection proxy for the UserManager class. It restricts access to * protected methods by throwing UnauthorizedExceptions when necessary. * * @see UserManager */public class UserManagerProxy implements UserManager {    private UserManager userManager;    private Authorization authorization;    private ForumPermissions permissions;    /**     * Creates a new UserManagerProxy.     */    public UserManagerProxy(UserManager userManager, Authorization            authorization, ForumPermissions permissions)    {        this.userManager = userManager;        this.authorization = authorization;        this.permissions = permissions;    }    public User createUser(String username, String password, String email)            throws UserAlreadyExistsException    {        return userManager.createUser(username, password, email);    }    public User createUser(String username, String password, String name,            String email, boolean nameVisible, boolean emailVisible,            Map properties) throws UserAlreadyExistsException    {         return userManager.createUser(username, password, name, email,                nameVisible, emailVisible, properties);    }    public User getUser(long userID) throws UserNotFoundException {        User user = userManager.getUser(userID);        ForumPermissions userPermissions = user.getPermissions(authorization);        ForumPermissions newPermissions =                new ForumPermissions(permissions, userPermissions);        return new UserProxy(user, authorization, newPermissions);    }    public User getUser(String username) throws UserNotFoundException {        User user = userManager.getUser(username);        ForumPermissions userPermissions = user.getPermissions(authorization);        ForumPermissions newPermissions =                new ForumPermissions(permissions, userPermissions);        return new UserProxy(user, authorization, newPermissions);    }    public long getUserID(String username) throws UserNotFoundException {        return userManager.getUserID(username);    }    public void deleteUser(User user) throws UnauthorizedException {        if (permissions.get(ForumPermissions.SYSTEM_ADMIN)                    || permissions.get(ForumPermissions.USER_ADMIN))        {            userManager.deleteUser(user);        }        else {            throw new UnauthorizedException();        }    }    public int getUserCount() {        return userManager.getUserCount();    }    public Iterator users() {        Iterator iterator = userManager.users();        return new IteratorProxy(JiveGlobals.USER, iterator, authorization,                permissions);    }    public Iterator users(int startIndex, int numResults) {        Iterator iterator = userManager.users(startIndex, numResults);        return new IteratorProxy(JiveGlobals.USER, iterator, authorization,                permissions);    }    public int userMessageCount(User user) {        return userManager.userMessageCount(user);    }    public Iterator userMessages(User user) {        Iterator iterator = userManager.userMessages(user);        return new IteratorProxy(JiveGlobals.MESSAGE, iterator, authorization,                permissions);    }    public Iterator userMessages(User user, int startIndex, int numResults) {        Iterator iterator = userManager.userMessages(user, startIndex, numResults);        return new IteratorProxy(JiveGlobals.MESSAGE, iterator, authorization,                permissions);    }}

⌨️ 快捷键说明

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