## com.bbn.openmap.proj
Class ProjectionFactoryLoader

    java.lang.Object
      com.bbn.openmap.MapHandlerChild
          com.bbn.openmap.OMComponent
              com.bbn.openmap.proj.ProjectionFactoryLoader

All Implemented Interfaces:
  java.beans.beancontext.BeanContextChild, java.beans.beancontext.BeanContextMembershipListener, java.util.EventListener, LightMapHandlerChild, PropertyConsumer

public class ProjectionFactoryLoader
extends OMComponent

All this class does is add the instance of the ProjectionFactory to the MapHandler. This class needs to be added to the MapHandler in order for a ProjectionFactory to be created and the ProjectionLoaders to be recognized by the application. To keep multiple ProjectionLoaders out of the openmap.components property for readability, this class has a property that lets you set which ProjectionLoaders are created and added to the application:

      # For a projFactoryLoader marker name added to the openmap.components property.
      projFactoryLoader.class=com.bbn.openmap.proj.ProjectionFactoryLoader
      projFactoryLoader.class=com.bbn.openmap.proj.ProjectionFactoryLoader
      projFactoryLoader.projectionLoaders=mercatorloader cadrgloader ortholoader llxyloader gnomonicloader
      projFactoryLoader.mercatorloader.class=com.bbn.openmap.proj.MercatorLoader
      projFactoryLoader.cadrgloader.class=com.bbn.openmap.proj.CADRGLoader
      projFactoryLoader.ortholoader.class=com.bbn.openmap.proj.OrthographicLoader
      projFactoryLoader.llxyloader.class=com.bbn.openmap.proj.LLXYLoader
      projFactoryLoader.gnomonicloader.class=com.bbn.openmap.proj.GnomonicLoader

The above properties create 5 ProjectionLoaders which are added to the MapHandler, along with the ProjectionFactory singleton instance. The ProjectionLoader may have additional properties which can be set as well, like their pretty GUI name and description.

Field Summary
`protected java.util.Vector` `loaders`
`static java.lang.String` `ProjectionLoadersProperty`

Fields inherited from class com.bbn.openmap.OMComponent
`i18n, propertyPrefix`

Fields inherited from class com.bbn.openmap.MapHandlerChild
`beanContextChildSupport`

Fields inherited from interface com.bbn.openmap.PropertyConsumer
`EditorProperty, initPropertiesProperty, LabelEditorProperty, ScopedEditorProperty`

Constructor Summary
`ProjectionFactoryLoader()`

Method Summary
`java.util.Properties` `getProperties(java.util.Properties props)` Create the properties to create ProjectionLoaders that this loader created.
`java.util.Properties` `getPropertyInfo(java.util.Properties props)` Create the property information reflecting those used to create loaders.
`void` `setBeanContext(java.beans.beancontext.BeanContext in_bc)` When the BeanContext (MapHandler) gets set, the singleton instance of the ProjectionFactory is created (asked for) and added to the BeanContext.
`void` `setProperties(java.lang.String prefix, java.util.Properties props)` Check the properties for those to create ProjectionLoaders.

Methods inherited from class com.bbn.openmap.OMComponent
`getPropertyPrefix, setProperties, setPropertyPrefix`

Methods inherited from class com.bbn.openmap.MapHandlerChild
`addPropertyChangeListener, addVetoableChangeListener, childrenAdded, childrenRemoved, findAndInit, findAndInit, findAndUndo, firePropertyChange, fireVetoableChange, getBeanContext, removePropertyChangeListener, removeVetoableChangeListener`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### loaders

    protected java.util.Vector loaders

### ProjectionLoadersProperty

    public static final java.lang.String ProjectionLoadersProperty

See Also:
  Constant Field Values

Constructor Detail

### ProjectionFactoryLoader

    public ProjectionFactoryLoader()

Method Detail

### setBeanContext

    public void setBeanContext(java.beans.beancontext.BeanContext in_bc)
                        throws java.beans.PropertyVetoException

  When the BeanContext (MapHandler) gets set, the singleton instance of the ProjectionFactory is created (asked for) and added to the BeanContext.

  Specified by:
    `setBeanContext` in interface `java.beans.beancontext.BeanContextChild`
  Overrides:
    `setBeanContext` in class `MapHandlerChild`
  Throws:
    `java.beans.PropertyVetoException`

### setProperties

    public void setProperties(java.lang.String prefix,
                              java.util.Properties props)

  Check the properties for those to create ProjectionLoaders.

  Specified by:
    `setProperties` in interface `PropertyConsumer`
  Overrides:
    `setProperties` in class `OMComponent`
  Parameters:
    `prefix` - the token to prefix the property names
    `props` - the `Properties` object

### getProperties

    public java.util.Properties getProperties(java.util.Properties props)

  Create the properties to create ProjectionLoaders that this loader created.

  Specified by:
    `getProperties` in interface `PropertyConsumer`
  Overrides:
    `getProperties` in class `OMComponent`
  Parameters:
    `props` - a Properties object to load the PropertyConsumer properties into. If props equals null, then a new Properties object should be created.
  Returns:
    Properties object containing PropertyConsumer property values. If getList was not null, this should equal getList. Otherwise, it should be the Properties object created by the PropertyConsumer.

### getPropertyInfo

    public java.util.Properties getPropertyInfo(java.util.Properties props)

  Create the property information reflecting those used to create loaders.

  Specified by:
    `getPropertyInfo` in interface `PropertyConsumer`
  Overrides:
    `getPropertyInfo` in class `OMComponent`
  Parameters:
    `props` - a Properties object to load the PropertyConsumer properties into. If getList equals null, then a new Properties object should be created.
  Returns:
    Properties object containing PropertyConsumer property values. If getList was not null, this should equal getList. Otherwise, it should be the Properties object created by the PropertyConsumer.

Copyright (C) BBNT Solutions LLC; See http://openmap.bbn.com/ for details