001package org.kuali.common.util.property.processor;
002
003import java.util.List;
004import java.util.Properties;
005
006import org.kuali.common.util.Assert;
007
008import com.google.common.collect.ImmutableList;
009
010public class ProcessorsProcessor implements PropertyProcessor {
011
012        public ProcessorsProcessor(PropertyProcessor... processors) {
013                this(ImmutableList.copyOf(processors));
014        }
015
016        public ProcessorsProcessor(List<PropertyProcessor> processors) {
017                Assert.noNulls(processors);
018                this.processors = ImmutableList.copyOf(processors);
019        }
020
021        private final List<PropertyProcessor> processors;
022
023        @Override
024        public void process(Properties properties) {
025                for (PropertyProcessor processor : processors) {
026                        processor.process(properties);
027                }
028        }
029
030        public List<PropertyProcessor> getProcessors() {
031                return processors;
032        }
033
034}