Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
62 naveen 1
/**
2
 * 
3
 */
4
package in.shop2020.metamodel.util;
5
 
6
import in.shop2020.metamodel.definitions.Catalog;
7
import in.shop2020.metamodel.definitions.DefinitionsContainer;
8
import in.shop2020.metamodel.definitions.FacetDefinition;
1314 rajveer 9
import in.shop2020.metamodel.definitions.FacetSlideDefinition;
62 naveen 10
import in.shop2020.metamodel.definitions.FeatureDefinition;
11
import in.shop2020.metamodel.definitions.RuleDefinition;
12
import in.shop2020.metamodel.definitions.SlideDefinition;
13
 
14
/**
1314 rajveer 15
 * Utility class to support FacetSlideDefinition class. All references are expanded 
62 naveen 16
 * into respective detail objects
17
 * 
1314 rajveer 18
 * @author rajveer
62 naveen 19
 *
20
 */
1314 rajveer 21
public class ExpandedFacetSlideDefinition extends FacetSlideDefinition {
62 naveen 22
 
23
	/**
24
	 * Expanded slide definition ID 
25
	 */
26
	private SlideDefinition slideDefinition;
27
 
28
	/**
1314 rajveer 29
	 * Expanded IR Data Rule ID
62 naveen 30
	 */
1314 rajveer 31
	private RuleDefinition irDataRuleDefinition;
62 naveen 32
 
33
	/**
1314 rajveer 34
	 * Expanded IR Meta Data Rule ID
35
	 */
36
	private RuleDefinition irMetaDataRuleDefinition;
37
 
38
	/**
62 naveen 39
	 * 
40
	 */
41
	private static final long serialVersionUID = 1L;
42
 
43
	/**
44
	 * Constructs Expanded version from FacetDefintion instance
45
	 * 
1314 rajveer 46
	 * @param facetSlideDefinition
62 naveen 47
	 * @throws Exception 
48
	 */
1314 rajveer 49
	public ExpandedFacetSlideDefinition(FacetSlideDefinition facetSlideDefinition) 
62 naveen 50
		throws Exception {
1314 rajveer 51
		super(facetSlideDefinition.getSlideDefinitionID(), facetSlideDefinition.getIRMetaDataRuleID(), facetSlideDefinition.getIRDataRuleID());
62 naveen 52
 
53
		// Add expanded objects
54
		DefinitionsContainer defs = 
55
			Catalog.getInstance().getDefinitionsContainer();
56
 
57
 
58
		// SlideDefinition
1314 rajveer 59
		if(facetSlideDefinition.getSlideDefinitionID() != 0L) {
62 naveen 60
			SlideDefinition slideDefinition = 
1314 rajveer 61
				defs.getSlideDefinition(facetSlideDefinition.getSlideDefinitionID());
62 naveen 62
 
63
			this.setSlideDefinition(slideDefinition);
64
		}
65
 
1314 rajveer 66
		// IrDataRuleID
67
		RuleDefinition irDataRuleDef = defs.getIrDataRuleDefinition(
68
				facetSlideDefinition.getIRDataRuleID());
69
 
70
		this.setIrDataRuleDefinition(irDataRuleDef);
71
 
62 naveen 72
		// IrMetaDataRuleID
73
		RuleDefinition irMetaDataRuleDef = defs.getIrMetaDataRuleDefinition(
1314 rajveer 74
				facetSlideDefinition.getIRMetaDataRuleID());
62 naveen 75
 
76
		this.setIrMetadataRuleDefinition(irMetaDataRuleDef);
77
	}
78
 
79
 
80
 
81
	/**
82
	 * @param slideDefinition the slideDefinition to set
83
	 */
84
	public void setSlideDefinition(SlideDefinition slideDefinition) {
85
		this.slideDefinition = slideDefinition;
86
	}
87
 
88
	/**
89
	 * @return the slideDefinition
90
	 */
91
	public SlideDefinition getSlideDefinition() {
92
		return slideDefinition;
93
	}
94
 
95
	/**
1314 rajveer 96
	 * @param irdataRuleDefinition the irdataRuleDefinition to set
97
	 */
98
	public void setIrDataRuleDefinition(RuleDefinition irDataRuleDefinition) {
99
		this.irDataRuleDefinition = irDataRuleDefinition;
100
	}
101
 
102
	/**
103
	 * @return the irdataRuleDefinition
104
	 */
105
	public RuleDefinition getIrDataRuleDefinition() {
106
		return irDataRuleDefinition;
107
	}
108
 
109
	/**
62 naveen 110
	 * @param irmetadataRuleDefinition the irmetadataRuleDefinition to set
111
	 */
112
	public void setIrMetadataRuleDefinition(RuleDefinition irmetadataRuleDefinition) {
1314 rajveer 113
		this.irMetaDataRuleDefinition = irmetadataRuleDefinition;
62 naveen 114
	}
115
 
116
	/**
117
	 * @return the irmetadataRuleDefinition
118
	 */
119
	public RuleDefinition getIrMetadataRuleDefinition() {
1314 rajveer 120
		return irMetaDataRuleDefinition;
62 naveen 121
	}
122
 
123
}