001 package de.deepamehta.plugins.geomaps.service; 002 003 import de.deepamehta.plugins.geomaps.model.GeoCoordinate; 004 import de.deepamehta.plugins.geomaps.model.Geomap; 005 import de.deepamehta.core.Topic; 006 import de.deepamehta.core.service.PluginService; 007 008 009 010 public interface GeomapsService extends PluginService { 011 012 Geomap getGeomap(long geomapId); 013 014 /** 015 * Finds the domain topic that corresponds to a Geo Coordinate topic. 016 */ 017 Topic getDomainTopic(long geoCoordId); 018 019 /** 020 * Returns the geo coordinate of a geo-facetted topic (e.g. an Address), 021 * or <code>null</code> if no geo coordinate is stored. 022 * 023 * @return the geo coordinate, or <code>null</code>. 024 */ 025 GeoCoordinate getGeoCoordinate(Topic geoTopic); 026 027 /** 028 * Adds a Geo Coordinate topic to a geomap. 029 */ 030 void addCoordinateToGeomap(long geomapId, long geoCoordId); 031 032 void setGeomapState(long geomapId, double lon, double lat, int zoom); 033 }