blob: 358a974f43328968fdecc6bacb834aad14b743b4 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2004 - 2006 University Of British Columbia and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* University Of British Columbia - initial API and implementation
*******************************************************************************/
package org.eclipse.mylyn.internal.bugzilla.ui.search;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
/**
* Interface for the bugzilla search result collector.
*
* @author Shawn Minto
*/
interface IBugzillaSearchResultCollector {
/**
* Called before the actual search starts
*
* @param startCount -
* The starting count for the number of matches
* @throws CoreException
*/
public void aboutToStart(int startCount) throws CoreException;
/**
* Accept a search hit and add it as a match and set the markers
*
* @param hit
* The search hit that was a match
* @throws CoreException
*/
public void accept(BugzillaSearchHit hit) throws CoreException;
/**
* Called when the search has ended.
*/
public void done();
/**
* Get the progress monitor for the search
*
* @return The progress monitor
*/
public IProgressMonitor getProgressMonitor();
/**
* Set the progress monitor
*
* @param monitor
* The progress monitor the search should use
*/
public void setProgressMonitor(IProgressMonitor monitor);
/**
* Set the current search operation
*
* @param operation
* The operation to set the search to
*/
public void setOperation(IBugzillaSearchOperation operation);
/**
* Get the current operation
*
* @return The current search operation
*/
public IBugzillaSearchOperation getOperation();
}