01: /*
02: * GeoTools - OpenSource mapping toolkit
03: * http://geotools.org
04: * (C) 2002-2006, GeoTools Project Managment Committee (PMC)
05: *
06: * This library is free software; you can redistribute it and/or
07: * modify it under the terms of the GNU Lesser General Public
08: * License as published by the Free Software Foundation;
09: * version 2.1 of the License.
10: *
11: * This library is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14: * Lesser General Public License for more details.
15: */
16: package org.geotools.gml3.bindings.smil;
17:
18: import org.eclipse.xsd.XSDSchema;
19: import org.eclipse.xsd.util.XSDSchemaLocationResolver;
20:
21: /**
22: *
23: * @generated
24: */
25: public class SMIL20SchemaLocationResolver implements
26: XSDSchemaLocationResolver {
27: /**
28: * <!-- begin-user-doc -->
29: * <!-- end-user-doc -->
30: *
31: * @generated modifiable
32: */
33: public String resolveSchemaLocation(XSDSchema xsdSchema,
34: String namespaceURI, String schemaLocationURI) {
35: if (schemaLocationURI == null) {
36: return null;
37: }
38:
39: //if no namespace given, assume default for the current schema
40: if (((namespaceURI == null) || "".equals(namespaceURI))
41: && (xsdSchema != null)) {
42: namespaceURI = xsdSchema.getTargetNamespace();
43: }
44:
45: if ("http://www.w3.org/2001/SMIL20/".equals(namespaceURI)) {
46: if (schemaLocationURI.endsWith("smil20.xsd")) {
47: return getClass().getResource("smil20.xsd").toString();
48: }
49: }
50:
51: if ("http://www.w3.org/XML/1998/namespace".equals(namespaceURI)) {
52: if (schemaLocationURI.endsWith("xml-mod.xsd")) {
53: return getClass().getResource("xml-mod.xsd").toString();
54: }
55: }
56:
57: if ("http://www.w3.org/2001/SMIL20/Language"
58: .equals(namespaceURI)) {
59: if (schemaLocationURI.endsWith("smil20-language.xsd")) {
60: return getClass().getResource("smil20-language.xsd")
61: .toString();
62: }
63: }
64:
65: return null;
66: }
67: }
|