Tang.Factory
Constructor and Description |
---|
TangImpl() |
Modifier and Type | Method and Description |
---|---|
JavaClassHierarchy |
getDefaultClassHierarchy() |
JavaClassHierarchy |
getDefaultClassHierarchy(URL[] jars,
Class<? extends ExternalConstructor<?>>[] parameterParsers)
Get a default class hierarchy.
|
JavaConfigurationBuilder |
newConfigurationBuilder()
Create a new empty ConfigurationBuilder that is backed by the default
classloader.
|
JavaConfigurationBuilder |
newConfigurationBuilder(Class<? extends ExternalConstructor<?>>... parsers)
Create an empty JavaConfigurationBuilder that is capable of parsing
application-specific configuration values.
|
ConfigurationBuilder |
newConfigurationBuilder(ClassHierarchy ch)
Return a new ConfigurationBuilder that is backed by the provided
ClassHierarchy object.
|
JavaConfigurationBuilder |
newConfigurationBuilder(Configuration... confs)
Merge a set of configurations into a new JavaConfiurationBuilder.
|
JavaConfigurationBuilder |
newConfigurationBuilder(URL... jars)
Create a new ConfigurationBuilder that is backed by the default
classloader and the provided jars.
|
JavaConfigurationBuilder |
newConfigurationBuilder(URL[] jars,
Configuration[] confs,
Class<? extends ExternalConstructor<?>>[] parameterParsers)
Create a new JavaConfiguration builder that has additional jars,
incorporates existing configuration data and / or can parse
application-specific types.
|
Injector |
newInjector()
Returns an Injector based on an empty Configuration.
|
Injector |
newInjector(Configuration... confs)
Returns an Injector for the given Configurations.
|
Injector |
newInjector(Configuration confs)
Returns an Injector for the given Configuration.
|
static void |
reset()
Only for testing.
|
public TangImpl()
public static void reset()
public Injector newInjector(Configuration... confs) throws BindException
Tang
newInjector
in interface Tang
confs
- a configurationBindException
- If the confs conflict, a BindException will be thrown.public JavaConfigurationBuilder newConfigurationBuilder()
Tang
newConfigurationBuilder
in interface Tang
public ConfigurationBuilder newConfigurationBuilder(ClassHierarchy ch)
Tang
newConfigurationBuilder
in interface Tang
ch
- Any valid Tang ClassHierarchy, including ones derived from non-Java application binaries.public JavaConfigurationBuilder newConfigurationBuilder(URL... jars)
Tang
newConfigurationBuilder
in interface Tang
jars
- the locations of jar filespublic JavaConfigurationBuilder newConfigurationBuilder(Configuration... confs) throws BindException
Tang
The underlying ClassHierarchies and parameter parsers of the configurations will be checked for consistency. The returned configuration builder will be backed by a ClassHierachy that incorporates the classpath and parsers from all of the provided Configurations.
newConfigurationBuilder
in interface Tang
confs
- configurationsBindException
- if any of the configurations contain duplicated or
conflicting bindings, or if the backing ClassHierarchy objects conflict
in some way.public final JavaConfigurationBuilder newConfigurationBuilder(Class<? extends ExternalConstructor<?>>... parsers) throws BindException
Tang
newConfigurationBuilder
in interface Tang
parsers
- the parsers for parametersBindException
- if any of the configurations contain duplicated or
conflicting bindings, or if the backing ClassHierarchy objects conflict
in some way.public JavaConfigurationBuilder newConfigurationBuilder(URL[] jars, Configuration[] confs, Class<? extends ExternalConstructor<?>>[] parameterParsers) throws BindException
Tang
newConfigurationBuilder
in interface Tang
jars
- the locations of jar filesconfs
- configurationsparameterParsers
- the parsers for parametersBindException
public JavaClassHierarchy getDefaultClassHierarchy()
getDefaultClassHierarchy
in interface Tang
public JavaClassHierarchy getDefaultClassHierarchy(URL[] jars, Class<? extends ExternalConstructor<?>>[] parameterParsers)
Tang
getDefaultClassHierarchy
in interface Tang
jars
- the locations of jar filesparameterParsers
- the parserspublic Injector newInjector(Configuration confs)
Tang
newInjector
in interface Tang
confs
- a configurationpublic Injector newInjector()
Tang
newInjector
in interface Tang
Copyright © 2017 The Apache Software Foundation. All rights reserved.