package jalview.ws2.operations; import java.io.IOException; import java.util.List; import java.util.Map; import jalview.api.FeatureColourI; import jalview.datamodel.AlignmentAnnotation; import jalview.datamodel.SequenceI; import jalview.datamodel.features.FeatureMatcherSetI; import jalview.ws2.WSJob; import jalview.ws2.WebServiceI; import jalview.ws2.gui.AnnotationMenuBuilder; import jalview.ws2.gui.MenuEntryProviderI; public class AnnotationOperation extends AbstractOperation { @FunctionalInterface public static interface AnnotationResultSupplier { List attachAnnotations(WSJob job, List seqs, Map featureColours, Map featureFilters) throws IOException; } AnnotationResultSupplier annotationSupplier; public AnnotationOperation(WebServiceI service, String typeName, AnnotationResultSupplier annotationSupplier) { super(service, typeName); this.annotationSupplier = annotationSupplier; } @Override public MenuEntryProviderI getMenuBuilder() { return new AnnotationMenuBuilder(this); } }