@import org.silkframework.runtime.plugin.PluginDescription
@import org.silkframework.workspace.Project
@import org.silkframework.runtime.activity.UserContext
@import org.silkframework.runtime.plugin.PluginCategories
@import org.silkframework.runtime.plugin.PluginContext
@(name: String,
opType: String,
pluginsByCategory: Map[String, Seq[org.silkframework.runtime.plugin.PluginDescription[_]]],
project: Project)(implicit userContext: UserContext)
@**
* A single operator in the toolbox.
*@
@operatorIcon(plugin: PluginDescription[_], category: String) = {
@plugin.label
@plugin.label
@operatorExpanded(plugin)
@plugin.description
}
@operatorExpanded(plugin: PluginDescription[_]) = {
@opType match {
case "transform" => { @transformationBox(plugin.id, plugin, parameterValues(plugin), 0, 0, false, project) }
case "compare" => { @comparisonBox(plugin.id, 1, 0.0, plugin, parameterValues(plugin), 0, 0, false, project) }
case "aggregate" => { @aggregationBox(plugin.id, 1, plugin, parameterValues(plugin), 0, 0, false, project) }
}
}
@parameterValues(plugin: PluginDescription[_]) = @{
implicit val prefixes = project.config.prefixes
for(p <- plugin.parameters) yield p.stringDefaultValue(PluginContext.empty).getOrElse("")
}