class JdbcParamRepository implements WritableParamRepository, EditableParamRepository, ViewableParamRepository, InitializableComponent {

    @Override
    public ParameterBatchLoader batchLoad(final String parameterName) {
        return transactionRunner.run(new TransactionWrapper<ParameterBatchLoader>() {
            @Override
            public ParameterBatchLoader perform(QueryRunner queryRunner) {
                JdbcParameter metadata = dao.getParameterMetadata(queryRunner, parameterName);
                JdbcParameterEntryBatchLoader entryLoader = batchLoaderFactory.create(parameterName);

                return new ParameterBatchLoader(metadata, entryLoader);
            }
        });
    }

    public  JdbcParamRepository(TransactionRunner operationRunner, JdbcParameterEntryBatchLoaderFactory batchLoaderFactory,
            JdbcRepository dao, SchemaCreator schemaCreator);

}