package com.framsticks.params.types; import com.framsticks.params.AccessInterface; import com.framsticks.params.Param; import com.framsticks.util.Strings; /** * @author Piotr Sniegowski */ public abstract class CompositeParam extends Param { protected final String containedTypeName; public CompositeParam(String containedTypeName) { this.containedTypeName = Strings.notEmpty(containedTypeName) ? containedTypeName : null; } public boolean isMatchingContainedName(String name) { assert name != null; if (containedTypeName == null) { return true; } return name.equals(containedTypeName); } public String getContainedTypeName() { return containedTypeName; } public abstract AccessInterface prepareAccessInterface(AccessInterface access); public abstract String computeAccessId(); }