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 in.shop2020.metamodel.definitions.BulletDefinition;
7
import in.shop2020.metamodel.definitions.Catalog;
45 naveen 8
import in.shop2020.metamodel.definitions.CompositeDefinition;
24 naveen 9
import in.shop2020.metamodel.definitions.DatatypeDefinition;
10
import in.shop2020.metamodel.definitions.DefinitionsContainer;
45 naveen 11
import in.shop2020.metamodel.definitions.EnumDefinition;
24 naveen 12
import in.shop2020.metamodel.definitions.Unit;
25 naveen 13
import in.shop2020.util.Utils;
24 naveen 14
 
15
/**
16
 * @author naveen
17
 *
18
 */
19
public class ExpandedBulletDefinition extends BulletDefinition {
20
 
21
	/**
22
	 * 
23
	 */
24
	private static final long serialVersionUID = 1L;
25
 
26
	private DatatypeDefinition datatypeDefinition ; 
27
	private Unit unit;
45 naveen 28
	private boolean isComposite;
29
	private boolean isEnumerated;
30
 
24 naveen 31
	/**
45 naveen 32
	 * 
33
	 * @param bulletDefinition
34
	 * @throws Exception
24 naveen 35
	 */
36
	public ExpandedBulletDefinition(BulletDefinition bulletDefinition) 
37
		throws Exception {
38
		super(bulletDefinition.getDatatypeDefinitionID());
39
 
40
		// Copy rest of the properties
41
		this.setDescription(bulletDefinition.getDescription());
42
		this.setUnitID(bulletDefinition.getUnitID());
43
 
44
		DefinitionsContainer defs = 
45
			Catalog.getInstance().getDefinitionsContainer();
46
 
47
		// Expand data type definition id
48
		this.datatypeDefinition = defs.getDatatypeDefinition(
49
				bulletDefinition.getDatatypeDefinitionID());
50
 
45 naveen 51
 
25 naveen 52
		Utils.logger.info("datatypeDefinition.getClass().getName=" + 
53
				this.datatypeDefinition.getClass().getName());
54
 
45 naveen 55
		if(this.datatypeDefinition instanceof CompositeDefinition) {
56
			this.isComposite = true;
57
		}
58
		else if(this.datatypeDefinition instanceof EnumDefinition) {
59
			this.isEnumerated = true;
60
		}
61
 
24 naveen 62
		// Expand unit id
25 naveen 63
		if(bulletDefinition.getUnitID() != 0L) {
64
			this.unit = defs.getUnit(bulletDefinition.getUnitID());
65
		}
24 naveen 66
	}
67
 
68
	/**
69
	 * @return the datatypeDefinition
70
	 */
71
	public DatatypeDefinition getDatatypeDefinition() {
25 naveen 72
		return this.datatypeDefinition;
24 naveen 73
	}
74
 
75
	/**
76
	 * @return the unit
77
	 */
78
	public Unit getUnit() {
25 naveen 79
		return this.unit;
24 naveen 80
	}
81
 
45 naveen 82
	/**
83
	 * @return the isComposite
84
	 */
85
	public boolean isComposite() {
86
		return isComposite;
87
	}
88
 
89
	/**
90
	 * @return the isEnum
91
	 */
92
	public boolean isEnumerated() {
93
		return isEnumerated;
94
	}
95
 
33 naveen 96
	/* (non-Javadoc)
97
	 * @see java.lang.Object#toString()
98
	 */
99
	@Override
100
	public String toString() {
101
		return "ExpandedBulletDefinition [datatypeDefinition="
45 naveen 102
				+ datatypeDefinition + ", isComposite=" + isComposite
103
				+ ", isEnumerated=" + isEnumerated + ", unit=" + unit
104
				+ ", getDatatypeDefinitionID()=" + getDatatypeDefinitionID()
105
				+ ", getDescription()=" + getDescription() + ", getUnitID()="
106
				+ getUnitID() + ", isLearned()=" + isLearned()
107
				+ ", isMultivalue()=" + isMultivalue() + "]";
33 naveen 108
	}
109
 
24 naveen 110
}