package org.gbif.checklistbank.service; import org.gbif.api.model.checklistbank.NameUsage; import org.gbif.api.model.checklistbank.NameUsageMetrics; import org.gbif.api.model.checklistbank.ParsedName; import org.gbif.api.model.checklistbank.VerbatimNameUsage; import org.gbif.checklistbank.model.UsageExtensions; import java.util.List; import java.util.concurrent.Future; /** * */ public interface ImporterCallback { /** * Return the usage for the given (neo4j node) id. * There can be multiple usages in case of the (rare) pro parte synonyms. */ NameUsage readUsage(long id); ParsedName readName(long id); boolean isInsert(NameUsage usage); UsageExtensions readExtensions(long id); NameUsageMetrics readMetrics(long id); VerbatimNameUsage readVerbatim(long id); List<Integer> readParentKeys(long id); void reportUsageKey(long id, int usageKey); void reportNewFuture(Future<List<Integer>> future); }