kieker.webgui.service.impl.utility
Class AnalysisManagementService

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

@Service
public final class AnalysisManagementService
extends Object

This manager is a service which is responsible for the currently used and running instances of AnalysisController. It provides methods to check the states of analyses, instantiate, start, and to stop them.

Author:
Nils Christian Ehmke

Constructor Summary
AnalysisManagementService()
          Default constructor.
 
Method Summary
 void cleanAnalysis(String projectName)
          This method cleans the analysis for the given project.
 void emergencyShutdown(String projectName)
          Initializes an emergency shutdown of the analysis.
 kieker.analysis.AnalysisController.STATE getCurrentState(String projectName)
          This method delivers the current state of the analysis, if it is available, null otherwise.
 Object getDisplay(String projectName, String viewName, String displayName)
          This method delivers the display object of the (currently running) analysis for the given project and the given parameters.
 DisplayType getDisplayType(String projectName, String viewName, String displayConnectorName)
          Delivers the type of the given display connector.
 Object[] getLogEntries(String projectName)
          This method delivers the available log entries of the analysis controller of the given project.
 void initializeAnalysis(String projectName)
          This method initializes the analysis for the given project.
 void reloadDisplays(String projectName)
          Reloads the displays of the given project.
 void startAnalysis(String projectName)
          This method starts the analysis for the given project.
 void stopAnalysis(String projectName)
          This method stops the analysis for the given project.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnalysisManagementService

public AnalysisManagementService()
Default constructor. Do not use this constructor. This bean is Spring managed.

Method Detail

initializeAnalysis

public void initializeAnalysis(String projectName)
                        throws InvalidAnalysisStateException,
                               AnalysisInitializationException,
                               ProjectNotExistingException,
                               IOException
This method initializes the analysis for the given project.

Parameters:
projectName - The name of the project to be initialized.
Throws:
AnalysisInitializationException - If an error occurred during the initialization of the analysis.
InvalidAnalysisStateException - If the analysis is in an invalid state to be initialized.
IOException - If something went wrong while loading the file.
ProjectNotExistingException - If a project with the given name does not exist.

reloadDisplays

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

Parameters:
projectName - The name of the project.
Throws:
AnalysisDisplayReloadException - If something went wrong while reloading the displays.
InvalidAnalysisStateException - If the analysis is in an invalid state for the operation.

cleanAnalysis

public void cleanAnalysis(String projectName)
                   throws InvalidAnalysisStateException
This method cleans the analysis for the given project.

Parameters:
projectName - The name of the project to be cleaned.
Throws:
InvalidAnalysisStateException - If the analysis is in an invalid state to be cleaned.

startAnalysis

public void startAnalysis(String projectName)
                   throws InvalidAnalysisStateException
This method starts the analysis for the given project.

Parameters:
projectName - The name of the project to be started.
Throws:
InvalidAnalysisStateException - If the analysis is in an invalid state to be started.

stopAnalysis

public void stopAnalysis(String projectName)
                  throws InvalidAnalysisStateException
This method stops the analysis for the given project.

Parameters:
projectName - The name of the project to be stopped.
Throws:
InvalidAnalysisStateException - If the analysis is in an invalid state to be stopped.

emergencyShutdown

public void emergencyShutdown(String projectName)
                       throws InvalidAnalysisStateException
Initializes an emergency shutdown of the analysis.

Parameters:
projectName - The name of the project.
Throws:
InvalidAnalysisStateException - If the analysis is in an invalid state for the operation.

getLogEntries

public Object[] getLogEntries(String projectName)
                       throws InvalidAnalysisStateException
This method delivers the available log entries of the analysis controller of the given project.

Parameters:
projectName - The name of the project.
Returns:
An array containing the entries of the log.
Throws:
InvalidAnalysisStateException - If the analysis is in an invalid state to deliver the entries.

getDisplay

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

Parameters:
projectName - The name of the project.
viewName - The name of the view.
displayName - The name of the display.
Returns:
A display object for the given parameters.
Throws:
InvalidAnalysisStateException - If the analysis is in an invalid state to deliver the displays.

getCurrentState

public kieker.analysis.AnalysisController.STATE getCurrentState(String projectName)
This method delivers the current state of the analysis, if it is available, null otherwise.

Parameters:
projectName - The name of the project.
Returns:
The state of the given project.

getDisplayType

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

Parameters:
projectName - The name of the project.
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.