package edu.isi.karma.metadata;
import edu.isi.karma.config.ModelingConfiguration;
import edu.isi.karma.config.ModelingConfigurationRegistry;
import edu.isi.karma.controller.update.UpdateContainer;
import edu.isi.karma.modeling.alignment.learner.ModelLearningGraphLoaderThread;
import edu.isi.karma.modeling.ontology.OntologyManager;
import edu.isi.karma.rep.Workspace;
import edu.isi.karma.webserver.ContextParametersRegistry;
import edu.isi.karma.webserver.KarmaException;
import edu.isi.karma.webserver.ServletContextParameterMap;
import edu.isi.karma.webserver.ServletContextParameterMap.ContextParameter;
public class ModelLearnerMetadata extends KarmaUserMetadata {
public ModelLearnerMetadata(ServletContextParameterMap contextParameters) throws KarmaException
{
super(contextParameters);
}
@Override
public void setup(UpdateContainer uc, Workspace workspace) {
OntologyManager ontologyManager = workspace.getOntologyManager();
ModelingConfiguration modelingConfiguration = ModelingConfigurationRegistry.getInstance().getModelingConfiguration(ContextParametersRegistry.getInstance().getContextParameters(workspace.getContextId()).getKarmaHome());
if (modelingConfiguration.isLearnerEnabled())
new ModelLearningGraphLoaderThread(ontologyManager).run();
}
@Override
protected ContextParameter getDirectoryContextParameter() {
return ContextParameter.ALIGNMENT_GRAPH_DIRECTORY;
}
@Override
protected String getDirectoryPath() {
return "alignment-graph/";
}
@Override
public KarmaMetadataType getType() {
return StandardUserMetadataTypes.MODEL_LEARNER;
}
}