use of org.finos.legend.engine.language.pure.compiler.toPureGraph.PackageableElementFirstPassBuilder in project legend-engine by finos.
the class ServiceModeling method compileService.
public Root_meta_legend_service_metamodel_Service compileService(Service service, CompileContext compileContext) {
// If we're recompiling an existing service remove the original first
Package pkg = compileContext.pureModel.getOrCreatePackage(service._package);
org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.PackageableElement existing = pkg._children().detect(c -> c._name().equals(service.name));
if (existing != null) {
pkg._childrenRemove(existing);
}
Root_meta_legend_service_metamodel_Service compiledService = (Root_meta_legend_service_metamodel_Service) service.accept(new PackageableElementFirstPassBuilder(compileContext));
service.accept(new PackageableElementSecondPassBuilder(compileContext));
return compiledService;
}
Aggregations