Revision 41251 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/main/java/org/gvsig/fmap/dal/feature/impl/DefaultFeatureRules.java
DefaultFeatureRules.java | ||
---|---|---|
30 | 30 |
import org.gvsig.fmap.dal.feature.Feature; |
31 | 31 |
import org.gvsig.fmap.dal.feature.FeatureRule; |
32 | 32 |
import org.gvsig.fmap.dal.feature.FeatureRules; |
33 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
|
34 |
import org.gvsig.fmap.dal.feature.exception.ValidateFeaturesException; |
|
35 |
import org.slf4j.Logger; |
|
36 |
import org.slf4j.LoggerFactory; |
|
33 | 37 |
|
34 | 38 |
public class DefaultFeatureRules extends ArrayList implements FeatureRules { |
35 |
|
|
39 |
|
|
40 |
private final static Logger logger = LoggerFactory.getLogger(DefaultFeatureRules.class); |
|
41 |
|
|
36 | 42 |
/** |
37 | 43 |
* |
38 | 44 |
*/ |
... | ... | |
59 | 65 |
return copy; |
60 | 66 |
} |
61 | 67 |
|
62 |
public void validate(Feature feature) { |
|
63 |
Iterator featureRules=iterator(); |
|
64 |
while (featureRules.hasNext()) { |
|
65 |
FeatureRule rule = (FeatureRule) featureRules.next(); |
|
66 |
try { |
|
67 |
rule.validate(feature, ((DefaultFeature)feature).getStore()); |
|
68 |
} catch (DataException e) { |
|
69 |
e.printStackTrace(); |
|
70 |
} |
|
71 |
} |
|
68 |
/** |
|
69 |
* @deprecated use validate(Feature feature, int mode) |
|
70 |
* @param feature |
|
71 |
* @throws DataException |
|
72 |
*/ |
|
73 |
public void validate(Feature feature) throws DataException { |
|
74 |
logger.warn("Calling deprecated method validate without mode."); |
|
75 |
FeatureStore store = ((DefaultFeature)feature).getStore(); |
|
76 |
Iterator featureRules=iterator(); |
|
77 |
while (featureRules.hasNext()) { |
|
78 |
FeatureRule rule = (FeatureRule) featureRules.next(); |
|
79 |
rule.validate(feature, store); |
|
80 |
} |
|
72 | 81 |
|
73 | 82 |
} |
74 | 83 |
|
84 |
public void validate(Feature feature, int mode) throws DataException { |
|
85 |
FeatureStore store = ((DefaultFeature)feature).getStore(); |
|
86 |
Iterator featureRules=iterator(); |
|
87 |
while (featureRules.hasNext()) { |
|
88 |
FeatureRule rule = (FeatureRule) featureRules.next(); |
|
89 |
if( rule.checkAtFinishEditing() && mode == Feature.FINISH_EDITING ) { |
|
90 |
rule.validate(feature, store); |
|
91 |
} |
|
92 |
if( rule.checkAtUpdate() && mode == Feature.UPDATE ) { |
|
93 |
rule.validate(feature, store); |
|
94 |
} |
|
95 |
} |
|
75 | 96 |
|
97 |
} |
|
76 | 98 |
|
77 | 99 |
|
100 |
|
|
101 |
|
|
78 | 102 |
} |
Also available in: Unified diff