View Javadoc

1   /*
2    * Copyright (C) 2007 ETH Zurich
3    *
4    * This file is part of Fosstrak (www.fosstrak.org).
5    *
6    * Fosstrak is free software; you can redistribute it and/or
7    * modify it under the terms of the GNU Lesser General Public
8    * License version 2.1, as published by the Free Software Foundation.
9    *
10   * Fosstrak is distributed in the hope that it will be useful,
11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13   * Lesser General Public License for more details.
14   *
15   * You should have received a copy of the GNU Lesser General Public
16   * License along with Fosstrak; if not, write to the Free
17   * Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18   * Boston, MA  02110-1301  USA
19   */
20  
21  package org.fosstrak.epcis.queryclient;
22  
23  import org.fosstrak.epcis.model.ImplementationException;
24  import org.fosstrak.epcis.model.QueryResults;
25  import org.fosstrak.epcis.model.QueryTooLargeException;
26  
27  /**
28   * @author Marco Steybe
29   */
30  public interface QueryCallbackInterface {
31  
32      /**
33       * Performs a callback for a standing query. When the callback returns, the
34       * given QueryResults object will be populated with a result of a standing
35       * query.
36       * 
37       * @param resultData
38       *            The QueryResults object to be populated.
39       */
40      void callbackResults(QueryResults resultData);
41  
42      /**
43       * Performs a callback for a standing query when the query threw a
44       * QueryTooLargeException. When the callback returns, the given
45       * QueryTooLargeException object will be populated with the corresponding
46       * exception.
47       * 
48       * @param e
49       *            The QueryTooLargeException to be populated
50       */
51      void callbackQueryTooLargeException(QueryTooLargeException e);
52  
53      /**
54       * Performs a callback for a standing query when the query threw a
55       * ImplementationException. When the callback returns, the given
56       * ImplementationException object will be populated with the corresponding
57       * exception.
58       * 
59       * @param e
60       *            The ImplementationException to be populated
61       */
62      void callbackImplementationException(ImplementationException e);
63  }