Package gov.nasa.worldwind
Class BasicFactory
- java.lang.Object
-
- gov.nasa.worldwind.BasicFactory
-
- All Implemented Interfaces:
Factory
- Direct Known Subclasses:
BasicElevationModelFactory
,BasicLayerFactory
public class BasicFactory extends java.lang.Object implements Factory
A basic implementation of theFactory
interface.
-
-
Constructor Summary
Constructors Constructor Description BasicFactory()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.lang.Object
create(java.lang.String factoryKey, java.lang.Object configSource)
Static method to create an object from a factory and configuration source.static java.lang.Object
create(java.lang.String factoryKey, java.lang.Object configSource, AVList params)
Static method to create an object from a factory, a configuration source, and an optional configuration parameter list.java.lang.Object
createFromCapabilities(java.lang.String capsFileName, AVList params)
Create an object such as a layer or elevation model given a local OGC capabilities document containing named layer descriptions.java.lang.Object
createFromConfigSource(java.lang.Object configSource, AVList params)
Creates an object from a general configuration source.protected java.lang.Object
doCreateFromCapabilities(OGCCapabilities caps, AVList params)
Implemented by subclasses to perform the actual object creation.protected java.lang.Object
doCreateFromCapabilities(WCS100Capabilities caps, AVList params)
Implemented by subclasses to perform the actual object creation.protected java.lang.Object
doCreateFromElement(org.w3c.dom.Element domElement, AVList params)
-
-
-
Method Detail
-
create
public static java.lang.Object create(java.lang.String factoryKey, java.lang.Object configSource)
Static method to create an object from a factory and configuration source.- Parameters:
factoryKey
- the key identifying the factory inConfiguration
.configSource
- the configuration source. May be any of the types listed forcreateFromConfigSource(Object, gov.nasa.worldwind.avlist.AVList)
- Returns:
- a new instance of the requested object.
- Throws:
java.lang.IllegalArgumentException
- if the factory key is null, or if the configuration source is null or an empty string.
-
create
public static java.lang.Object create(java.lang.String factoryKey, java.lang.Object configSource, AVList params)
Static method to create an object from a factory, a configuration source, and an optional configuration parameter list.- Parameters:
factoryKey
- the key identifying the factory inConfiguration
.configSource
- the configuration source. May be any of the types listed forcreateFromConfigSource(Object, gov.nasa.worldwind.avlist.AVList)
params
- key-value parameters to override or supplement the information provided in the specified configuration source. May be null.- Returns:
- a new instance of the requested object.
- Throws:
java.lang.IllegalArgumentException
- if the factory key is null, or if the configuration source is null or an empty string.
-
createFromConfigSource
public java.lang.Object createFromConfigSource(java.lang.Object configSource, AVList params)
Creates an object from a general configuration source. The source can be one of the following:URL
File
InputStream
Element
OGCCapabilities
WCS100Capabilities
String
holding a file name, a name of a resource on the classpath, or a string representation of a URL
- Specified by:
createFromConfigSource
in interfaceFactory
- Parameters:
configSource
- the configuration source. See above for supported types.params
- key-value parameters to override or supplement the information provided in the specified configuration source. May be null.- Returns:
- the new object.
- Throws:
java.lang.IllegalArgumentException
- if the configuration source is null or an empty string.WWUnrecognizedException
- if the source type is unrecognized.WWRuntimeException
- if object creation fails. The exception indicating the source of the failure is included as theThrowable.initCause(Throwable)
.
-
createFromCapabilities
public java.lang.Object createFromCapabilities(java.lang.String capsFileName, AVList params)
Create an object such as a layer or elevation model given a local OGC capabilities document containing named layer descriptions.- Parameters:
capsFileName
- the path to the capabilities file. The file must be either an absolute path or a relative path available on the classpath. The file contents must be a valid OGC capabilities document.params
- a list of configuration properties. These properties override any specified in the capabilities document. The list should contain theAVKey.LAYER_NAMES
property for services that define layer, indicating which named layers described in the capabilities document to create. If this argumet is null or contains no layers, the first named layer is used.- Returns:
- the requested object.
- Throws:
java.lang.IllegalArgumentException
- if the file name is null or empty.java.lang.IllegalStateException
- if the capabilites document contains no named layer definitions.WWRuntimeException
- if an error occurs while opening, reading or parsing the capabilities document. The exception indicating the source of the failure is included as theThrowable.initCause(Throwable)
.
-
doCreateFromCapabilities
protected java.lang.Object doCreateFromCapabilities(OGCCapabilities caps, AVList params)
Implemented by subclasses to perform the actual object creation. This default implementation always returns null.- Parameters:
caps
- the capabilities document.params
- a list of configuration properties. These properties override any specified in the capabilities document. The list should contain theAVKey.LAYER_NAMES
property for services that define layers, indicating which named layers described in the capabilities document to create. If this argumet is null or contains no layers, the first named layer is used.- Returns:
- the requested object.
-
doCreateFromCapabilities
protected java.lang.Object doCreateFromCapabilities(WCS100Capabilities caps, AVList params)
Implemented by subclasses to perform the actual object creation. This default implementation always returns null.- Parameters:
caps
- the capabilities document.params
- a list of configuration properties. These properties override any specified in the capabilities document.- Returns:
- the requested object.
-
doCreateFromElement
protected java.lang.Object doCreateFromElement(org.w3c.dom.Element domElement, AVList params) throws java.lang.Exception
- Throws:
java.lang.Exception
-
-