public void subset ( InvDataset ds ) { InvDatasetImpl dataset = ( InvDatasetImpl ) ds ; // Make all inherited metadata local. dataset . transferMetadata ( dataset , true ) ; topDataset = dataset ; datasets . clear ( ) ; // throw away the rest datasets . add ( topDataset ) ; // parent lookups need to be local //InvService service = dataset.getServiceDefault(); //if (service != null) LOOK // dataset.serviceName = service.getName(); dataset . dataType = dataset . getDataType ( ) ; // all properties need to be local // LOOK dataset.setPropertiesLocal( new ArrayList(dataset.getProperties())); // next part requires this before it dataset . setCatalog ( this ) ; dataset . parent = null ; // any referenced services need to be local List < InvService > services = new ArrayList < InvService > ( dataset . getServicesLocal ( ) ) ; findServices ( services , dataset ) ; dataset . setServicesLocal ( services ) ; finish ( ) ; }
Munge this catalog so the given dataset is the top catalog .