/* * Copyright 2013 Guidewire Software, Inc. */ package gw.internal.xml.xsd.typeprovider.schema; import gw.internal.xml.xsd.typeprovider.XmlSchemaIndex; import gw.lang.reflect.LocationInfo; import java.util.List; import javax.xml.namespace.QName; public final class XmlSchemaSimpleTypeRestriction extends XmlSchemaSimpleTypeContent<XmlSchemaSimpleTypeRestriction> { private final XmlSchemaSimpleType _baseType; private final QName _baseTypeName; private final List<XmlSchemaFacet> _facets; public XmlSchemaSimpleTypeRestriction( XmlSchemaIndex schemaIndex, LocationInfo locationInfo, XmlSchemaSimpleType baseType, QName baseTypeName, List<XmlSchemaFacet> facets ) { super( schemaIndex, locationInfo ); _baseType = baseType; _baseTypeName = baseTypeName; _facets = facets; } public XmlSchemaSimpleType getBaseType() { return _baseType; } public QName getBaseTypeName() { return _baseTypeName; } public List<XmlSchemaFacet> getFacets() { return _facets; } @Override public XmlSchemaSimpleTypeRestriction copy( XmlSchemaIndex schemaIndex ) { return new XmlSchemaSimpleTypeRestriction( schemaIndex, getLocationInfo(), _baseType == null ? null : _baseType.copy( schemaIndex ), _baseTypeName, copyList( schemaIndex, _facets) ); } }