1 /*
2 * Copyright (c) 2003-2008 by Cosylab d. d.
3 *
4 * This file is part of CosyBeans.
5 *
6 * CosyBeans is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * CosyBeans is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with CosyBeans. If not, see <http://www.gnu.org/licenses/>.
18 */
19
20 package com.cosylab.gui.displayers;
21
22 import com.cosylab.util.CommonException;
23
24
25 /**
26 * <p>
27 * <code>NumericAsynchronousConsumer</code> is consumer, which receives update
28 * request and returns some time later respons with detail information about
29 * request. Update method itself returns immediatelly.
30 * </p>
31 *
32 * <p>
33 * This asynchronous consumer is specialized for consumers, which will use
34 * target value as <code>String</code>.
35 * </p>
36 *
37 * <p>
38 * This interface is intended to be used by <code>DataSource</code>. Displayer
39 * which want to notify data source about value changes done by user need to
40 * implement <code>DataSource</code> which supports this type of consumer.
41 * </p>
42 *
43 * @author <a href="mailto:igor.kriznar@cosylab.com">Igor Kriznar</a>
44 * @version $Id: AsynchronousNumberConsumer.java,v 1.3 2008-04-22 12:31:02 jbobnar Exp $
45 *
46 * @see com.cosylab.gui.displayers.UpdateRequest#getTargetValue()
47 * @since Dec 3, 2003.
48 */
49 public interface AsynchronousNumberConsumer extends DataConsumer
50 {
51 /**
52 * Calls asynchronous update on this data consumer. Data consumer must
53 * return this call as soon as possible and inform
54 * <code>UpdateRequestListener</code> inside <code>UpdateRequest</code>
55 * about response.
56 *
57 * @param request the update request, holds
58 * <code>UpdateRequestlistener</code> which asynchronously receives
59 * reponse
60 */
61 public void updateAcynchronously(UpdateRequest request)
62 throws CommonException;
63 }
64
65 /* __oOo__ */