package org.greenstone.atlas.client;

import java.util.ArrayList;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;

@RemoteServiceRelativePath("findPlace")
public interface FindPlaceService extends RemoteService 
{
	Boolean isGazetteerLoaded();
	Boolean findPlacesInText(String text, String html);
	ArrayList<ArrayList<Place>> findPlacesInMultipleTexts(String[] texts);
	Boolean loadGazetteer();
	ArrayList<Place> getPlaces(double maxScore, double minScore, long minPopulation, boolean locality, boolean region, boolean country, int numberOfPlacesToGet);
	Boolean adjustScoringParams(double penalty, double parentBonus, double indirectReferencePercent);
	String getMarkedUpText();
	ArrayList<Place> updateGazetteer(int start, int end);
	Boolean addToDatabase(Place p, float lat, float lng);
	ArrayList<String> spatialSearch(ArrayList<Float[]> points);
	Place getPlaceById(long id);
}
