legacy/src/main/java/thredds/cataloggen/CollectionLevelScanner.java
public InvCatalogImpl generateProxyDsResolverCatalog( ProxyDatasetHandler pdh )
  {
    if ( state != 2 ) throw new IllegalStateException( "Scan has not been performed." );
    if ( ! proxyDsHandlers.containsValue( pdh )) throw new IllegalArgumentException( "Unknown ProxyDatasetHandler.");

    // Create a skeleton catalog.
    InvCatalogImpl catalog = createSkeletonCatalog( currentLevel );
    InvDatasetImpl topDs = (InvDatasetImpl) catalog.getDatasets().get( 0 );

    // Find actual dataset in the list of atomic dataset InvCrawlablePairs.
    InvCrawlablePair actualDsInfo = pdh.getActualDataset( atomicDsInfo );
    if ( actualDsInfo == null )
      return catalog; // TODO Test this case in TestDataRootHandler.
    InvDatasetImpl actualInvDs = (InvDatasetImpl) actualDsInfo.getInvDataset();

    actualInvDs.setName( pdh.getActualDatasetName( actualDsInfo, topDs.getName() ) );

    // Add current InvDataset to top dataset.
    catalog.removeDataset( topDs );
    catalog.addDataset( actualInvDs );
    // topDs.addDataset( actualInvDs );

    // Finish catalog.
    catalog.finish();

    // Add any top-level metadata.
    this.addTopLevelMetadata( catalog, false );

    return catalog;
  }
public InvCatalogImpl generateProxyDsResolverCatalog( ProxyDatasetHandler pdh )
  {
    if ( state != 2 ) throw new IllegalStateException( "Scan has not been performed." );
    if ( ! proxyDsHandlers.containsValue( pdh )) throw new IllegalArgumentException( "Unknown ProxyDatasetHandler.");

    // Create a skeleton catalog.
    InvCatalogImpl catalog = createSkeletonCatalog( currentLevel );
    InvDatasetImpl topDs = (InvDatasetImpl) catalog.getDatasets().get( 0 );

    // Find actual dataset in the list of atomic dataset InvCrawlablePairs.
    InvCrawlablePair actualDsInfo = pdh.getActualDataset( atomicDsInfo );
    if ( actualDsInfo == null )
      return catalog; // TODO Test this case in TestDataRootHandler.
    InvDatasetImpl actualInvDs = (InvDatasetImpl) actualDsInfo.getInvDataset();

    actualInvDs.setName( pdh.getActualDatasetName( actualDsInfo, topDs.getName() ) );

    // Add current InvDataset to top dataset.
    catalog.removeDataset( topDs );
    catalog.addDataset( actualInvDs );
    // topDs.addDataset( actualInvDs );

    // Finish catalog.
    catalog.finish();

    // Add any top-level metadata.
    this.addTopLevelMetadata( catalog, false );

    return catalog;
  }
public InvCatalogImpl generateProxyDsResolverCatalog ( ProxyDatasetHandler pdh ) { if ( state != 2 ) throw new IllegalStateException ( "Scan has not been performed." ) ; if ( ! proxyDsHandlers . containsValue ( pdh ) ) throw new IllegalArgumentException ( "Unknown ProxyDatasetHandler." ) ; // Create a skeleton catalog. InvCatalogImpl catalog = createSkeletonCatalog ( currentLevel ) ; InvDatasetImpl topDs = ( InvDatasetImpl ) catalog . getDatasets ( ) . get ( 0 ) ; // Find actual dataset in the list of atomic dataset InvCrawlablePairs. InvCrawlablePair actualDsInfo = pdh . getActualDataset ( atomicDsInfo ) ; if ( actualDsInfo == null ) return catalog ; // TODO Test this case in TestDataRootHandler. InvDatasetImpl actualInvDs = ( InvDatasetImpl ) actualDsInfo . getInvDataset ( ) ; actualInvDs . setName ( pdh . getActualDatasetName ( actualDsInfo , topDs . getName ( ) ) ) ; // Add current InvDataset to top dataset. catalog . removeDataset ( topDs ) ; catalog . addDataset ( actualInvDs ) ; // topDs.addDataset( actualInvDs ); // Finish catalog. catalog . finish ( ) ; // Add any top-level metadata. this . addTopLevelMetadata ( catalog , false ) ; return catalog ; }
Generate the catalog for a resolver request of the given ProxyDatasetHandler.

@param pdh the ProxyDatasetHandler corresponding to the resolver request.
@return the catalog for a resolver request of the given proxy dataset.
@throws IllegalStateException if this collection has not yet been scanned.
@throws IllegalArgumentException if the given ProxyDatasetHandler is not known by this CollectionLevelScanner.
Generate the catalog for a resolver request of the given ProxyDatasetHandler .