test_class.declarator: testTransactionManager
test_class.modifier: @Autowired
      private
test_class.original_string: @Autowired
      private TestTransactionManager testTransactionManager;
test_class.type: TestTransactionManager
test_class.var_name: testTransactionManager
test_class.declarator: flowRepository
test_class.modifier: @Autowired
      private
test_class.original_string: @Autowired
      private FlowRepositoryImpl flowRepository;
test_class.type: FlowRepositoryImpl
test_class.var_name: flowRepository
test_class.declarator: allFlows
test_class.modifier: private
test_class.original_string: private FlowFinderCriteria allFlows;
test_class.type: FlowFinderCriteria
test_class.var_name: allFlows
test_class.file: commons/flow/src/test/java/org/openehealth/ipf/commons/flow/repository/FlowRepositoryImplTest.java
test_class.identifier: FlowRepositoryImplTest
test_case.body: @Test
      public void testLock() throws Exception {
          Flow flow = createFlow("blah");
          flowRepository.persist(flow);
          Long id = flow.getIdentifier();
          testTransactionManager.commitTransaction();
          testTransactionManager.beginTransaction();
          try {
              flowRepository.lock(0L);
              fail("found non-existing flow");
          } catch (FlowException e) {
              // expected
          }
          flow = flowRepository.lock(id);
          flow.setAckCountExpected(111);
          testTransactionManager.commitTransaction();
          testTransactionManager.beginTransaction();
          flow = flowRepository.find(id);
          assertEquals(111, flow.getAckCountExpected());
      }
test_case.class_method_signature: FlowRepositoryImplTest.testLock()
test_case.full_signature: @Test public void testLock()
test_case.identifier: testLock
test_case.invocations: createFlow persist getIdentifier commitTransaction beginTransaction lock fail lock setAckCountExpected commitTransaction beginTransaction find assertEquals getAckCountExpected
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testLock()
focal_class.declarator: LOG = LoggerFactory.getLogger(FlowRepositoryImpl.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOG = LoggerFactory.getLogger(FlowRepositoryImpl.class);
focal_class.type: Logger
focal_class.var_name: LOG
focal_class.declarator: sequenceRepository
focal_class.modifier: @Autowired(required = false)
      private
focal_class.original_string: @Autowired(required = false)
      private SequenceRepository sequenceRepository;
focal_class.type: SequenceRepository
focal_class.var_name: sequenceRepository
focal_class.declarator: flowSearchCallback
focal_class.modifier: @Autowired(required = false)
      private final
focal_class.original_string: @Autowired(required = false)
      private final FlowSearchCallback flowSearchCallback;
focal_class.type: FlowSearchCallback
focal_class.var_name: flowSearchCallback
focal_class.file: commons/flow/src/main/java/org/openehealth/ipf/commons/flow/repository/FlowRepositoryImpl.java
focal_class.identifier: FlowRepositoryImpl
focal_class.interfaces: implements FlowRepository
focal_class.class_method_signature: FlowRepositoryImpl.FlowRepositoryImpl()
focal_class.full_signature: public  FlowRepositoryImpl()
focal_class.identifier: FlowRepositoryImpl
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  FlowRepositoryImpl()
focal_class.class_method_signature: FlowRepositoryImpl.initDao()
focal_class.full_signature: @Override public void initDao()
focal_class.identifier: initDao
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void initDao()
focal_class.class_method_signature: FlowRepositoryImpl.persist(Flow flow)
focal_class.full_signature: @Override public void persist(Flow flow)
focal_class.identifier: persist
focal_class.modifiers: @Override public
focal_class.parameters: (Flow flow)
focal_class.return: void
focal_class.signature: void persist(Flow flow)
focal_class.class_method_signature: FlowRepositoryImpl.merge(Flow flow)
focal_class.full_signature: @Override public void merge(Flow flow)
focal_class.identifier: merge
focal_class.modifiers: @Override public
focal_class.parameters: (Flow flow)
focal_class.return: void
focal_class.signature: void merge(Flow flow)
focal_class.class_method_signature: FlowRepositoryImpl.remove(Flow flow)
focal_class.full_signature: @Override public void remove(Flow flow)
focal_class.identifier: remove
focal_class.modifiers: @Override public
focal_class.parameters: (Flow flow)
focal_class.return: void
focal_class.signature: void remove(Flow flow)
focal_class.class_method_signature: FlowRepositoryImpl.removeAll(Collection<Flow> flows)
focal_class.full_signature:  void removeAll(Collection<Flow> flows)
focal_class.identifier: removeAll
focal_class.parameters: (Collection<Flow> flows)
focal_class.return: void
focal_class.signature: void removeAll(Collection<Flow> flows)
focal_class.class_method_signature: FlowRepositoryImpl.find(Long id)
focal_class.full_signature: @Override public Flow find(Long id)
focal_class.identifier: find
focal_class.modifiers: @Override public
focal_class.parameters: (Long id)
focal_class.return: Flow
focal_class.signature: Flow find(Long id)
focal_class.class_method_signature: FlowRepositoryImpl.lock(Long id)
focal_class.full_signature: @Override public Flow lock(Long id)
focal_class.identifier: lock
focal_class.modifiers: @Override public
focal_class.parameters: (Long id)
focal_class.return: Flow
focal_class.signature: Flow lock(Long id)
focal_class.class_method_signature: FlowRepositoryImpl.purgeFlows(FlowPurgeCriteria purgeCriteria)
focal_class.full_signature: @Override public int purgeFlows(FlowPurgeCriteria purgeCriteria)
focal_class.identifier: purgeFlows
focal_class.modifiers: @Override public
focal_class.parameters: (FlowPurgeCriteria purgeCriteria)
focal_class.return: int
focal_class.signature: int purgeFlows(FlowPurgeCriteria purgeCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.findFlows(final FlowFinderCriteria finderCriteria)
focal_class.full_signature: @Override @SuppressWarnings("unchecked") public List<Flow> findFlows(final FlowFinderCriteria finderCriteria)
focal_class.identifier: findFlows
focal_class.modifiers: @Override @SuppressWarnings("unchecked") public
focal_class.parameters: (final FlowFinderCriteria finderCriteria)
focal_class.return: List<Flow>
focal_class.signature: List<Flow> findFlows(final FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.findErrorFlows(final FlowFinderCriteria finderCriteria)
focal_class.full_signature: @Override @SuppressWarnings("unchecked") public List<Flow> findErrorFlows(final FlowFinderCriteria finderCriteria)
focal_class.identifier: findErrorFlows
focal_class.modifiers: @Override @SuppressWarnings("unchecked") public
focal_class.parameters: (final FlowFinderCriteria finderCriteria)
focal_class.return: List<Flow>
focal_class.signature: List<Flow> findErrorFlows(final FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.findUnackFlows(final FlowFinderCriteria finderCriteria)
focal_class.full_signature: @Override @SuppressWarnings("unchecked") public List<Flow> findUnackFlows(final FlowFinderCriteria finderCriteria)
focal_class.identifier: findUnackFlows
focal_class.modifiers: @Override @SuppressWarnings("unchecked") public
focal_class.parameters: (final FlowFinderCriteria finderCriteria)
focal_class.return: List<Flow>
focal_class.signature: List<Flow> findUnackFlows(final FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.findFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.full_signature: @Override @SuppressWarnings("unchecked") public List<Long> findFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.identifier: findFlowIds
focal_class.modifiers: @Override @SuppressWarnings("unchecked") public
focal_class.parameters: (final FlowFinderCriteria finderCriteria)
focal_class.return: List<Long>
focal_class.signature: List<Long> findFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.findErrorFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.full_signature: @Override @SuppressWarnings("unchecked") public List<Long> findErrorFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.identifier: findErrorFlowIds
focal_class.modifiers: @Override @SuppressWarnings("unchecked") public
focal_class.parameters: (final FlowFinderCriteria finderCriteria)
focal_class.return: List<Long>
focal_class.signature: List<Long> findErrorFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.findUnackFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.full_signature: @Override @SuppressWarnings("unchecked") public List<Long> findUnackFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.identifier: findUnackFlowIds
focal_class.modifiers: @Override @SuppressWarnings("unchecked") public
focal_class.parameters: (final FlowFinderCriteria finderCriteria)
focal_class.return: List<Long>
focal_class.signature: List<Long> findUnackFlowIds(final FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.findPurgeCandidates(final FlowPurgeCriteria purgeCriteria)
focal_class.full_signature: @SuppressWarnings("unchecked") private List<Flow> findPurgeCandidates(final FlowPurgeCriteria purgeCriteria)
focal_class.identifier: findPurgeCandidates
focal_class.modifiers: @SuppressWarnings("unchecked") private
focal_class.parameters: (final FlowPurgeCriteria purgeCriteria)
focal_class.return: List<Flow>
focal_class.signature: List<Flow> findPurgeCandidates(final FlowPurgeCriteria purgeCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.execute(FlowFinderCriteria flowFinderCriteria,
              DetachedCriteria flowStatusCriteria, Session session,
              boolean idProjection)
focal_class.full_signature: private Object execute(FlowFinderCriteria flowFinderCriteria,
              DetachedCriteria flowStatusCriteria, Session session,
              boolean idProjection)
focal_class.identifier: execute
focal_class.modifiers: private
focal_class.parameters: (FlowFinderCriteria flowFinderCriteria,
              DetachedCriteria flowStatusCriteria, Session session,
              boolean idProjection)
focal_class.return: Object
focal_class.signature: Object execute(FlowFinderCriteria flowFinderCriteria,
              DetachedCriteria flowStatusCriteria, Session session,
              boolean idProjection)
focal_class.class_method_signature: FlowRepositoryImpl.execute(FlowPurgeCriteria flowPurgeCriteria,
              DetachedCriteria flowStatusCriteria, Session session)
focal_class.full_signature: private Object execute(FlowPurgeCriteria flowPurgeCriteria,
              DetachedCriteria flowStatusCriteria, Session session)
focal_class.identifier: execute
focal_class.modifiers: private
focal_class.parameters: (FlowPurgeCriteria flowPurgeCriteria,
              DetachedCriteria flowStatusCriteria, Session session)
focal_class.return: Object
focal_class.signature: Object execute(FlowPurgeCriteria flowPurgeCriteria,
              DetachedCriteria flowStatusCriteria, Session session)
focal_class.class_method_signature: FlowRepositoryImpl.createFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.full_signature: private static DetachedCriteria createFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.identifier: createFlowsCriteria
focal_class.modifiers: private static
focal_class.parameters: (FlowFinderCriteria finderCriteria)
focal_class.return: DetachedCriteria
focal_class.signature: DetachedCriteria createFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.createErrorFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.full_signature: private static DetachedCriteria createErrorFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.identifier: createErrorFlowsCriteria
focal_class.modifiers: private static
focal_class.parameters: (FlowFinderCriteria finderCriteria)
focal_class.return: DetachedCriteria
focal_class.signature: DetachedCriteria createErrorFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.createUnackFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.full_signature: private static DetachedCriteria createUnackFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.identifier: createUnackFlowsCriteria
focal_class.modifiers: private static
focal_class.parameters: (FlowFinderCriteria finderCriteria)
focal_class.return: DetachedCriteria
focal_class.signature: DetachedCriteria createUnackFlowsCriteria(FlowFinderCriteria finderCriteria)
focal_class.class_method_signature: FlowRepositoryImpl.createPurgeCriteria(FlowPurgeCriteria purgeCriteria)
focal_class.full_signature: private static DetachedCriteria createPurgeCriteria(FlowPurgeCriteria purgeCriteria)
focal_class.identifier: createPurgeCriteria
focal_class.modifiers: private static
focal_class.parameters: (FlowPurgeCriteria purgeCriteria)
focal_class.return: DetachedCriteria
focal_class.signature: DetachedCriteria createPurgeCriteria(FlowPurgeCriteria purgeCriteria)
focal_class.superclass: extends HibernateDaoSupport
focal_method.body: @Override
      public Flow lock(Long id) {
          try {
              return (Flow) getHibernateTemplate().load(Flow.class, id, LockMode.UPGRADE);
          } catch (HibernateObjectRetrievalFailureException e) {
              throw new FlowException("no flow with id " + id);
          }
      }
focal_method.class_method_signature: FlowRepositoryImpl.lock(Long id)
focal_method.full_signature: @Override public Flow lock(Long id)
focal_method.identifier: lock
focal_method.invocations: load getHibernateTemplate
focal_method.modifiers: @Override public
focal_method.parameters: (Long id)
focal_method.return: Flow
focal_method.signature: Flow lock(Long id)