/******************************************************************************* * 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.impl.scanner.handlers; import com.subgraph.vega.api.model.web.IWebPath.PathType; import com.subgraph.vega.api.scanner.IPathState; import com.subgraph.vega.api.scanner.modules.IBasicModuleScript; public class InjectionChecks { private final PutChecks putChecks; private final PageVariabilityCheck pageVariabilityChecks; public InjectionChecks() { putChecks = new PutChecks(this); pageVariabilityChecks = new PageVariabilityCheck(this); } public void initialize(IPathState ps) { ps.unlockChildren(); if(ps.getPath().getPathType() == PathType.PATH_DIRECTORY) putChecks.initialize(ps); else runPageVariabilityCheck(ps); } public void runPageVariabilityCheck(IPathState ps) { if(ps.doInjectionChecks()) { pageVariabilityChecks.initialize(ps); } else { ps.setDone(); } } public void launchInjectionModules(IPathState ps) { for(IBasicModuleScript m: ps.getInjectionModules()) { if(m.isEnabled()) { m.runScript(ps); } } } }