1 24 package org.riotfamily.riot.form.element; 25 26 import java.util.ArrayList ; 27 import java.util.Collection ; 28 import java.util.Iterator ; 29 30 import org.riotfamily.forms.element.select.OptionsModel; 31 import org.riotfamily.riot.security.AccessController; 32 33 37 public class RestrictedOptionsModel implements OptionsModel { 38 39 private OptionsModel source; 40 41 public RestrictedOptionsModel(OptionsModel source) { 42 this.source = source; 43 } 44 45 public Collection getOptionValues() { 46 Collection sourceOptions = source.getOptionValues(); 47 ArrayList result = new ArrayList (); 48 Iterator it = sourceOptions.iterator(); 49 while (it.hasNext()) { 50 Object option = it.next(); 51 if (AccessController.isGranted("use-option", option)) { 52 result.add(option); 53 } 54 } 55 return result; 56 } 57 58 } 59 | Popular Tags |