capture
[rrq/gorite.git] / com / intendico / data / Inquirable.java
1 /*********************************************************************
2 Copyright 2012, Ralph Ronnquist.
3
4 This file is part of GORITE.
5
6 GORITE is free software: you can redistribute it and/or modify it
7 under the terms of the Lesser GNU General Public License as published
8 by the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 GORITE is distributed in the hope that it will be useful, but WITHOUT
12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
14 License for more details.
15
16 You should have received a copy of the Lesser GNU General Public
17 License along with GORITE.  If not, see <http://www.gnu.org/licenses/>.
18 **********************************************************************/
19
20 package com.intendico.data;
21
22 /**
23  * This interface defines the requirements of an inquirable data
24  * structure, which basically is a named {@link Query} factory.
25  */
26 public interface Inquirable {
27
28     /**
29      * Interface method to obtain the name of this Inquirable.
30      */
31     public String getName();
32
33     /**
34      * Interface method for providing an access {@link Query} given a
35      * collection of values and {@link Ref} objects.
36      */
37     public Query get(Object/*...*/ [] arguments) throws Exception ;
38
39 }