org.pentaho.platform.plugin.services.pluginmgr
Class PluginSettings

java.lang.Object
  extended by org.pentaho.platform.plugin.services.pluginmgr.PluginSettings
All Implemented Interfaces:
IPluginSettings

public class PluginSettings
extends Object
implements IPluginSettings

TODO migrate this to use an implementation of IPentahoObjectFactory to create and manage scope of objects.

See Also:
IPentahoObjectFactory, WebSpringPentahoObjectFactory, StandaloneSpringPentahoObjectFactory

Constructor Summary
PluginSettings()
           
 
Method Summary
 IContentGenerator getContentGenerator(String id, IPentahoSession session)
           
 IContentGenerator getContentGeneratorForType(String type, IPentahoSession session)
           
static String getContentGeneratorIdForType(String type)
           
 String getContentGeneratorIdForType(String type, IPentahoSession session)
           
 IContentGeneratorInfo getContentGeneratorInfo(String id, IPentahoSession session)
           
 List<IObjectCreator> getContentGeneratorsForType(String type, IPentahoSession session)
          Returns a list of object factories that can be used to create content generators for a given type.
static String getContentGeneratorTitleForType(String type)
           
 String getContentGeneratorTitleForType(String type, IPentahoSession session)
           
static String getContentGeneratorUrlForType(String type)
           
 String getContentGeneratorUrlForType(String type, IPentahoSession session)
           
 IContentInfo getContentInfoFromExtension(String extension, IPentahoSession session)
           
 Set<String> getContentTypes()
          Returns a set of the content types that the registered plugins can process.
 IContentGeneratorInfo getDefaultContentGeneratorInfoForType(String type, IPentahoSession session)
           
static PluginSettings getInstance()
           
 List<IMenuCustomization> getMenuCustomizations()
          Returns a list of menu customization objects.
static void setSession(IPentahoSession session)
           
 boolean updatePluginSettings(IPentahoSession session, List<String> comments)
          Causes the plugin settings object to re-register all of the plugins that are defined in pentaho-solutions/system/./plugin.xml files
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PluginSettings

public PluginSettings()
Method Detail

getContentTypes

public Set<String> getContentTypes()
Description copied from interface: IPluginSettings
Returns a set of the content types that the registered plugins can process. If the plugin is intended to handle the processing of a document in the solution repository the types need to match with the filename extension.

Specified by:
getContentTypes in interface IPluginSettings
Returns:

getContentInfoFromExtension

public IContentInfo getContentInfoFromExtension(String extension,
                                                IPentahoSession session)
Specified by:
getContentInfoFromExtension in interface IPluginSettings

getContentGeneratorsForType

public List<IObjectCreator> getContentGeneratorsForType(String type,
                                                        IPentahoSession session)
Description copied from interface: IPluginSettings
Returns a list of object factories that can be used to create content generators for a given type. In most cases there will only be one content generator for any one type.

Specified by:
getContentGeneratorsForType in interface IPluginSettings
session - A session used for storing objects from session-scoped factories
Returns:
List of IObjectCreator objects

getInstance

public static PluginSettings getInstance()

getContentGenerator

public IContentGenerator getContentGenerator(String id,
                                             IPentahoSession session)
                                      throws ObjectFactoryException
Specified by:
getContentGenerator in interface IPluginSettings
Throws:
ObjectFactoryException

getContentGeneratorInfo

public IContentGeneratorInfo getContentGeneratorInfo(String id,
                                                     IPentahoSession session)
Specified by:
getContentGeneratorInfo in interface IPluginSettings

getDefaultContentGeneratorInfoForType

public IContentGeneratorInfo getDefaultContentGeneratorInfoForType(String type,
                                                                   IPentahoSession session)
Specified by:
getDefaultContentGeneratorInfoForType in interface IPluginSettings

getContentGeneratorIdForType

public String getContentGeneratorIdForType(String type,
                                           IPentahoSession session)
Specified by:
getContentGeneratorIdForType in interface IPluginSettings

getContentGeneratorTitleForType

public String getContentGeneratorTitleForType(String type,
                                              IPentahoSession session)
Specified by:
getContentGeneratorTitleForType in interface IPluginSettings

getContentGeneratorUrlForType

public String getContentGeneratorUrlForType(String type,
                                            IPentahoSession session)
Specified by:
getContentGeneratorUrlForType in interface IPluginSettings

getContentGeneratorForType

public IContentGenerator getContentGeneratorForType(String type,
                                                    IPentahoSession session)
                                             throws ObjectFactoryException
Specified by:
getContentGeneratorForType in interface IPluginSettings
Throws:
ObjectFactoryException

getContentGeneratorIdForType

public static String getContentGeneratorIdForType(String type)

getContentGeneratorTitleForType

public static String getContentGeneratorTitleForType(String type)

getContentGeneratorUrlForType

public static String getContentGeneratorUrlForType(String type)

setSession

public static void setSession(IPentahoSession session)

getMenuCustomizations

public List<IMenuCustomization> getMenuCustomizations()
Description copied from interface: IPluginSettings
Returns a list of menu customization objects. Objects in this list will be org.pentaho.ui.xul.IMenuCustomization objects

Specified by:
getMenuCustomizations in interface IPluginSettings
Returns:
List of IMenuCustomization objects

updatePluginSettings

public boolean updatePluginSettings(IPentahoSession session,
                                    List<String> comments)
Description copied from interface: IPluginSettings
Causes the plugin settings object to re-register all of the plugins that are defined in pentaho-solutions/system/./plugin.xml files

Specified by:
updatePluginSettings in interface IPluginSettings
Parameters:
session - A session to be used for getting the plugin.xml files
comments - A list of strings that readable messages will be added to as the plugins are processed.
Returns:
true if no errors were encountered