public AggregationOptions( final AggregationOptions options, final ProjectRelationshipFilter filter ) { this.filter = filter; this.processIncomplete = options.processIncompleteSubgraphs(); this.processVariable = options.processVariableSubgraphs(); this.discoveryEnabled = options.isDiscoveryEnabled(); this.discoverySource = options.getDiscoverySource(); this.discoveryTimeoutMillis = options.getDiscoveryTimeoutMillis(); this.dc = options.getDiscoveryConfig(); }
private AggregationOptions createAggregationOptions( final AbstractGraphRequest recipe, final ProjectRelationshipFilter baseFilter ) throws CartoDataException, CartoRequestException { final AggregationOptions options = new AggregationOptions(); options.setDiscoveryEnabled( recipe.isResolve() ); options.setFilter( recipe.buildFilter( baseFilter ) ); options.setDiscoveryConfig( recipe.getDiscoveryConfig() ); options.setProcessIncompleteSubgraphs( true ); options.setProcessVariableSubgraphs( true ); return options; }
.withFilter( aggOptions.getFilter() ) .withMutator( desc.getMutatorInstance() ) .withSelections( recipe.getVersionSelections() ) if ( !aggOptions.isDiscoveryEnabled() ) if ( aggOptions.isDiscoveryEnabled() )
private Set<DiscoveryTodo> discover( final Set<DiscoveryTodo> todos, final AggregationOptions config, final Set<ProjectVersionRef> missing, final Set<ProjectVersionRef> seen, final int pass ) throws CartoDataException { logger.info( "Starting pass: {}", pass ); logger.debug( "{}. Performing discovery and cycle-detection on {} missing subgraphs:\n {}", pass, todos.size(), new JoinString( "\n ", todos ) ); final Set<DiscoveryRunnable> runnables = executeTodoBatch( todos, config, missing, seen, /*cycleParticipants,*/pass ); logger.debug( "{}. Accounting for discovery results. Before discovery, these were missing:\n\n {}\n\n", pass, new JoinString( "\n ", missing ) ); final Map<ProjectVersionRef, DiscoveryTodo> nextTodos = new HashMap<ProjectVersionRef, DiscoveryTodo>(); for ( final DiscoveryRunnable r : runnables ) { if ( !processDiscoveryOutput( r, nextTodos, config.getDiscoveryConfig(), seen, pass ) ) { markMissing( r, missing, pass ); } } logger.info( "{}. After discovery, {} are missing", pass, missing.size() ); logger.debug( "Missing:\n\n {}\n\n", new JoinString( "\n ", missing ) ); return new HashSet<DiscoveryTodo>( nextTodos.values() ); }
throws CartoDataException if ( graph != null && config.isDiscoveryEnabled() )
.withFilter( aggOptions.getFilter() ) .withMutator( desc.getMutatorInstance() ) .withSelections( recipe.getVersionSelections() ) if ( !aggOptions.isDiscoveryEnabled() ) if ( aggOptions.isDiscoveryEnabled() )
private Set<DiscoveryTodo> discover( final Set<DiscoveryTodo> todos, final AggregationOptions config, final Set<ProjectVersionRef> missing, final Map<ProjectVersionRef, Set<ProjectRef>> seen, final int pass ) throws CartoDataException { logger.info( "Starting pass: {}", pass ); logger.debug( "{}. Performing discovery and cycle-detection on {} missing subgraphs:\n {}", pass, todos.size(), new JoinString( "\n ", todos ) ); final Set<DiscoveryRunnable> runnables = executeTodoBatch( todos, config, missing, seen, /*cycleParticipants,*/pass ); logger.debug( "{}. Accounting for discovery results. Before discovery, these were missing:\n\n {}\n\n", pass, new JoinString( "\n ", missing ) ); final Map<ProjectVersionRef, DiscoveryTodo> nextTodos = new HashMap<ProjectVersionRef, DiscoveryTodo>(); for ( final DiscoveryRunnable r : runnables ) { if ( !processDiscoveryOutput( r, nextTodos, config.getDiscoveryConfig(), seen, pass ) ) { markMissing( r, missing, pass ); } } logger.info( "{}. After discovery, {} are missing", pass, missing.size() ); logger.debug( "Missing:\n\n {}\n\n", new JoinString( "\n ", missing ) ); return new HashSet<DiscoveryTodo>( nextTodos.values() ); }
throws CartoDataException if ( graph != null && config.isDiscoveryEnabled() )
public AggregationOptions( final AggregationOptions options, final ProjectRelationshipFilter filter ) { this.filter = filter; this.processIncomplete = options.processIncompleteSubgraphs(); this.processVariable = options.processVariableSubgraphs(); this.discoveryEnabled = options.isDiscoveryEnabled(); this.discoverySource = options.getDiscoverySource(); this.discoveryTimeoutMillis = options.getDiscoveryTimeoutMillis(); this.dc = options.getDiscoveryConfig(); }
private AggregationOptions createAggregationOptions( final AbstractGraphRequest recipe, final ProjectRelationshipFilter baseFilter ) throws CartoDataException, CartoRequestException { final AggregationOptions options = new AggregationOptions(); options.setDiscoveryEnabled( recipe.isResolve() ); options.setFilter( recipe.buildFilter( baseFilter ) ); options.setDiscoveryConfig( recipe.getDiscoveryConfig() ); options.setProcessIncompleteSubgraphs( true ); options.setProcessVariableSubgraphs( true ); return options; }
final DiscoveryConfig discoveryConfig = config.getDiscoveryConfig();
final DiscoveryConfig discoveryConfig = config.getDiscoveryConfig();