#5297 Move monitor thread api to super interface, Implement monitor feedback timeout
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / service / ITestService.java
1 // $Id$
2 /**
3 * Copyright (C) 2015 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
9 */
10 package eu.etaxonomy.cdm.api.service;
11
12 import java.util.List;
13 import java.util.UUID;
14
15 import eu.etaxonomy.cdm.api.service.dto.CdmEntityIdentifier;
16 import eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor;
17
18 /**
19 * Service interface for the testing of client applications using the service
20 * layer remotely (like the Taxonomic Editor)
21 *
22 * @author cmathew
23 * @date 26 Jun 2015
24 *
25 */
26 public interface ITestService {
27
28
29 public void waitFor(long timeToWaitInMs) throws InterruptedException ;
30
31 public UpdateResult returnResult(UpdateResult result);
32
33 public UpdateResult throwException(Exception ex);
34
35 public UpdateResult addChild(CdmEntityIdentifier taxonNodeCei);
36
37
38 /**
39 * @param monitor
40 * @return
41 */
42 public String longRunningMethod(IRemotingProgressMonitor monitor, RuntimeException ex, List<String> feedbacks, long feedbackWaitTimeout);
43
44
45 /**
46 * @return
47 */
48 public UUID monitLongRunningMethod(RuntimeException ex, List<String> feedbacks, long feedbackWaitTimeout);
49
50
51
52
53
54 }