Subversion Repositories SmartDukaan

Rev

Rev 323 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
70 naveen 1
/**
2
 * 
3
 */
4
package in.shop2020.metamodel.util;
5
 
6
import in.shop2020.metamodel.definitions.CMPRuleDefinition;
7
import in.shop2020.metamodel.definitions.CMPSlideRuleDefinition;
8
import in.shop2020.metamodel.definitions.Catalog;
9
import in.shop2020.metamodel.definitions.DefinitionsContainer;
10
import in.shop2020.metamodel.definitions.SlideDefinition;
11
 
12
/**
13
 * Utility class that supports core CMPSlideRuleDefinition class. All related 
14
 * objects are fetched from database and aggregated here.
15
 * 
16
 * @author naveen
17
 *
18
 */
19
public class ExpandedCMPSlideRuleDefinition extends CMPSlideRuleDefinition {
20
 
21
	/**
22
	 * 
23
	 */
24
	private static final long serialVersionUID = 1L;
25
 
26
	/**
27
	 * Expanded from SlideDefinition ID
28
	 */
29
	private SlideDefinition slideDefinition;
30
 
31
	/**
32
	 * Expanded from RuleDefinition ID
33
	 */
34
	private CMPRuleDefinition cmpRuleDefinition;
35
 
36
	/**
37
	 * Expands references in CMPSlideRuleDefinition
38
	 * 
39
	 * @param cmpSlideRuleDefinition
40
	 * @throws Exception 
41
	 */
42
	public ExpandedCMPSlideRuleDefinition(
43
			CMPSlideRuleDefinition cmpSlideRuleDefinition) throws Exception {
44
		super(cmpSlideRuleDefinition.getSlideDefinitionID(), 
45
				cmpSlideRuleDefinition.getRuleDefinitionID());
46
 
47
		long slideDefinitionID = cmpSlideRuleDefinition.getSlideDefinitionID();
48
		long ruleDefinitionID = cmpSlideRuleDefinition.getRuleDefinitionID();
49
 
50
		// Copy rest of the properties
51
		this.setDescription(cmpSlideRuleDefinition.getDescription());
52
 
53
		DefinitionsContainer defs = 
54
			Catalog.getInstance().getDefinitionsContainer();
55
 
56
		this.slideDefinition = defs.getSlideDefinition(slideDefinitionID);
57
		this.cmpRuleDefinition = defs.getComparisonRuleDefinition(
58
				ruleDefinitionID);
59
	}
60
 
61
	/**
62
	 * @return the slideDefinition
63
	 */
64
	public SlideDefinition getSlideDefinition() {
65
		return slideDefinition;
66
	}
67
 
68
	/**
69
	 * @return the cmpRuleDefinition
70
	 */
71
	public CMPRuleDefinition getCMPRuleDefinition() {
72
		return cmpRuleDefinition;
73
	}
74
 
75
}