001 package de.deepamehta.plugins.d3renderer;
002
003 import de.deepamehta.core.model.CompositeValueModel;
004 import de.deepamehta.core.osgi.PluginActivator;
005 import de.deepamehta.core.service.PluginService;
006 import de.deepamehta.core.service.annotation.ConsumesService;
007
008 import de.deepamehta.plugins.topicmaps.TopicmapRenderer;
009 import de.deepamehta.plugins.topicmaps.service.TopicmapsService;
010
011
012
013 public class D3RendererPlugin extends PluginActivator implements TopicmapRenderer {
014
015 // *** Hook Implementations ***
016
017 @Override
018 @ConsumesService("de.deepamehta.plugins.topicmaps.service.TopicmapsService")
019 public void serviceArrived(PluginService service) {
020 ((TopicmapsService) service).registerTopicmapRenderer(this);
021 }
022
023 // *** TopicmapRenderer Implementation ***
024
025 @Override
026 public String getUri() {
027 return "dm4.d3js_renderer";
028 }
029
030 // ### TODO: copy in DefaultTopicmapRenderer.java
031 @Override
032 public CompositeValueModel initialTopicmapState() {
033 return new CompositeValueModel()
034 .put("dm4.topicmaps.translation", new CompositeValueModel()
035 .put("dm4.topicmaps.translation_x", 0)
036 .put("dm4.topicmaps.translation_y", 0)
037 );
038 }
039 }