in src/Readers/Vipr.Reader.OData.v4/OdcmReader.cs [402:427]
private void WriteNamespaceMethods(IEdmModel edmModel, string @namespace, IEnumerable<IEdmEntityType> allEntityTypes)
{
var allElements = AllElementsByNamespace(edmModel.SchemaElements, @namespace).ToList();
var actions = AllActions(allElements).ToList();
var functions = AllFunctions(allElements).ToList();
if (!actions.Any() && !functions.Any())
{
return;
}
foreach (var entityType in allEntityTypes)
{
var odcmClass = TryResolveType<OdcmEntityClass>(entityType.Name, entityType.Namespace);
foreach (var action in actions.Where(element => IsOperationBoundTo(element, entityType)).GroupBy(e => e.Name))
{
WriteMethodGroup(odcmClass, action);
}
foreach (var function in functions.Where(element => IsOperationBoundTo(element, entityType)).GroupBy(e => e.Name))
{
WriteMethodGroup(odcmClass, function);
}
}
}