code: public Index createResourceIndex() throws Exception {
          if (!ResourceIndex.INSTANCE.isLoaded()) {
              // Load resource index defined by the BELFramework instance
              final SystemConfiguration sysConfig = getSystemConfiguration();
              final String resourceIndexURL = sysConfig.getResourceIndexURL();
              File indexFile = new File(resourceIndexURL);
              if (!indexFile.exists() || !indexFile.canRead()) {
                  // try the index as an online resource.
                  ResolvedResource resolvedResource = cacheService
                          .resolveResource(ResourceType.RESOURCE_INDEX,
                                  resourceIndexURL);
                  indexFile = resolvedResource.getCacheResourceCopy();
              }
  
              ResourceIndex.INSTANCE.loadIndex(indexFile);
          }
          return ResourceIndex.INSTANCE.getIndex();
      }
docs: Create an {@link Index} instance
  @return
  @throws Exception