1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one 3 * or more contributor license agreements. See the NOTICE file 4 * distributed with this work for additional information 5 * regarding copyright ownership. The ASF licenses this file 6 * to you under the Apache License, Version 2.0 (the 7 * "License"); you may not use this file except in compliance 8 * with the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, 13 * software distributed under the License is distributed on an 14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 * KIND, either express or implied. See the License for the 16 * specific language governing permissions and limitations 17 * under the License. 18 */ 19 package org.apache.myfaces.config; 20 21 import org.apache.myfaces.config.impl.digester.elements.Converter; 22 23 import java.util.Iterator; 24 25 /** 26 * Subsumes several unmarshalled faces config objects and presents a simple interface 27 * to the combined configuration data. 28 * 29 * @author Manfred Geiler (latest modification by $Author: grantsmith $) 30 * @version $Revision: 472618 $ $Date: 2006-11-08 15:06:54 -0500 (Wed, 08 Nov 2006) $ 31 */ 32 public interface FacesConfigDispenser 33 { 34 /** 35 * Add another unmarshalled faces config object. 36 * @param facesConfig unmarshalled faces config object 37 */ 38 public void feed(Object facesConfig); 39 40 /** 41 * Add another ApplicationFactory class name 42 * @param factoryClassName a class name 43 */ 44 public void feedApplicationFactory(String factoryClassName); 45 46 /** 47 * Add another FacesContextFactory class name 48 * @param factoryClassName a class name 49 */ 50 public void feedFacesContextFactory(String factoryClassName); 51 52 /** 53 * Add another LifecycleFactory class name 54 * @param factoryClassName a class name 55 */ 56 public void feedLifecycleFactory(String factoryClassName); 57 58 /** 59 * Add another RenderKitFactory class name 60 * @param factoryClassName a class name 61 */ 62 public void feedRenderKitFactory(String factoryClassName); 63 64 65 66 /** @return Iterator over ApplicationFactory class names */ 67 public Iterator getApplicationFactoryIterator(); 68 69 /** @return Iterator over FacesContextFactory class names */ 70 public Iterator getFacesContextFactoryIterator(); 71 72 /** @return Iterator over LifecycleFactory class names */ 73 public Iterator getLifecycleFactoryIterator(); 74 75 /** @return Iterator over RenderKit factory class names */ 76 public Iterator getRenderKitFactoryIterator(); 77 78 79 /** @return Iterator over ActionListener class names (in reverse order!) */ 80 public Iterator getActionListenerIterator(); 81 82 /** @return the default render kit id */ 83 public String getDefaultRenderKitId(); 84 85 /** @return Iterator over message bundle names (in reverse order!) */ 86 public String getMessageBundle(); 87 88 /** @return Iterator over NavigationHandler class names */ 89 public Iterator getNavigationHandlerIterator(); 90 91 /** @return Iterator over ViewHandler class names */ 92 public Iterator getViewHandlerIterator(); 93 94 /** @return Iterator over StateManager class names*/ 95 public Iterator getStateManagerIterator(); 96 97 /** @return Iterator over PropertyResolver class names */ 98 public Iterator getPropertyResolverIterator(); 99 100 /** @return Iterator over VariableResolver class names */ 101 public Iterator getVariableResolverIterator(); 102 103 /** @return the default locale name */ 104 public String getDefaultLocale(); 105 106 /** @return Iterator over supported locale names */ 107 public Iterator getSupportedLocalesIterator(); 108 109 110 /** @return Iterator over all defined component types */ 111 public Iterator getComponentTypes(); 112 113 /** @return component class that belongs to the given component type */ 114 public String getComponentClass(String componentType); 115 116 117 /** @return Iterator over all defined converter ids */ 118 public Iterator getConverterIds(); 119 120 /** @return Iterator over all classes with an associated converter */ 121 public Iterator getConverterClasses(); 122 123 /** @return Iterator over the config classes for the converters */ 124 Iterator getConverterConfigurationByClassName(); 125 126 /** delivers a converter-configuration for one class-name */ 127 Converter getConverterConfiguration(String converterClassName); 128 129 /** @return converter class that belongs to the given converter id */ 130 public String getConverterClassById(String converterId); 131 132 /** @return converter class that is associated with the given class name */ 133 public String getConverterClassByClass(String className); 134 135 136 /** @return Iterator over all defined validator ids */ 137 public Iterator getValidatorIds(); 138 139 /** @return validator class name that belongs to the given validator id */ 140 public String getValidatorClass(String validatorId); 141 142 143 /** 144 * @return Iterator over {@link org.apache.myfaces.config.element.ManagedBean ManagedBean}s 145 */ 146 public Iterator getManagedBeans(); 147 148 /** 149 * @return Iterator over {@link org.apache.myfaces.config.element.NavigationRule NavigationRule}s 150 */ 151 public Iterator getNavigationRules(); 152 153 154 155 /** @return Iterator over all defined renderkit ids */ 156 public Iterator getRenderKitIds(); 157 158 /** @return renderkit class name for given renderkit id */ 159 public String getRenderKitClass(String renderKitId); 160 161 /** 162 * @return Iterator over {@link org.apache.myfaces.config.element.Renderer Renderer}s for the given renderKitId 163 */ 164 public Iterator getRenderers(String renderKitId); 165 166 167 /** 168 * @return Iterator over {@link javax.faces.event.PhaseListener} implementation class names 169 */ 170 public Iterator getLifecyclePhaseListeners(); 171 }