package org.drools.grid.services.factory; import org.drools.grid.services.GridTopology; import org.drools.grid.services.configuration.DirectoryInstanceConfiguration; import org.drools.grid.services.configuration.ExecutionEnvironmentConfiguration; import org.drools.grid.services.configuration.GridTopologyConfiguration; import org.drools.grid.services.configuration.TaskServerInstanceConfiguration; public class GridTopologyFactory { public static GridTopology build(GridTopologyConfiguration gridConfiguration) { GridTopology topology = new GridTopology( gridConfiguration.getName() ); for ( DirectoryInstanceConfiguration directoryInstanceConfiguration : gridConfiguration.getDirectoryInstances() ) { topology.registerDirectoryInstance( directoryInstanceConfiguration.getName(), directoryInstanceConfiguration.getProvider() ); } for ( ExecutionEnvironmentConfiguration executionEnvironmentConfiguration : gridConfiguration.getExecutionEnvironments() ) { topology.registerExecutionEnvironment( executionEnvironmentConfiguration.getName(), executionEnvironmentConfiguration.getProvider() ); } for ( TaskServerInstanceConfiguration taskServerInstanceView : gridConfiguration.getTaskServers() ) { topology.registerTaskServerInstance( taskServerInstanceView.getName(), taskServerInstanceView.getProvider() ); } return topology; } }