blob: fc9712820b220da821071064d0d01c30f6928536 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2001, 2004 IBM Corporation 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:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.wst.xml.core.internal.validation.eclipse;
import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverPlugin;
/**
* An XML validator specific to Eclipse. This validator will wrap the internal
* XML validator and provide automatic URI resolution support. This class also
* reads from the plug-in registry and registers all error customizers with the
* registry.
*/
public class XMLValidator extends org.eclipse.wst.xml.core.internal.validation.XMLValidator
{
private static XMLValidator instance = null;
/**
* Return the one and only instance of the XML validator. The validator
* can be reused and cannot be customized so there should only be one instance of it.
*
* @return The one and only instance of the XML validator.
*/
public static XMLValidator getInstance()
{
if(instance == null)
{
instance = new XMLValidator();
}
return instance;
}
/**
* Constructor. Create the XML validator, set the URI resolver and
* get the extension error customizers from the registry.
*/
protected XMLValidator()
{
setURIResolver(URIResolverPlugin.createResolver());
new ErrorCustomizationPluginRegistryReader().readRegistry();
}
}