public AbstractRequestBlock ( final BundleContext context, final Executor executor, final String mainTypeName, final String variablePrefix, final String blockPrefix, final boolean enableStatistics, final long period, final int requestSize, final long timeoutQuietPeriod, final boolean eager )
{
this.context = context;
this.variablePrefix = variablePrefix;
this.blockPrefix = blockPrefix;
this.timeoutQuietPeriod = timeoutQuietPeriod;
this.eager = eager;
this.period = period;
this.blockItemFactory = new DataItemFactory ( context, executor, blockPrefix );
this.settingVariablesItem = this.blockItemFactory.createInput ( "settingVariables", null );
if ( enableStatistics )
{
this.statistics = new Statistics ( this.blockItemFactory, requestSize );
}
else
{
this.statistics = null;
}
this.configurator = new RequestBlockConfigurator ( this, mainTypeName );
}