1/*2 * $Id: PatternDefinitionResolver.java 823662 2009-10-09 18:48:03Z apetrelli $3 *4 * Licensed to the Apache Software Foundation (ASF) under one5 * or more contributor license agreements. See the NOTICE file6 * distributed with this work for additional information7 * regarding copyright ownership. The ASF licenses this file8 * to you under the Apache License, Version 2.0 (the9 * "License"); you may not use this file except in compliance10 * with the License. You may obtain a copy of the License at11 *12 * http://www.apache.org/licenses/LICENSE-2.013 *14 * Unless required by applicable law or agreed to in writing,15 * software distributed under the License is distributed on an16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY17 * KIND, either express or implied. See the License for the18 * specific language governing permissions and limitations19 * under the License.20 */2122package org.apache.tiles.definition.pattern;
2324import java.util.Map;
2526import org.apache.tiles.Definition;
2728/***29 * Resolves a definition starting from patterns stored in definition maps.30 *31 * @param <T> The type of the customization key.32 * @version $Rev: 823662 $ $Date: 2009-10-09 20:48:03 +0200 (ven, 09 ott 2009) $33 * @since 2.2.034 */35publicinterface PatternDefinitionResolver<T> {
3637/***38 * Stores definition patterns.39 *40 * @param localeDefsMap The map of definitions that may contain also41 * patterns.42 * @param customizationKey The customization key.43 * @return The map of the definitions not recognized as containing44 * definition patterns.45 * @since 2.2.146 */47 Map<String, Definition> storeDefinitionPatterns(Map<String, Definition> localeDefsMap,
48 T customizationKey);
4950/***51 * Resolves a definition searching in all patterns for the requested52 * customization key.53 *54 * @param name The name of the definition.55 * @param customizationKey The customization key.56 * @return The resolved definition.57 * @since 2.2.058 */59 Definition resolveDefinition(String name, T customizationKey);
60 }