01: /*
02: * NEMESIS-FORUM.
03: * Copyright (C) 2002 David Laurent(lithium2@free.fr). All rights reserved.
04: *
05: * Copyright (c) 2000 The Apache Software Foundation. All rights reserved.
06: *
07: * Copyright (C) 2001 Yasna.com. All rights reserved.
08: *
09: * Copyright (C) 2000 CoolServlets.com. All rights reserved.
10: *
11: * NEMESIS-FORUM. is free software; you can redistribute it and/or
12: * modify it under the terms of the Apache Software License, Version 1.1,
13: * or (at your option) any later version.
14: *
15: * NEMESIS-FORUM core framework, NEMESIS-FORUM backoffice, NEMESIS-FORUM frontoffice
16: * application are parts of NEMESIS-FORUM and are distributed under
17: * same terms of licence.
18: *
19: *
20: * NEMESIS-FORUM includes software developed by the Apache Software Foundation (http://www.apache.org/)
21: * and software developed by CoolServlets.com (http://www.coolservlets.com).
22: * and software developed by Yasna.com (http://www.yasna.com).
23: *
24: */
25: package org.nemesis.forum.proxy;
26:
27: import java.util.Iterator;
28: import java.util.NoSuchElementException;
29:
30: import org.nemesis.forum.Authorization;
31: import org.nemesis.forum.ForumPermissions;
32: import org.nemesis.forum.Group;
33:
34: /**
35: * Protection proxy for Group iterators.
36: */
37: class GroupIteratorProxy extends IteratorProxy {
38:
39: public GroupIteratorProxy(Iterator iterator,
40: Authorization authorization, ForumPermissions permissions) {
41: super (iterator, authorization, permissions);
42: }
43:
44: public Object next() throws NoSuchElementException {
45: Group group = (Group) iterator.next();
46: ForumPermissions groupPermissions = group
47: .getPermissions(authorization);
48: ForumPermissions newPermissions = new ForumPermissions(
49: permissions, groupPermissions);
50: return new GroupProxy(group, authorization, newPermissions);
51: }
52: }
|