public class ComponentClassResolverImpl extends java.lang.Object implements ComponentClassResolver, InvalidationListener
| Constructor and Description |
|---|
ComponentClassResolverImpl(org.slf4j.Logger logger,
ClassNameLocator classNameLocator,
java.lang.String startPageName,
java.util.Collection<LibraryMapping> mappings) |
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
canonicalizePageName(java.lang.String pageName)
Returns the canonical form of a page name.
|
java.util.List<java.lang.String> |
getComponentNames()
Returns a list of all component names, in sorted order.
|
java.util.Map<java.lang.String,ControlledPackageType> |
getControlledPackageMapping()
Used to identify which packages are controlled packages (from which components are loaded).
|
java.util.Map<java.lang.String,java.lang.String> |
getFolderToPackageMapping()
A mapping from virtual folder name to a package name (used for converting classpath
Assets
to client URLs). |
java.util.Collection<LibraryMapping> |
getLibraryMappings()
Returns the library mappings.
|
java.lang.String |
getLibraryNameForClass(java.lang.String className)
Given a class name of a component class, returns the library name (as defined by a
contributed library name).
|
java.util.List<java.lang.String> |
getLibraryNames()
Returns the names of all libraries (as configured).
|
java.util.List<java.lang.String> |
getMixinNames()
Returns a list of all mixin names, in sorted order.
|
java.util.List<java.lang.String> |
getPageNames()
Returns a list of all page names, in sorted order.
|
boolean |
isPage(java.lang.String pageClassName)
Returns true if the class name is specifically a page class, and not a component, mixin or base class.
|
boolean |
isPageName(java.lang.String pageName)
For a particular path, determines if the path is a logical page name.
|
void |
objectWasInvalidated()
When the class loader is invalidated, clear any cached page names or component types.
|
java.lang.String |
resolveComponentTypeToClassName(java.lang.String componentType)
Converts a component type (a logical component name such as might be used inside a template or annotation) into a
fully qualified class name.
|
java.lang.String |
resolveMixinTypeToClassName(java.lang.String mixinType)
Converts a logical mixin type (as with component types) into a fully qualified class name.
|
java.lang.String |
resolvePageClassNameToPageName(java.lang.String pageClassName)
Converts a fully qualified page class name into a page name (often, for inclusion as part of the URI).
|
java.lang.String |
resolvePageNameToClassName(java.lang.String pageName)
Converts a logical page name (such as might be encoded into a URL) into a fully qualified class name.
|
public ComponentClassResolverImpl(org.slf4j.Logger logger, ClassNameLocator classNameLocator, @Symbol(value="tapestry.start-page-name") java.lang.String startPageName, java.util.Collection<LibraryMapping> mappings)
public java.util.Map<java.lang.String,ControlledPackageType> getControlledPackageMapping()
ComponentClassResolvergetControlledPackageMapping in interface ComponentClassResolverControlledPackageType.public void objectWasInvalidated()
objectWasInvalidated in interface InvalidationListenerpublic java.lang.String resolvePageNameToClassName(java.lang.String pageName)
ComponentClassResolverresolvePageNameToClassName in interface ComponentClassResolverpageName - page namepublic boolean isPageName(java.lang.String pageName)
ComponentClassResolverisPageName in interface ComponentClassResolverpageName - potential logical page namepublic boolean isPage(java.lang.String pageClassName)
ComponentClassResolverisPage in interface ComponentClassResolverpublic java.util.List<java.lang.String> getPageNames()
ComponentClassResolvergetPageNames in interface ComponentClassResolverpublic java.util.List<java.lang.String> getComponentNames()
ComponentClassResolvergetComponentNames in interface ComponentClassResolverpublic java.util.List<java.lang.String> getMixinNames()
ComponentClassResolvergetMixinNames in interface ComponentClassResolverpublic java.lang.String resolveComponentTypeToClassName(java.lang.String componentType)
ComponentClassResolverresolveComponentTypeToClassName in interface ComponentClassResolvercomponentType - a logical component typepublic java.lang.String resolveMixinTypeToClassName(java.lang.String mixinType)
ComponentClassResolverresolveMixinTypeToClassName in interface ComponentClassResolvermixinType - a logical mixin typepublic java.lang.String resolvePageClassNameToPageName(java.lang.String pageClassName)
ComponentClassResolverComponentClassResolver.resolvePageNameToClassName(String).resolvePageClassNameToPageName in interface ComponentClassResolverpageClassName - fully qualified name of a page classpublic java.lang.String canonicalizePageName(java.lang.String pageName)
ComponentClassResolvercanonicalizePageName in interface ComponentClassResolverpublic java.util.Map<java.lang.String,java.lang.String> getFolderToPackageMapping()
ComponentClassResolverAssets
to client URLs). This is derived from the contributed LibraryMappings.
It is allowed to contribute multiple root packages as a single folder name. In this case, the best common package
name is used. For example, if both com.example.main and com.example.extras is mapped to
folder "example", then the package mapping for "example" will be com.example.getFolderToPackageMapping in interface ComponentClassResolverClasspathAssetAliasManagerpublic java.util.List<java.lang.String> getLibraryNames()
ComponentClassResolvergetLibraryNames in interface ComponentClassResolverpublic java.lang.String getLibraryNameForClass(java.lang.String className)
ComponentClassResolvergetLibraryNameForClass in interface ComponentClassResolverpublic java.util.Collection<LibraryMapping> getLibraryMappings()
ComponentClassResolvergetLibraryMappings in interface ComponentClassResolver${project.version} - Copyright © 2003-2015 The Apache Software Foundation.