package com.sap.core.odata.api.edm.provider;

import java.util.List;

import sun.reflect.generics.reflectiveObjects.NotImplementedException;

import com.sap.core.odata.api.edm.FullQualifiedName;
import com.sap.core.odata.api.exception.ODataException;

/**
 * Default EDM Provider which is to be extended by the application
 * @author SAP AG
 *
 */
public class EdmProviderDefault implements EdmProvider {

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getEntityContainer(java.lang.String)
   */
  @Override
  public EntityContainerInfo getEntityContainerInfo(String name) throws ODataException {
    throw new NotImplementedException();
  }

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getEntityType(com.sap.core.odata.api.edm.FullQualifiedName)
   */
  @Override
  public EntityType getEntityType(FullQualifiedName edmFQName) throws ODataException {
    throw new NotImplementedException();
  }

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getComplexType(com.sap.core.odata.api.edm.FullQualifiedName)
   */
  @Override
  public ComplexType getComplexType(FullQualifiedName edmFQName) throws ODataException {
    throw new NotImplementedException();
  }

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getAssociation(com.sap.core.odata.api.edm.FullQualifiedName)
   */
  @Override
  public Association getAssociation(FullQualifiedName edmFQName) throws ODataException {
    throw new NotImplementedException();
  }

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getEntitySet(java.lang.String, java.lang.String)
   */
  @Override
  public EntitySet getEntitySet(String entityContainer, String name) throws ODataException {
    throw new NotImplementedException();
  }

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getAssociationSet(java.lang.String, com.sap.core.odata.api.edm.FullQualifiedName, java.lang.String, java.lang.String)
   */
  @Override
  public AssociationSet getAssociationSet(String entityContainer, FullQualifiedName association, String sourceEntitySetName, String sourceEntitySetRole) throws ODataException {
    throw new NotImplementedException();
  }

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getFunctionImport(java.lang.String, java.lang.String)
   */
  @Override
  public FunctionImport getFunctionImport(String entityContainer, String name) throws ODataException {
    throw new NotImplementedException();
  }

  /* (non-Javadoc)
   * @see com.sap.core.odata.api.edm.provider.EdmProvider#getSchemas()
   */
  @Override
  public List<Schema> getSchemas() throws ODataException {
    throw new NotImplementedException();
  }
}
@@ -67,80 +67,8 @@
 t;%0A%0A
-import sun.reflect.generics.reflectiveObjects.NotImplementedException;%0A%0A
 impo
@@ -171,16 +171,86 @@
 ception;
+%0Aimport com.sap.core.odata.api.exception.ODataNotImplementedException;
 %0A%0A/**%0A *
@@ -624,32 +624,37 @@
 %7B%0A    throw new 
+OData
 NotImplementedEx
@@ -917,32 +917,37 @@
 %7B%0A    throw new 
+OData
 NotImplementedEx
@@ -1213,32 +1213,37 @@
 %7B%0A    throw new 
+OData
 NotImplementedEx
@@ -1509,32 +1509,37 @@
 %7B%0A    throw new 
+OData
 NotImplementedEx
@@ -1797,32 +1797,37 @@
 %7B%0A    throw new 
+OData
 NotImplementedEx
@@ -2238,32 +2238,37 @@
 %7B%0A    throw new 
+OData
 NotImplementedEx
@@ -2541,32 +2541,37 @@
 %7B%0A    throw new 
+OData
 NotImplementedEx
@@ -2767,16 +2767,21 @@
 row new 
+OData
 NotImple

fix wrong exception type