Main Page | Class Hierarchy | Class List | Class Members

kddml.Operators.AlgorithmFactory Class Reference

Inheritance diagram for kddml.Operators.AlgorithmFactory:

kddml.Operators.AlgorithmFactoryEnum List of all members.

Public Member Functions

String toString ()
String[] algorithms ()
String getPackageName ()
String getParentNode ()
boolean isSupported (String alg_name)
AlgorithmSettingsTask newSettingsInstance (String alg_name)
AlgorithmResolverTask newResolverInstance (String alg_name)

Static Public Member Functions

static AlgorithmFactory[] list ()
static AlgorithmFactory getAlgorithmClass (String parent_name)

Static Public Attributes

static final AlgorithmFactory RDA_ALGORITHMS
static final AlgorithmFactory TREE_ALGORITHMS
static final AlgorithmFactory CLUSTERING_ALGORITHMS
static final AlgorithmFactory SEQUENCE_ALGORITHMS
static final AlgorithmFactory DISCRETIZATION_ALGORITHMS
static final AlgorithmFactory NORMALIZATION_ALGORITHMS
static final AlgorithmFactory SAMPLING_ALGORITHMS
static final AlgorithmFactory REWRITING_ALGORITHMS

Protected Member Functions

 AlgorithmFactory (String name, String[] alg_list, String parent_op, String package_name)

Detailed Description

A factory class that produces KDDML algorithms. This class allows to test if an algorithm is supported. Checking is by name, comparing the XML tag related to the algorithm with the class name implementing it. More precisely, a KDDML algorithm is supported for a class of algorithms if there are two Java classes in the correspective package. The first one, named "algorithm name"_SETTINGS (e.g. APRIORI_SETTINGS), contains the parameters specification about the algorithm; this class must implements the interface AlgorithmSettingsTask. The second one, name "algorithm name"_RESOLVER (e.g. APRIORI_RESOLVER), contains the physical implementation of the algorithm; this class must implements the interface AlgorithmResolverTask.
The fragment of code below allows to get all supported KDDML algorthm and prints out the entire list:
....
AlgorithmFactory[] all = AlgorithmFactory.list();
for (int i=0; i<all.length; i++) {
   System.out.println(all[i].getName() +": "+ all[i].toString());
}
....

Title: KDDML

Description: Knowledge Discovery in Database Environment

Copyright: Copyright (c) 2003-2005

Company: Universita' di Pisa - Dipartimento di Informatica

Author:
Andrea Romei (romei@di.unipi.it)
Version:
2.0.16


Constructor & Destructor Documentation

kddml.Operators.AlgorithmFactory.AlgorithmFactory String  name,
String[]  alg_list,
String  parent_op,
String  package_name
[protected]
 

Constructor.

Parameters:
name String the name of the algorithm class.
alg_list String[] the list of supported algorithms.
parent_op String the XML tag name of the operator supporting the list of algorithms.
package_name String the package name that allows to locate the algorithm physical classes SETTINGS and RESOLVER.


Member Function Documentation

String kddml.Operators.AlgorithmFactory.toString  ) 
 

Returns the list of supported algorithms for this class of algorithms as string.

Returns:
String

String [] kddml.Operators.AlgorithmFactory.algorithms  ) 
 

Returns the list of supported algorithms for this class of algorithms as array of strings.

Returns:
String[]

String kddml.Operators.AlgorithmFactory.getPackageName  ) 
 

Returns the package name that allows to locate the algorithm physical classes SETTINGS and RESOLVER.

Returns:
String

String kddml.Operators.AlgorithmFactory.getParentNode  ) 
 

Returns the XML tag name of the operator supporting the list of algorithms.

Returns:
String

static AlgorithmFactory [] kddml.Operators.AlgorithmFactory.list  )  [static]
 

Returns the list of all supported classes of algorithms.

Returns:
AlgorithmFactory[]

static AlgorithmFactory kddml.Operators.AlgorithmFactory.getAlgorithmClass String  parent_name  )  [static]
 

Returns the class of algorithm given the XML tag name of the operator supporting this algorithms. Returns null if no class is found for parent_name.

Parameters:
parent_name String the XML tag name of the operator supporting the output class
Returns:
AlgorithmFactory

boolean kddml.Operators.AlgorithmFactory.isSupported String  alg_name  ) 
 

Tests if the input algorithm is supported by the system. A KDDML algorithm is supported for a class of algorithms if there are two Java classes in the correspective package. The first one, named "algorithm name"_SETTINGS (e.g. APRIORI_SETTINGS), contains the parameters specification about the algorithm; this class must implements the interface AlgorithmSettingsTask. The second one, name "algorithm name"_RESOLVER (e.g. APRIORI_RESOLVER), contains the physical implementation of the algorithm; this class must implements the interface AlgorithmResolverTask.
Algorithm name must also be included in the list of supported algorithms returned by the method algorithms().

Parameters:
alg_name String
Returns:
boolean

AlgorithmSettingsTask kddml.Operators.AlgorithmFactory.newSettingsInstance String  alg_name  ) 
 

Creates a settings instance of the algorithm. Returns null if the algorithm is not supported, i.e., the method isSupported(alg_name) returns false.

Parameters:
alg_name String the name of the algorithm.
Returns:
AlgorithmSettingsTask the settings instance of the algorithm. Can be null.

AlgorithmResolverTask kddml.Operators.AlgorithmFactory.newResolverInstance String  alg_name  ) 
 

Creates a resolver instance of the algorithm. Returns null if the algorithm is not supported, i.e., the method isSupported(alg_name) returns false.

Parameters:
alg_name String the name of the algorithm.
Returns:
AlgorithmResolverTask the resolver instance of the algorithm. Can be null.


Member Data Documentation

final AlgorithmFactory kddml.Operators.AlgorithmFactory.RDA_ALGORITHMS [static]
 

Initial value:

 new AlgorithmFactory(
      "AssociationAlgs",
      RDA_ALGORITHMS_LIST,
      "RDA_MINER",
      "kddml.Operators.DataMining.AssociationAlgorithms")
Factory class that produces KDDML association algorithms.

final AlgorithmFactory kddml.Operators.AlgorithmFactory.TREE_ALGORITHMS [static]
 

Initial value:

 new AlgorithmFactory(
      "ClassificationAlgs",
      CLASSIFICATION_ALGORITHMS_LIST,
      "TREE_MINER",
      "kddml.Operators.DataMining.ClassificationAlgorithms")
Factory class that produces KDDML tree classification algorithms.

final AlgorithmFactory kddml.Operators.AlgorithmFactory.CLUSTERING_ALGORITHMS [static]
 

Initial value:

 new
      AlgorithmFactory(
          "ClusteringAlgs",
          CLUSTERING_ALGORITHMS_LIST,
          "CLUSTER_MINER",
          "kddml.Operators.DataMining.ClusteringAlgorithms")
Factory class that produces KDDML clustering algorithms.

final AlgorithmFactory kddml.Operators.AlgorithmFactory.SEQUENCE_ALGORITHMS [static]
 

Initial value:

 new
      AlgorithmFactory(
          "SequenceAlgs",
          SEQUENCE_ALGORITHMS_LIST,
          "SEQUENCE_MINER",
          "kddml.Operators.DataMining.SequenceAlgorithms")
Factory class that produces KDDML sequential patterns algorithms.

final AlgorithmFactory kddml.Operators.AlgorithmFactory.DISCRETIZATION_ALGORITHMS [static]
 

Initial value:

 new
      AlgorithmFactory(
          "DiscretizationAlgs",
          DISCRETIZATION_ALGORITHMS_LIST,
          "PP_NUMERIC_DISCRETIZATION",
          "kddml.Operators.Preprocessing.DiscretizationAlgorithms")
Factory class that produces KDDML discretization algorithms.

final AlgorithmFactory kddml.Operators.AlgorithmFactory.NORMALIZATION_ALGORITHMS [static]
 

Initial value:

 new
      AlgorithmFactory(
          "NormalizationAlgs",
          NORMALIZATION_ALGORITHMS_LIST,
          "PP_NORMALIZATION",
          "kddml.Operators.Preprocessing.NormalizationAlgorithms")
Factory class that produces KDDML normalization algorithms.

final AlgorithmFactory kddml.Operators.AlgorithmFactory.SAMPLING_ALGORITHMS [static]
 

Initial value:

 new
      AlgorithmFactory(
          "SamplingAlgs",
          SAMPLING_ALGORITHMS_LIST,
          "PP_SAMPLING",
          "kddml.Operators.Preprocessing.SamplingAlgorithms")
Factory class that produces KDDML sampling algorithms.

final AlgorithmFactory kddml.Operators.AlgorithmFactory.REWRITING_ALGORITHMS [static]
 

Initial value:

 new
      AlgorithmFactory(
          "RewritingAlgs",
          REWRITING_ALGORITHMS_LIST,
          "PP_REWRITING",
          "kddml.Operators.Preprocessing.RewritingAlgorithms")
Factory class that produces KDDML rewriting algorithms.


Generated on Thu Feb 23 13:04:46 2006 for kddml by  doxygen 1.4.3