static void buildProcedures(org.teiid.metadata.Schema schema, CsdlSchema csdlSchema) {
ArrayList<CsdlComplexType> complexTypes = new ArrayList<CsdlComplexType>();
ArrayList<CsdlFunction> functions = new ArrayList<CsdlFunction>();
ArrayList<CsdlFunctionImport> functionImports = new ArrayList<CsdlFunctionImport>();
ArrayList<CsdlAction> actions = new ArrayList<CsdlAction>();
ArrayList<CsdlActionImport> actionImports = new ArrayList<CsdlActionImport>();
for (Procedure proc : schema.getProcedures().values()) {
if (!allowedProcedure(proc)){
LogManager.logDetail(LogConstants.CTX_ODATA,
ODataPlugin.Util.gs(ODataPlugin.Event.TEIID16032, proc.getFullName()));
continue;
}
if (isFuntion(proc)) {
buildFunction(schema.getName(), proc, complexTypes, functions, functionImports, csdlSchema);
}
else {
buildAction(schema.getName(), proc, complexTypes, actions, actionImports, csdlSchema);
}
}
csdlSchema.setComplexTypes(complexTypes);
csdlSchema.setFunctions(functions);
csdlSchema.setActions(actions);
csdlSchema.getEntityContainer().setFunctionImports(functionImports);
csdlSchema.getEntityContainer().setActionImports(actionImports);
}