package com.griddynamics.jagger.engine.e1.services; import com.griddynamics.jagger.coordinator.NodeContext; import com.griddynamics.jagger.dbapi.entity.TagEntity; import java.util.Set; /** Implementation of the @ref SessionInfoService * @n * @par Details: * @details Service gives ability to create and modify session metadata (such as session comment) @n * Where this service is available you can find in chapter: @ref section_listeners_services @n * @n * @ingroup Main_Services_group */ public class DefaultSessionInfoService implements SessionInfoService { private SessionMetaDataStorage metaDataStorage; public DefaultSessionInfoService(NodeContext context) { metaDataStorage = context.getService(SessionMetaDataStorage.class); } @Override public String getComment() { return metaDataStorage.getComment(); } @Override public void setComment(String comment) { metaDataStorage.setComment(comment); } @Override public void appendToComment(String st) { metaDataStorage.appendToComment(st); } @Override public void saveOrUpdateTag(String tagName, String tagDescription) { metaDataStorage.addNewOrUpdateTag(new TagEntity(tagName, tagDescription)); } @Override public void markSessionWithTag(String tagName) { metaDataStorage.addSessionTag(tagName); } @Override public Set<String> getSessionTags() { return metaDataStorage.getSessionTags(); } @Override public boolean isAvailable() { return true; } }