Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
24 naveen 1
/**
2
 * 
3
 */
4
package in.shop2020.metamodel.util;
5
 
6
import java.util.ArrayList;
7
import java.util.List;
8
 
9
import in.shop2020.metamodel.core.Bullet;
10
import in.shop2020.metamodel.core.Feature;
11
import in.shop2020.metamodel.definitions.Catalog;
12
import in.shop2020.metamodel.definitions.DefinitionsContainer;
13
import in.shop2020.metamodel.definitions.FeatureDefinition;
14
 
15
/**
16
 * @author naveen
17
 *
18
 */
19
public class ExpandedFeature extends Feature {
20
	/**
21
	 * 
22
	 */
23
	private static final long serialVersionUID = 1L;
49 naveen 24
 
25
	/**
26
	 * 
27
	 */
24 naveen 28
	private FeatureDefinition featureDefinition;
49 naveen 29
 
30
	/**
31
	 * 
32
	 */
24 naveen 33
	private List<ExpandedBullet> expandedBullets;
34
 
35
	/**
49 naveen 36
	 * 
37
	 * @param feature
38
	 * @throws Exception
24 naveen 39
	 */
40
	public ExpandedFeature(Feature feature) throws Exception {
41
		super(feature.getFeatureDefinitionID());
42
 
43
		// Copy rest of the properties
44
		super.setBullets(feature.getBullets());
45
		super.setFreeformContent(feature.getFreeformContent());
46
 
47
		// Expand feature definition id
48
		DefinitionsContainer defs = 
49
			Catalog.getInstance().getDefinitionsContainer();
50
 
51
		this.featureDefinition = 
52
			defs.getFeatureDefinition(feature.getFeatureDefinitionID());
53
 
54
		// Expand bullets
55
		if(this.getBullets() != null) {
56
			this.expandedBullets = new ArrayList<ExpandedBullet>();
57
 
58
			for(Bullet bullet : this.getBullets()) {
59
				ExpandedBullet expBullet = new ExpandedBullet(bullet, 
60
						this.featureDefinition.getBulletDefinition());
61
 
62
				this.expandedBullets.add(expBullet);
63
			}
64
		}
65
	}
66
 
67
	/**
68
	 * @return the featureDefinition
69
	 */
70
	public FeatureDefinition getFeatureDefinition() {
71
		return featureDefinition;
72
	}
73
 
74
	/**
75
	 * @return the expandedBullets
76
	 */
77
	public List<ExpandedBullet> getExpandedBullets() {
78
		return expandedBullets;
79
	}
80
 
33 naveen 81
	/* (non-Javadoc)
82
	 * @see java.lang.Object#toString()
83
	 */
84
	@Override
85
	public String toString() {
86
		return "ExpandedFeature [expandedBullets=" + expandedBullets
87
				+ ", featureDefinition=" + featureDefinition + ", toString()="
88
				+ super.toString() + "]";
89
	}
90
 
24 naveen 91
}