| /******************************************************************************* |
| * Copyright (c) 2007 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 |
| * David Carver, Standards for Technology in Automotive Retail, bug 1147033 |
| *******************************************************************************/ |
| package org.eclipse.wst.xsd.core.internal.validation; |
| |
| /** |
| * An XSD validation configuration allows setting specific configuration |
| * information for a WTP XSD validation run. Any features and properties |
| * set on this configuration should not be confused with those from |
| * parsers such as Xerces. (This object does not by default wrap features |
| * and properties from specific parsers.) |
| */ |
| public class XSDValidationConfiguration |
| { |
| public static String HONOUR_ALL_SCHEMA_LOCATIONS = "HONOUR_ALL_SCHEMA_LOCATIONS"; //$NON-NLS-1$ |
| public static String FULL_SCHEMA_CONFORMANCE = "FULL_SCHEMA_CONFORMANCE"; //$NON-NLS-1$ |
| private boolean honour_all_schema_locations = false; |
| private boolean fullSchemaConformance = true; |
| |
| /** |
| * Set a feature of this configuration. |
| * |
| * @param feature |
| * The feature to set. |
| * @param value |
| * The value to set for the feature. |
| * @throws |
| * An exception is thrown if the feature is not recognized. |
| */ |
| public void setFeature(String feature, boolean value) throws Exception |
| { |
| if(HONOUR_ALL_SCHEMA_LOCATIONS.equals(feature)) |
| honour_all_schema_locations = value; |
| else if (FULL_SCHEMA_CONFORMANCE.equals(feature)) |
| fullSchemaConformance = value; |
| else |
| throw new Exception("Feature not recognized."); //$NON-NLS-1$ |
| |
| } |
| |
| |
| /** |
| * Get the value for a given feature. If the feature is not defined |
| * this method will throw an exception. |
| * |
| * @param feature |
| * The feature for which to retrieve the value. |
| * @return |
| * The feature's value, true or false. |
| * @throws |
| * An exception is thrown if the feature is not recognized. |
| */ |
| public boolean getFeature(String feature) throws Exception |
| { |
| if(HONOUR_ALL_SCHEMA_LOCATIONS.equals(feature)) |
| return honour_all_schema_locations; |
| else if (FULL_SCHEMA_CONFORMANCE.equals(feature)) |
| return fullSchemaConformance; |
| |
| throw new Exception("Feature not recognized."); //$NON-NLS-1$ |
| } |
| |
| } |