-
Notifications
You must be signed in to change notification settings - Fork 228
Commit
# Conflicts: # olingo/src/test/java/org/teiid/olingo/TestODataIntegration.java
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -22,15 +22,18 @@ | |
|
||
import javax.xml.stream.XMLStreamException; | ||
|
||
import org.apache.olingo.commons.api.edm.FullQualifiedName; | ||
import org.apache.olingo.commons.api.edm.provider.CsdlAnnotation; | ||
import org.apache.olingo.commons.api.edm.provider.CsdlSchema; | ||
import org.apache.olingo.commons.api.edm.provider.CsdlTerm; | ||
import org.apache.olingo.commons.api.edm.provider.annotation.CsdlConstantExpression; | ||
import org.apache.olingo.commons.api.edm.provider.annotation.CsdlConstantExpression.ConstantExpressionType; | ||
import org.apache.olingo.commons.api.edmx.EdmxReference; | ||
import org.apache.olingo.commons.api.edmx.EdmxReferenceInclude; | ||
import org.apache.olingo.commons.api.ex.ODataException; | ||
import org.apache.olingo.server.core.MetadataParser; | ||
import org.apache.olingo.server.core.SchemaBasedEdmProvider; | ||
import org.teiid.core.TeiidRuntimeException; | ||
|
||
public class TeiidEdmProvider extends SchemaBasedEdmProvider { | ||
public TeiidEdmProvider(String baseUri, CsdlSchema schema, | ||
|
@@ -59,6 +62,10 @@ public TeiidEdmProvider(String baseUri, CsdlSchema schema, | |
getClass().getClassLoader().getResourceAsStream("org.teiid.v1.xml"))); | ||
addVocabularySchema("org.teiid.v1", provider); | ||
|
||
provider = parser.buildEdmProvider(new InputStreamReader( | ||
This comment has been minimized.
Sorry, something went wrong.
This comment has been minimized.
Sorry, something went wrong.
shawkins
Author
Contributor
|
||
getClass().getClassLoader().getResourceAsStream("Org.OData.Core.V1.xml"))); | ||
addVocabularySchema("Org.OData.Core.V1", provider); | ||
|
||
// <Annotation Term="org.apache.olingo.v1.xml10-incompatible-char-replacement" String="xxx"/> | ||
if (invalidXmlReplacementChar != null) { | ||
CsdlAnnotation xmlCharReplacement = new CsdlAnnotation(); | ||
|
@@ -69,5 +76,14 @@ public TeiidEdmProvider(String baseUri, CsdlSchema schema, | |
} | ||
addSchema(schema); | ||
} | ||
|
||
@Override | ||
public CsdlTerm getTerm(FullQualifiedName fqn) throws ODataException { | ||
CsdlTerm term = super.getTerm(fqn); | ||
if (term == null) { | ||
throw new TeiidRuntimeException(fqn.toString() + " unknown term"); //$NON-NLS-1$ | ||
} | ||
return term; | ||
} | ||
} | ||
|
I believe these are loaded implicitly