package org.infinispan.jcache.annotation; import static java.util.Collections.unmodifiableList; import java.util.List; /** * Contains all parameters metadata for a method annotated with a cache annotation. * * @author Kevin Pollet <kevin.pollet@serli.com> (C) 2011 SERLI * @author Galder ZamarreƱo */ public class AggregatedParameterMetaData { private final List<ParameterMetaData> parameters; private final List<ParameterMetaData> keyParameters; private final ParameterMetaData valueParameter; public AggregatedParameterMetaData(List<ParameterMetaData> parameters, List<ParameterMetaData> keyParameters, ParameterMetaData valueParameter) { this.parameters = unmodifiableList(parameters); this.keyParameters = unmodifiableList(keyParameters); this.valueParameter = valueParameter; } public List<ParameterMetaData> getParameters() { return parameters; } public List<ParameterMetaData> getKeyParameters() { return keyParameters; } public ParameterMetaData getValueParameter() { return valueParameter; } @Override public String toString() { return new StringBuilder() .append("AggregatedParameterMetaData{") .append("parameters=").append(parameters) .append(", keyParameters=").append(keyParameters) .append(", valueParameter=").append(valueParameter) .append('}') .toString(); } }