use of org.iobserve.analysis.feature.IBehaviorCompositeStage in project iobserve-analysis by research-iobserve.
the class AnalysisConfiguration method behaviorClustering.
/**
* Create the behavioral clustering.
*
* @param configuration
* analysis configuration
* @throws ConfigurationException
* when filter configuration fails
*/
private void behaviorClustering(final kieker.common.configuration.Configuration configuration, final OutputPort<EventBasedTrace> eventBasedTraceOutputPort) throws ConfigurationException {
final String behaviorClustringClassName = configuration.getStringProperty(ConfigurationKeys.BEHAVIOR_CLUSTERING);
if (!behaviorClustringClassName.isEmpty()) {
final IBehaviorCompositeStage behavior = InstantiationFactory.createWithConfiguration(IBehaviorCompositeStage.class, behaviorClustringClassName, configuration);
this.eventDispatcher.registerOutput(ISessionEvent.class);
this.connectPorts(eventBasedTraceOutputPort, behavior.getEventBasedTracePort());
this.connectPorts(this.eventDispatcher.getOutputPort(ISessionEvent.class), behavior.getSessionEventInputPort());
if (configuration.getBooleanProperty(ConfigurationKeys.BEHAVIOR_CLUSTERING_SINK)) {
// TODO needs visualization trigger
AnalysisConfiguration.LOGGER.warn("Configuration for behavior sink missing.");
}
}
}
use of org.iobserve.analysis.feature.IBehaviorCompositeStage in project iobserve-analysis by research-iobserve.
the class AnalysisConfiguration method behaviorClustering.
/**
* Create the behavioral clustering.
*
* @param configuration
* analysis configuration
* @throws ConfigurationException
* when filter configuration fails
*/
private void behaviorClustering(final kieker.common.configuration.Configuration configuration, final OutputPort<EventBasedTrace> eventBasedTraceOutputPort) throws ConfigurationException {
final String behaviorClustringClassName = configuration.getStringProperty(ConfigurationKeys.BEHAVIOR_CLUSTERING);
if (!behaviorClustringClassName.isEmpty()) {
final IBehaviorCompositeStage behavior = InstantiationFactory.createWithConfiguration(IBehaviorCompositeStage.class, behaviorClustringClassName, configuration);
final IEventMatcher<ISessionEvent> sessionMatcher = new ImplementsEventMatcher<>(ISessionEvent.class, null);
this.eventDispatcher.registerOutput(sessionMatcher);
this.connectPorts(eventBasedTraceOutputPort, behavior.getEventBasedTraceInputPort());
this.connectPorts(sessionMatcher.getOutputPort(), behavior.getSessionEventInputPort());
if (configuration.getBooleanProperty(ConfigurationKeys.BEHAVIOR_CLUSTERING_SINK)) {
// TODO needs visualization trigger
AnalysisConfiguration.LOGGER.warn("Configuration for behavior sink missing.");
}
}
}
Aggregations