Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.fmap.dal / org.gvsig.fmap.dal.api / src / main / java / org / gvsig / fmap / dal / feature / ForeingKey.java @ 44338

History | View | Annotate | Download (2.02 KB)

1
package org.gvsig.fmap.dal.feature;
2

    
3
import java.util.List;
4
import org.gvsig.expressionevaluator.Expression;
5
import org.gvsig.expressionevaluator.SymbolTable;
6
import org.gvsig.fmap.dal.StoresRepository;
7
import org.gvsig.fmap.dal.expressionevaluator.FeatureSymbolTable;
8
import org.gvsig.tools.dispose.Disposable;
9
import org.gvsig.tools.dynobject.DynObjectValueItem;
10

    
11
/**
12
 *
13
 * @author jjdelcerro
14
 */
15
public interface ForeingKey {
16

    
17
    public static final int MAX_AVAILABLE_VALUES = 1000;
18
    
19
    public interface ContextForeingKey extends Disposable {
20
        public StoresRepository getStoresRepository();
21
        public FeatureStore getFeatureStore();
22
        public Expression getLabelExpression();
23
        public FeatureSymbolTable getFeatureSymbolTable();
24
        public SymbolTable getSymbolTable();
25
    }
26
    
27
    public ContextForeingKey createContext();
28
    
29
    public boolean isForeingKey();
30

    
31
    /**
32
     * Indicates whether the foreign key reference to a closed list of values.
33
     * 
34
     * @return 
35
     */
36
    public boolean isClosedList();
37
    
38
    public String getTableName();
39

    
40
    public String getCodeName();
41

    
42
    public String getLabelFormula();
43

    
44
    
45
    public boolean isEmpty();
46

    
47
    public Object getCode(ContextForeingKey context, Feature feature);
48

    
49
    public Feature getFeature(ContextForeingKey context, Object codeValue);
50

    
51
    public FeatureStore getFeatureStore(ContextForeingKey context);
52

    
53
    public FeatureType getFeatureType(ContextForeingKey context);
54

    
55
    public List<Feature> getFeatures(ContextForeingKey context);
56

    
57
    public String getLabel(ContextForeingKey context, Object codeValue);
58

    
59
    public String getLabel(ContextForeingKey context, Feature feature);
60

    
61
    public Expression getLabelExpression(ContextForeingKey context);
62

    
63
    public FeatureQuery getQuery(ContextForeingKey context, Object codeValue);
64

    
65
    public StoresRepository getStoresRepository(ContextForeingKey context);
66

    
67
    public DynObjectValueItem[] getAvailableValues(ContextForeingKey context);
68
    
69
    public String getLabelForValue(Object value);
70

    
71
    
72
}