public class LanguageManager extends Object
LanguageAdapter
instances.
Instances of this class are safe for concurrent access.
LanguageAdapter
Modifier and Type | Field and Description |
---|---|
static String |
ADAPTER_PRIORITY_ATTRIBUTE
The attribute prefix for adapter priorities.
|
static String |
CONTAINER_INCLUDE_COMMAND_ATTRIBUTE
The attribute name for the container include command.
|
static String |
DEFAULT_CONTAINER_INCLUDE_COMMAND
The default container include command.
|
static String |
SCRIPTURIAN_CACHE_PATH_DEFAULT
The default Scripturian cache path.
|
static String |
SCRIPTURIAN_CACHE_PATH_PROPERTY
The property name for the Scripturian cache path.
|
Constructor and Description |
---|
LanguageManager()
Adds all language adapters found in the
META-INF/services/com.threecrickets.scripturian.LanguageAdapter
resource using the current thread's context class loader. |
LanguageManager(ClassLoader classLoader)
Adds all language adapters found in the
META-INF/services/com.threecrickets.scripturian.LanguageAdapter
resource. |
Modifier and Type | Method and Description |
---|---|
void |
addAdapter(LanguageAdapter adapter)
Adds a language adapter to this manager.
|
LanguageAdapter |
getAdapterByExtension(String documentName,
String defaultExtension)
A language adapter for a document name according to its filename
extension.
|
LanguageAdapter |
getAdapterByName(String name)
Gets an adapter by its name.
|
LanguageAdapter |
getAdapterByTag(String tag)
A language adapter for a scriptlet tag.
|
Set<LanguageAdapter> |
getAdapters()
All language adapters.
|
ConcurrentMap<String,Object> |
getAttributes()
General-purpose attributes for this language manager.
|
Properties |
getAttributesAsProperties(String prefix)
Find only those attributes with this prefix.
|
static File |
getCachePath()
The base path for language adapter caches.
|
String |
getLanguageTagByExtension(String documentName,
String defaultExtension,
String defaultTag)
A language adapter for a document name according to its filename
extension.
|
String |
toString() |
public static final String SCRIPTURIAN_CACHE_PATH_PROPERTY
getCachePath()
,
Constant Field Valuespublic static final String SCRIPTURIAN_CACHE_PATH_DEFAULT
getCachePath()
,
Constant Field Valuespublic static final String CONTAINER_INCLUDE_COMMAND_ATTRIBUTE
public static final String ADAPTER_PRIORITY_ATTRIBUTE
public static final String DEFAULT_CONTAINER_INCLUDE_COMMAND
public LanguageManager()
META-INF/services/com.threecrickets.scripturian.LanguageAdapter
resource using the current thread's context class loader.ServiceLoader
public LanguageManager(ClassLoader classLoader)
META-INF/services/com.threecrickets.scripturian.LanguageAdapter
resource.classLoader
- The class loaderServiceLoader
public static File getCachePath()
public ConcurrentMap<String,Object> getAttributes()
public Properties getAttributesAsProperties(String prefix)
prefix
- The attribute prefixpublic Set<LanguageAdapter> getAdapters()
addAdapter(LanguageAdapter)
public LanguageAdapter getAdapterByName(String name) throws ParsingException
name
- The nameParsingException
- In case of a parsing errorLanguageAdapter.NAME
public LanguageAdapter getAdapterByTag(String tag) throws ParsingException
tag
- The scriptlet tagParsingException
- In case of a parsing errorpublic LanguageAdapter getAdapterByExtension(String documentName, String defaultExtension) throws ParsingException
documentName
- The document namedefaultExtension
- The default extension to assume in case the document name does not
have oneParsingException
- In case of a parsing errorpublic String getLanguageTagByExtension(String documentName, String defaultExtension, String defaultTag) throws ParsingException
documentName
- The document namedefaultExtension
- The default extension to assume in case the document name does not
have onedefaultTag
- The language tag to use in case a language adapter wasn't found
according to the extensionParsingException
- In case of a parsing errorpublic void addAdapter(LanguageAdapter adapter)
adapter
- The language adapterCopyright © 2009-2015 Three Crickets LLC.