kieker.webgui.service.impl.utility
Class Analysis

java.lang.Object
  extended by kieker.webgui.service.impl.utility.Analysis

public final class Analysis
extends Object

This class represents an initialized analysis within the web application. It encapsulates an AnalysisController instance, which have been loaded via the reflection API. It manages the access to the controller and handles the necessary display objects.

Author:
Nils Christian Ehmke

Constructor Summary
Analysis(String projectName, IProjectDAO projectDAO)
          Creates a new analysis using the given parameters.
 
Method Summary
 void emergencyShutdown()
          Initializes an emergency shutdown.
 kieker.analysis.AnalysisController.STATE getCurrentState()
          Delivers the current state of the analysis.
 Object getDisplay(String viewName, String displayName)
          This method delivers the display object of the (currently running) analysis.
 DisplayType getDisplayType(String viewName, String displayConnectorName)
          Delivers the type of the given display connector.
 Object[] getLogEntries()
          Delivers the log entries for the current analysis.
 void reloadDisplays(String projectName, IProjectDAO projectDAO)
          Reloads the displays of the given project.
 void start()
          Starts the analysis.
 void stop()
          Stops the analysis.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Analysis

public Analysis(String projectName,
                IProjectDAO projectDAO)
         throws AnalysisInitializationException,
                ProjectNotExistingException,
                IOException
Creates a new analysis using the given parameters.

Parameters:
projectName - The name of the project.
projectDAO - The data access object for the projects.
Throws:
AnalysisInitializationException - If an error occurred during the instantiation of the analysis.
IOException - If something went wrong while loading the file.
ProjectNotExistingException - If a project with the given name does not exist.
Method Detail

emergencyShutdown

public void emergencyShutdown()
Initializes an emergency shutdown.


reloadDisplays

public void reloadDisplays(String projectName,
                           IProjectDAO projectDAO)
                    throws AnalysisDisplayReloadException
Reloads the displays of the given project.

Parameters:
projectName - The name of the project.
projectDAO - The data access object for the projects.
Throws:
AnalysisDisplayReloadException - If something went wrong while reloading the displays.

start

public void start()
Starts the analysis.


stop

public void stop()
Stops the analysis.


getCurrentState

public kieker.analysis.AnalysisController.STATE getCurrentState()
Delivers the current state of the analysis.

Returns:
The state.

getDisplay

public Object getDisplay(String viewName,
                         String displayName)
This method delivers the display object of the (currently running) analysis. Technically it is an instance of AbstractDisplay, but in fact the project specific class loader has been used.

Parameters:
viewName - The name of the view.
displayName - The name of the display.
Returns:
A display object for the given parameters.

getLogEntries

public Object[] getLogEntries()
Delivers the log entries for the current analysis.

Returns:
An array containing the log entries (if available).

getDisplayType

public DisplayType getDisplayType(String viewName,
                                  String displayConnectorName)
Delivers the type of the given display connector.

Parameters:
viewName - The name of the view.
displayConnectorName - The name of the display connector.
Returns:
The type of the display connector.


Copyright © 2015. All rights reserved.