public InitializedBuilder initialize()

in runtime/src/main/java/com/google/cloud/verticals/foundations/dataharmonization/init/Engine.java [262:312]


    public InitializedBuilder initialize(MetaData metaData) throws IOException {
      InitializedBuilder initializedBuilder = new InitializedBuilder(wrappers);
      // Set noDataInException flag.
      metaData.setSerializableMeta(NO_DATA_IN_EX_METAKEY, noDataInExceptions);
      initializedBuilder.metaData = metaData;
      initializedBuilder.importProcessor = new DefaultImportProcessor();
      // Run mock config to construct map from original function to mocks
      // information stored into registries
      if (!mockConfigs.isEmpty()) {
        initializedBuilder.registries = constructRegistriesFromMock();
      } else {
        initializedBuilder.registries = new DefaultRegistries();
      }

      defaultLoaders.forEach(initializedBuilder.registries.getLoaderRegistry()::register);

      // Load default main plugins, which allows mock config to be initialized.
      loadPlugins(initializedBuilder.registries, defaultMainPlugins, initializedBuilder.metaData);

      // Initialize mock config.
      if (!mockConfigs.isEmpty()) {
        loadPlugins(initializedBuilder.registries, defaultMockPlugins, initializedBuilder.metaData);
        for (ConfigExtractorBase mockConfig : mockConfigs) {
          mockConfig.initialize(
              initializedBuilder.registries,
              initializedBuilder.metaData,
              initializedBuilder.importProcessor);
        }
      }

      // Load the side input functions.
      if (!sideInputs.isEmpty()) {
        loadSideInputs(
            initializedBuilder.registries,
            initializedBuilder.metaData,
            initializedBuilder.importProcessor,
            sideInputs);
      }

      initializedBuilder.mainConfigProto =
          mainConfig.initialize(
              initializedBuilder.registries,
              initializedBuilder.metaData,
              initializedBuilder.importProcessor);
      initializedBuilder.packageContext =
          new PackageContext(
              ImmutableSet.of(initializedBuilder.mainConfigProto.getPackageName()),
              initializedBuilder.mainConfigProto.getPackageName(),
              mainConfig.getImportPath());
      return initializedBuilder;
    }