/******************************************************************************* * Copyright (c) 2011 Subgraph. * 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: * Subgraph - initial API and implementation ******************************************************************************/ package com.subgraph.vega.api.model.web; import java.net.URI; import java.util.Collection; import org.apache.http.HttpHost; import org.w3c.dom.html2.HTMLDocument; import com.subgraph.vega.api.events.IEventHandler; import com.subgraph.vega.api.model.web.forms.IWebForm; public interface IWebModel { void addChangeListenerAndPopulate(IEventHandler listener); void removeChangeListener(IEventHandler listener); Collection<IWebHost> getAllWebHosts(); IWebHost getWebHostByHttpHost(HttpHost host); IWebHost createWebHostFromHttpHost(HttpHost host); IWebPath getWebPathByUri(URI uri); IWebPath addGetTarget(URI uri); Collection<IWebHost> getUnscannedHosts(); Collection<IWebPath> getUnscannedPaths(); Collection<IWebPath> getAllPaths(); Collection<IWebForm> parseForms(IWebPath source, HTMLDocument document); }