blob: 2d0b61ee8949bd44d961213ab2db084a5fb4a3b3 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0) on Tue Jan 27 04:28:33 EST 2009 -->
<TITLE>
ValidationFramework
</TITLE>
<META NAME="date" CONTENT="2009-01-27">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ValidationFramework";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ValidationFramework.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../serialized-form.html"><FONT CLASS="NavBarFont1"><B>Serialized</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/eclipse/wst/validation/ValidationEvent.html" title="class in org.eclipse.wst.validation"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.ResourceAdder.html" title="class in org.eclipse.wst.validation"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/eclipse/wst/validation/ValidationFramework.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ValidationFramework.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.eclipse.wst.validation</FONT>
<BR>
Class ValidationFramework</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.wst.validation.ValidationFramework</B>
</PRE>
<HR>
<DL>
<DT><PRE>public final class <B>ValidationFramework</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
The central class of the Validation Framework.
<p>
This is a singleton class that is accessed through the getDefault() method.
<p>
<b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to
change significantly before reaching stability. It is being made available at this early stage to solicit feedback
from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
(repeatedly) as the API evolves.
</p>
<P>
<P>
<HR>
<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->
<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;class</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.ResourceAdder.html" title="class in org.eclipse.wst.validation">ValidationFramework.ResourceAdder</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#addValidationBuilder(IProject)">addValidationBuilder</A></B>(IProject&nbsp;project)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the validation builder to the project, so that the project can support
build time validation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#applyChanges(org.eclipse.wst.validation.MutableProjectSettings, boolean)">applyChanges</A></B>(<A HREF="../../../../org/eclipse/wst/validation/MutableProjectSettings.html" title="class in org.eclipse.wst.validation">MutableProjectSettings</A>&nbsp;settings,
boolean&nbsp;persist)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Apply the changes that have been been to the validation settings.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#applyChanges(org.eclipse.wst.validation.MutableWorkspaceSettings, boolean)">applyChanges</A></B>(<A HREF="../../../../org/eclipse/wst/validation/MutableWorkspaceSettings.html" title="class in org.eclipse.wst.validation">MutableWorkspaceSettings</A>&nbsp;settings,
boolean&nbsp;persist)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Apply the changes that have been been to the validation settings.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#clearMessages(IResource, java.lang.String)">clearMessages</A></B>(IResource&nbsp;resource,
java.lang.String&nbsp;validatorId)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Clear any validation markers that may have been set by this validator.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#disableValidation(IResource)">disableValidation</A></B>(IResource&nbsp;resource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Disable all validation for the given resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#enableValidation(IResource)">enableValidation</A></B>(IResource&nbsp;resource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Enable validation for the given resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html" title="class in org.eclipse.wst.validation">ValidationFramework</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getDefault()">getDefault</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer the singleton, default instance of this class.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/IDependencyIndex.html" title="interface in org.eclipse.wst.validation">IDependencyIndex</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getDependencyIndex()">getDependencyIndex</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer the dependency index.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Set&lt;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getDisabledValidatorsFor(IResource)">getDisabledValidatorsFor</A></B>(IResource&nbsp;resource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer all the validators that should not validate the resource, either
because their filters don't support the resource, or the validator has
been disabled for both build validation and manual validation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/IPerformanceMonitor.html" title="interface in org.eclipse.wst.validation">IPerformanceMonitor</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getPerformanceMonitor()">getPerformanceMonitor</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer a performance monitor for the validators.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;IEclipsePreferences</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getPreferenceStore()">getPreferenceStore</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer the preference store that holds the persisted global validation settings.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/MutableProjectSettings.html" title="class in org.eclipse.wst.validation">MutableProjectSettings</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getProjectSettings(IProject)">getProjectSettings</A></B>(IProject&nbsp;project)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer the validation settings that have been defined on the
project.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/internal/provisional/core/IReporter.html" title="interface in org.eclipse.wst.validation.internal.provisional.core">IReporter</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getReporter(IProject, IProgressMonitor)">getReporter</A></B>(IProject&nbsp;project,
IProgressMonitor&nbsp;monitor)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getValidator(java.lang.String)">getValidator</A></B>(java.lang.String&nbsp;id)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>Use getValidator(String id, IProject project) with a null project instead.</I></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getValidator(java.lang.String, IProject)">getValidator</A></B>(java.lang.String&nbsp;id,
IProject&nbsp;project)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer the validator with the given id that is in effect for the given
project.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getValidators()">getValidators</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer copies of all the registered validators.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getValidatorsConfiguredForProject(IProject)">getValidatorsConfiguredForProject</A></B>(IProject&nbsp;project)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Validators can use project level settings (Project natures and facets) to
determine if they are applicable to the project or not.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getValidatorsFor(IResource)">getValidatorsFor</A></B>(IResource&nbsp;resource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer all the validators that are applicable for the given resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getValidatorsFor(IResource, boolean, boolean)">getValidatorsFor</A></B>(IResource&nbsp;resource,
boolean&nbsp;isManual,
boolean&nbsp;isBuild)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer all the validators that are applicable for the given resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/MutableWorkspaceSettings.html" title="class in org.eclipse.wst.validation">MutableWorkspaceSettings</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#getWorkspaceSettings()">getWorkspaceSettings</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer the validation settings that have been defined at the workspace level.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#hasValidators(IResource, boolean, boolean)">hasValidators</A></B>(IResource&nbsp;resource,
boolean&nbsp;isManual,
boolean&nbsp;isBuild)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer true if the resource has any enabled validators.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#isLoaded(org.eclipse.wst.validation.Validator)">isLoaded</A></B>(<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>&nbsp;validator)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Answer whether or not the validator has been activated, i.e. has the
bundle that defines the validator been loaded.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#isProjectSuspended(IProject)">isProjectSuspended</A></B>(IProject&nbsp;project)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This method should be called by any code that is preparing to suspend validation on a
project.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#isSuspended()">isSuspended</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return true if "suspend all" is enabled, false otherwise.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#isSuspended(IProject)">isSuspended</A></B>(IProject&nbsp;project)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if validation will not run on the project because it's been suspended.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#join(IProgressMonitor)">join</A></B>(IProgressMonitor&nbsp;monitor)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Waits until all validation jobs are finished.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#saveValidators(org.eclipse.wst.validation.Validator[])">saveValidators</A></B>(<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[]&nbsp;validators)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Save the validators settings into the persistent store, there by making their settings the active settings.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#suspendAllValidation(boolean)">suspendAllValidation</A></B>(boolean&nbsp;suspend)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Suspends, or undoes the suspension of, validation on all projects in the
workbench.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#suspendValidation(IProject, boolean)">suspendValidation</A></B>(IProject&nbsp;project,
boolean&nbsp;suspend)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Suspends, or undoes the suspension of, validation on the current project.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/ValidationResults.html" title="class in org.eclipse.wst.validation">ValidationResults</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#validate(IFile, IProgressMonitor)">validate</A></B>(IFile&nbsp;file,
IProgressMonitor&nbsp;monitor)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Validate a specific file resource.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/eclipse/wst/validation/ValidationResults.html" title="class in org.eclipse.wst.validation">ValidationResults</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#validate(IProject[], boolean, boolean, IProgressMonitor)">validate</A></B>(IProject[]&nbsp;projects,
boolean&nbsp;isManual,
boolean&nbsp;isBuild,
IProgressMonitor&nbsp;monitor)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Validate the projects.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="getDefault()"><!-- --></A><H3>
getDefault</H3>
<PRE>
public static <A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html" title="class in org.eclipse.wst.validation">ValidationFramework</A> <B>getDefault</B>()</PRE>
<DL>
<DD>Answer the singleton, default instance of this class.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="addValidationBuilder(IProject)"><!-- --></A><H3>
addValidationBuilder</H3>
<PRE>
public void <B>addValidationBuilder</B>(IProject&nbsp;project)</PRE>
<DL>
<DD>Add the validation builder to the project, so that the project can support
build time validation. It is safe to call this method, if the builder was
previously added to the project. It will not be added more than once.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>project</CODE> - The project that the builder is added to.</DL>
</DD>
</DL>
<HR>
<A NAME="clearMessages(IResource, java.lang.String)"><!-- --></A><H3>
clearMessages</H3>
<PRE>
public void <B>clearMessages</B>(IResource&nbsp;resource,
java.lang.String&nbsp;validatorId)
throws CoreException</PRE>
<DL>
<DD>Clear any validation markers that may have been set by this validator.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resource</CODE> - The resource that may have it's markers cleared.<DD><CODE>validatorId</CODE> - The id of validator that created the marker.
<DT><B>Throws:</B>
<DD><CODE>CoreException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="disableValidation(IResource)"><!-- --></A><H3>
disableValidation</H3>
<PRE>
public void <B>disableValidation</B>(IResource&nbsp;resource)</PRE>
<DL>
<DD>Disable all validation for the given resource. This method instructs
the framework to not run any validators on the given resource or any of
it's children. This setting is persistent. Currently this only works with version 2
validators.
<p>
Use the enableValidation method to restore validation.
</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resource</CODE> - The resource that is having validation disabled. It must be an IFolder or an IFile.<DT><B>See Also:</B><DD><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#enableValidation(IResource)"><CODE>enableValidation(IResource)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="enableValidation(IResource)"><!-- --></A><H3>
enableValidation</H3>
<PRE>
public void <B>enableValidation</B>(IResource&nbsp;resource)</PRE>
<DL>
<DD>Enable validation for the given resource. If the resource was not
previously disabled this method call has no effect. Currently this only
works with version 2 validators.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resource</CODE> - The resource that is having validation re-enabled.<DT><B>See Also:</B><DD><A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#disableValidation(IResource)"><CODE>disableValidation(IResource)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getDependencyIndex()"><!-- --></A><H3>
getDependencyIndex</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/IDependencyIndex.html" title="interface in org.eclipse.wst.validation">IDependencyIndex</A> <B>getDependencyIndex</B>()</PRE>
<DL>
<DD>Answer the dependency index. Validators can use this to determine which resources depend on which
other resources.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getPerformanceMonitor()"><!-- --></A><H3>
getPerformanceMonitor</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/IPerformanceMonitor.html" title="interface in org.eclipse.wst.validation">IPerformanceMonitor</A> <B>getPerformanceMonitor</B>()</PRE>
<DL>
<DD>Answer a performance monitor for the validators.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getPreferenceStore()"><!-- --></A><H3>
getPreferenceStore</H3>
<PRE>
public IEclipsePreferences <B>getPreferenceStore</B>()</PRE>
<DL>
<DD>Answer the preference store that holds the persisted global validation settings.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getReporter(IProject, IProgressMonitor)"><!-- --></A><H3>
getReporter</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/internal/provisional/core/IReporter.html" title="interface in org.eclipse.wst.validation.internal.provisional.core">IReporter</A> <B>getReporter</B>(IProject&nbsp;project,
IProgressMonitor&nbsp;monitor)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getValidatorsFor(IResource, boolean, boolean)"><!-- --></A><H3>
getValidatorsFor</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[] <B>getValidatorsFor</B>(IResource&nbsp;resource,
boolean&nbsp;isManual,
boolean&nbsp;isBuild)</PRE>
<DL>
<DD>Answer all the validators that are applicable for the given resource. A validator is
still returned even if it has been turned off by the user.
<p>
The caller may still need to test if the validator has been turned off by
the user, by using the isBuildValidation() and isManualValidation()
methods.
</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resource</CODE> - The resource that determines which validators are applicable.<DD><CODE>isManual</CODE> - If true then the validator must be turned on for manual validation.
If false then the isManualValidation setting isn't used to filter
out validators.<DD><CODE>isBuild</CODE> - If true then the validator must be turned on for build based
validation. If false then the isBuildValidation setting isn't used
to filter out validators.<DT><B>See Also:</B><DD><A HREF="../../../../org/eclipse/wst/validation/Validator.html#isBuildValidation()"><CODE>Validator.isBuildValidation()</CODE></A>,
<A HREF="../../../../org/eclipse/wst/validation/Validator.html#isManualValidation()"><CODE>Validator.isManualValidation()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getDisabledValidatorsFor(IResource)"><!-- --></A><H3>
getDisabledValidatorsFor</H3>
<PRE>
public java.util.Set&lt;<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>&gt; <B>getDisabledValidatorsFor</B>(IResource&nbsp;resource)</PRE>
<DL>
<DD>Answer all the validators that should not validate the resource, either
because their filters don't support the resource, or the validator has
been disabled for both build validation and manual validation.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resource</CODE> - The resource this is being tested.</DL>
</DD>
</DL>
<HR>
<A NAME="getValidator(java.lang.String)"><!-- --></A><H3>
getValidator</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A> <B>getValidator</B>(java.lang.String&nbsp;id)</PRE>
<DL>
<DD><B>Deprecated.</B>&nbsp;<I>Use getValidator(String id, IProject project) with a null project instead.</I>
<P>
<DD>Answer the global validator with the given id.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>id</CODE> -
<DT><B>Returns:</B><DD>null if the validator is not found</DL>
</DD>
</DL>
<HR>
<A NAME="getValidator(java.lang.String, IProject)"><!-- --></A><H3>
getValidator</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A> <B>getValidator</B>(java.lang.String&nbsp;id,
IProject&nbsp;project)</PRE>
<DL>
<DD>Answer the validator with the given id that is in effect for the given
project.
<p>
Individual projects may override the global validation preference
settings. If this is allowed and if the project has it's own settings,
then those validators are returned via this method.
</p>
<p>
The following approach is used. For version 1 validators, the validator
is only returned if it is defined to operate on this project type. This
is the way that the previous version of the framework did it. For version
2 validators, they are all returned.
</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>id</CODE> - Validator id.<DD><CODE>project</CODE> - This can be null, in which case all the registered validators are
checked.
<DT><B>Returns:</B><DD>null if the validator is not found</DL>
</DD>
</DL>
<HR>
<A NAME="getValidators()"><!-- --></A><H3>
getValidators</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[] <B>getValidators</B>()</PRE>
<DL>
<DD>Answer copies of all the registered validators.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>Answer an empty array if there are no validators.</DL>
</DD>
</DL>
<HR>
<A NAME="getProjectSettings(IProject)"><!-- --></A><H3>
getProjectSettings</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/MutableProjectSettings.html" title="class in org.eclipse.wst.validation">MutableProjectSettings</A> <B>getProjectSettings</B>(IProject&nbsp;project)</PRE>
<DL>
<DD>Answer the validation settings that have been defined on the
project. To "activate" any changes to these settings, the
<A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#applyChanges(org.eclipse.wst.validation.MutableProjectSettings, boolean)"><CODE>applyChanges(MutableProjectSettings, boolean)</CODE></A> method needs to be
called.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>project</CODE> - The project who's settings you wish to examine or change.
<DT><B>Returns:</B><DD>Validation settings that apply to the given project.</DL>
</DD>
</DL>
<HR>
<A NAME="getWorkspaceSettings()"><!-- --></A><H3>
getWorkspaceSettings</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/MutableWorkspaceSettings.html" title="class in org.eclipse.wst.validation">MutableWorkspaceSettings</A> <B>getWorkspaceSettings</B>()
throws java.lang.reflect.InvocationTargetException</PRE>
<DL>
<DD>Answer the validation settings that have been defined at the workspace level.
To "activate" any changes to these settings, the
<A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.html#applyChanges(org.eclipse.wst.validation.MutableWorkspaceSettings, boolean)"><CODE>applyChanges(MutableWorkspaceSettings, boolean)</CODE></A> method needs to be
called.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>Validation settings that apply to the entire workspace.
<DT><B>Throws:</B>
<DD><CODE>java.lang.reflect.InvocationTargetException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="applyChanges(org.eclipse.wst.validation.MutableProjectSettings, boolean)"><!-- --></A><H3>
applyChanges</H3>
<PRE>
public void <B>applyChanges</B>(<A HREF="../../../../org/eclipse/wst/validation/MutableProjectSettings.html" title="class in org.eclipse.wst.validation">MutableProjectSettings</A>&nbsp;settings,
boolean&nbsp;persist)</PRE>
<DL>
<DD>Apply the changes that have been been to the validation settings.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>settings</CODE> - The project settings.<DD><CODE>persist</CODE> - If true then the changes are persisted to the property files.
If false the changes are applied to the validators, but are
not persisted.</DL>
</DD>
</DL>
<HR>
<A NAME="applyChanges(org.eclipse.wst.validation.MutableWorkspaceSettings, boolean)"><!-- --></A><H3>
applyChanges</H3>
<PRE>
public void <B>applyChanges</B>(<A HREF="../../../../org/eclipse/wst/validation/MutableWorkspaceSettings.html" title="class in org.eclipse.wst.validation">MutableWorkspaceSettings</A>&nbsp;settings,
boolean&nbsp;persist)</PRE>
<DL>
<DD>Apply the changes that have been been to the validation settings.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>settings</CODE> - The workspace settings.<DD><CODE>persist</CODE> - If true then the changes are persisted to the property files.
If false the changes are applied to the validators, but are
not persisted.</DL>
</DD>
</DL>
<HR>
<A NAME="getValidatorsConfiguredForProject(IProject)"><!-- --></A><H3>
getValidatorsConfiguredForProject</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[] <B>getValidatorsConfiguredForProject</B>(IProject&nbsp;project)
throws org.eclipse.wst.validation.internal.ProjectUnavailableError</PRE>
<DL>
<DD>Validators can use project level settings (Project natures and facets) to
determine if they are applicable to the project or not.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>project</CODE> - The project that the configuration is based on.
<DT><B>Returns:</B><DD>The copies of the validators that are configured to run on this project based
on the project level settings.
<DT><B>Throws:</B>
<DD><CODE>org.eclipse.wst.validation.internal.ProjectUnavailableError</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getValidatorsFor(IResource)"><!-- --></A><H3>
getValidatorsFor</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[] <B>getValidatorsFor</B>(IResource&nbsp;resource)</PRE>
<DL>
<DD>Answer all the validators that are applicable for the given resource.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resource</CODE> - the resource that determines which validators are applicable.</DL>
</DD>
</DL>
<HR>
<A NAME="hasValidators(IResource, boolean, boolean)"><!-- --></A><H3>
hasValidators</H3>
<PRE>
public boolean <B>hasValidators</B>(IResource&nbsp;resource,
boolean&nbsp;isManual,
boolean&nbsp;isBuild)</PRE>
<DL>
<DD>Answer true if the resource has any enabled validators.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>resource</CODE> - A file, folder or project.<DD><CODE>isManual</CODE> - If true then the validator must be turned on for manual validation.
If false then the isManualValidation setting isn't used to filter
out validators.<DD><CODE>isBuild</CODE> - If true then the validator must be turned on for build based
validation. If false then the isBuildValidation setting isn't used
to filter out validators.</DL>
</DD>
</DL>
<HR>
<A NAME="isLoaded(org.eclipse.wst.validation.Validator)"><!-- --></A><H3>
isLoaded</H3>
<PRE>
public boolean <B>isLoaded</B>(<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>&nbsp;validator)</PRE>
<DL>
<DD>Answer whether or not the validator has been activated, i.e. has the
bundle that defines the validator been loaded. We do not want to cause
unnecessary bundle loading, so this check can be performed by third party
callers, to prevent making other calls that will force the validator to
be loaded.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>validator</CODE> - The validator that is being tested.
<DT><B>Returns:</B><DD>true if the validator has already been loaded.</DL>
</DD>
</DL>
<HR>
<A NAME="join(IProgressMonitor)"><!-- --></A><H3>
join</H3>
<PRE>
public void <B>join</B>(IProgressMonitor&nbsp;monitor)
throws java.lang.InterruptedException,
OperationCanceledException</PRE>
<DL>
<DD>Waits until all validation jobs are finished. This method will block the
calling thread until all such jobs have finished executing, or until this
thread is interrupted. If there are no validation jobs that are
currently waiting, running, or sleeping, this method returns immediately.
Feedback on how the join is progressing is provided to the progress
monitor.
<p>
If this method is called while the job manager is suspended, only jobs
that are currently running will be joined. Once there are no jobs in the
family in the <CODE>Job#RUNNING</CODE> state, this method returns.
</p>
<p>
Note that there is a deadlock risk when using join. If the calling thread
owns a lock or object monitor that the joined thread is waiting for,
deadlock will occur. This method can also result in starvation of the
current thread if another thread continues to add jobs of the given
family, or if a job in the given family reschedules itself in an infinite
loop.
</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>monitor</CODE> - Progress monitor for reporting progress on how the wait is
progressing, or <code>null</code> if no progress monitoring is
required.
<DT><B>Throws:</B>
<DD><CODE>java.lang.InterruptedException</CODE> - if this thread is interrupted while waiting
<DD><CODE>OperationCanceledException</CODE> - if the progress monitor is canceled while waiting</DL>
</DD>
</DL>
<HR>
<A NAME="suspendValidation(IProject, boolean)"><!-- --></A><H3>
suspendValidation</H3>
<PRE>
public void <B>suspendValidation</B>(IProject&nbsp;project,
boolean&nbsp;suspend)</PRE>
<DL>
<DD>Suspends, or undoes the suspension of, validation on the current project.
If <b>suspend</b> is true then validation is suspended and if it's false
then validation is not suspended on the project. The value of this
variable is not persisted.
<p>
Be <b>very careful</b> when you use this method! Turn validation back on in a
finally block because if the code which suspended validation crashes, the
user has no way to reset the suspension. The user will have to shut down
and restart the workbench to get validation to work again.
</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>project</CODE> - The project that is to be suspended or unsuspended.<DD><CODE>suspend</CODE> - If true, validation on the project will be suspend. If false it will
not be suspended.</DL>
</DD>
</DL>
<HR>
<A NAME="saveValidators(org.eclipse.wst.validation.Validator[])"><!-- --></A><H3>
saveValidators</H3>
<PRE>
public void <B>saveValidators</B>(<A HREF="../../../../org/eclipse/wst/validation/Validator.html" title="class in org.eclipse.wst.validation">Validator</A>[]&nbsp;validators)
throws java.lang.reflect.InvocationTargetException</PRE>
<DL>
<DD>Save the validators settings into the persistent store, there by making their settings the active settings.
<p>
A common use of this method would be to change whether particular validators are enabled or not. For example
if you only wanted the JSP validator enabled, you could use code similar to this:
<pre>
ValidationFramework vf = ValidationFramework.getDefault();
Validator[] vals = vf.getValidators();
for (Validator v : vals){
boolean enabled = false;
if (v.getValidatorClassname().equals("org.eclipse.jst.jsp.core.internal.validation.JSPBatchValidator"))enabled = true;
v.setBuildValidation(enabled);
v.setManualValidation(enabled);
}
vf.saveValidators(vals);
</pre>
</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>validators</CODE> - The validators that you are saving.
<DT><B>Throws:</B>
<DD><CODE>java.lang.reflect.InvocationTargetException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="suspendAllValidation(boolean)"><!-- --></A><H3>
suspendAllValidation</H3>
<PRE>
public void <B>suspendAllValidation</B>(boolean&nbsp;suspend)</PRE>
<DL>
<DD>Suspends, or undoes the suspension of, validation on all projects in the
workbench. If "suspend" is true then validation is suspended and if it's
"false" then validation is not suspended. The value of this variable is
not persisted.
<p>
Be <b>very careful</b> when you use this method! Turn validation back on in a
finally block because if the code which suspended validation crashes, the
user has no way to reset the suspension. The user will have to shut down
and restart the workbench to get validation to work again.
</p>
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isSuspended()"><!-- --></A><H3>
isSuspended</H3>
<PRE>
public boolean <B>isSuspended</B>()</PRE>
<DL>
<DD>Return true if "suspend all" is enabled, false otherwise.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isSuspended(IProject)"><!-- --></A><H3>
isSuspended</H3>
<PRE>
public boolean <B>isSuspended</B>(IProject&nbsp;project)</PRE>
<DL>
<DD>Returns true if validation will not run on the project because it's been suspended. This
method checks only the suspension status; if validation cannot run for some other reason (for
example, there are no enabled validators), yet the IProject is not suspended, this method
will return true even though validation will not run.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isProjectSuspended(IProject)"><!-- --></A><H3>
isProjectSuspended</H3>
<PRE>
public boolean <B>isProjectSuspended</B>(IProject&nbsp;project)</PRE>
<DL>
<DD>This method should be called by any code that is preparing to suspend validation on a
project. Rather than calling isSuspended(IProject), which will also return true if all validation
has been suspended.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>project</CODE> - the project that is being tested
<DT><B>Returns:</B><DD>boolean true if the project has been suspended</DL>
</DD>
</DL>
<HR>
<A NAME="validate(IProject[], boolean, boolean, IProgressMonitor)"><!-- --></A><H3>
validate</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/ValidationResults.html" title="class in org.eclipse.wst.validation">ValidationResults</A> <B>validate</B>(IProject[]&nbsp;projects,
boolean&nbsp;isManual,
boolean&nbsp;isBuild,
IProgressMonitor&nbsp;monitor)
throws CoreException</PRE>
<DL>
<DD>Validate the projects. Exactly one of isManual or isBuild needs to be true.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>projects</CODE> - The projects to be validated.<DD><CODE>isManual</CODE> - Is this being done as part of a manual validation? i.e. did
the user select the Validate menu item?<DD><CODE>isBuild</CODE> - Is this being done as part of a build?<DD><CODE>monitor</CODE> -
<DT><B>Returns:</B><DD>the validation result which is the combined result for all the
resources that were validated.
<DT><B>Throws:</B>
<DD><CODE>CoreException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="validate(IFile, IProgressMonitor)"><!-- --></A><H3>
validate</H3>
<PRE>
public <A HREF="../../../../org/eclipse/wst/validation/ValidationResults.html" title="class in org.eclipse.wst.validation">ValidationResults</A> <B>validate</B>(IFile&nbsp;file,
IProgressMonitor&nbsp;monitor)
throws CoreException</PRE>
<DL>
<DD>Validate a specific file resource.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>file</CODE> - The file to be validated.<DD><CODE>monitor</CODE> - Progress monitor.
<DT><B>Returns:</B><DD>the result of validating the file.
<DT><B>Throws:</B>
<DD><CODE>CoreException</CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ValidationFramework.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../serialized-form.html"><FONT CLASS="NavBarFont1"><B>Serialized</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/eclipse/wst/validation/ValidationEvent.html" title="class in org.eclipse.wst.validation"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/eclipse/wst/validation/ValidationFramework.ResourceAdder.html" title="class in org.eclipse.wst.validation"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/eclipse/wst/validation/ValidationFramework.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ValidationFramework.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>