Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
10 shop2020 1
/**
2
 * 
3
 */
4
package in.shop2020.metamodel.core;
5
 
6
 
7
import in.shop2020.metamodel.util.MetaModelComponent;
8
 
43 naveen 9
import java.util.ArrayList;
10 shop2020 10
import java.util.List;
11
 
12
/**
45 naveen 13
 * Slide is the top level container class for Product features. Name comes 
14
 * from slide-show metaphor used for designing content-meta model. Slide can 
15
 * have multiple children slides, features and free-form content of its own.
10 shop2020 16
 * 
17
 * @author naveen
18
 *
19
 */
20
public class Slide extends MetaModelComponent {
8762 amit.gupta 21
 
22
 
23
	Slide() {
24
	}
25
 
10 shop2020 26
	/**
27
	 * 
28
	 */
29
	private static final long serialVersionUID = 1L;
45 naveen 30
 
31
	/**
32
	 * Reference to definition object
33
	 */
21 naveen 34
	private long slideDefinitionID;
45 naveen 35
 
36
	/**
37
	 * List of children slides
38
	 */
10 shop2020 39
	private List<Slide> childrenSlides;
45 naveen 40
 
41
	/**
42
	 * List of features grouped under the slide
43
	 */
10 shop2020 44
	private List<Feature> features;
45 naveen 45
 
46
	/**
47
	 * Un-structured data
48
	 */
10 shop2020 49
	private FreeformContent freeformContent;
299 naveen 50
 
88 naveen 51
	/**
52
	 * Reference to source category
53
	 */
1165 rajveer 54
	//private long borrowedCategoryID;
10 shop2020 55
 
56
	/**
57
	 * 
45 naveen 58
	 * @param slideDefinitionID Slide Definition ID
10 shop2020 59
	 */ 
21 naveen 60
    public Slide(long slideDefinitionID) {
10 shop2020 61
    	this.slideDefinitionID = slideDefinitionID;
62
    }
63
 
64
    /**
65
     * 
45 naveen 66
     * @return slideDefinitionID Slide Definition ID
10 shop2020 67
     */
21 naveen 68
    public long getSlideDefinitionID() {
10 shop2020 69
        return this.slideDefinitionID;
70
    }
71
 
72
    /**
73
     * 
45 naveen 74
     * @return childrenSlides List of children slides
10 shop2020 75
     *     
76
     */
77
    public List<Slide> getChildrenSlides() {
78
        return this.childrenSlides;
79
    }
80
 
81
    /**
82
     * 
45 naveen 83
     * @param value children slides to set
10 shop2020 84
     *     
85
     */
86
    public void setChildrenSlides(List<Slide> value) {
87
        this.childrenSlides = value;
88
    }
43 naveen 89
 
90
    /**
45 naveen 91
     * Adds new child slide to childrens list
43 naveen 92
     * 
45 naveen 93
     * @param child 
43 naveen 94
     */
95
    public void addChild(Slide child) {
96
    	if(this.childrenSlides == null) {
97
    		this.childrenSlides = new ArrayList<Slide>();
98
    	}
99
 
100
    	this.childrenSlides.add(child);
101
    }
10 shop2020 102
 
103
    /**
45 naveen 104
     * Handy function to check existence of children
10 shop2020 105
     * 
43 naveen 106
     * @return boolean
107
     */
73 naveen 108
    public boolean hasChildrenSlides() {
109
    	return !(this.childrenSlides == null || this.childrenSlides.isEmpty());
43 naveen 110
    }
111
 
112
    /**
113
     * 
10 shop2020 114
     * @return features
115
     *     
116
     */
117
    public List<Feature> getFeatures() {
118
        return this.features;
119
    }
120
 
121
    /**
73 naveen 122
     * Handy function to check existence of features
10 shop2020 123
     * 
73 naveen 124
     * @return boolean
125
     */
126
    public boolean hasFeatures() {
127
    	return !(this.features == null || this.features.isEmpty());
128
    }
129
 
130
    /**
131
     * 
10 shop2020 132
     * @param value
133
     *     
134
     */
135
    public void setFeatures(List<Feature> value) {
136
        this.features = value;
137
    }
138
 
139
    /**
140
     * 
141
     * @return freeformContent
142
     *     
143
     */
144
    public FreeformContent getFreeformContent() {
145
        return this.freeformContent;
146
    }
147
 
148
    /**
149
     * 
150
     * @param value
151
     *     
152
     */
153
    public void setFreeformContent(FreeformContent value) {
154
        this.freeformContent = value;
155
    }
21 naveen 156
 
88 naveen 157
	/**
158
	 * @return the isBorrowed
159
	 */
1165 rajveer 160
//	public boolean isBorrowed() {
161
//		return this.borrowedCategoryID != 0L;
162
//	}
88 naveen 163
 
164
	/**
165
	 * @param borrowedCategoryID the borrowedCategoryID to set
166
	 */
1165 rajveer 167
//	public void setBorrowedCategoryID(long borrowedCategoryID) {
168
//		this.borrowedCategoryID = borrowedCategoryID;
169
//	}
88 naveen 170
 
171
	/**
172
	 * @return the borrowedCategoryID
173
	 */
1165 rajveer 174
//	public long getBorrowedCategoryID() {
175
//		return borrowedCategoryID;
176
//	}
88 naveen 177
 
21 naveen 178
	/* (non-Javadoc)
248 naveen 179
	 * @see java.lang.Object#equals(java.lang.Object)
180
	 */
181
	@Override
182
	public boolean equals(Object obj) {
183
		return this.getSlideDefinitionID() == 
184
			((Slide)obj).getSlideDefinitionID();
185
	}
186
 
187
	/* (non-Javadoc)
21 naveen 188
	 * @see java.lang.Object#toString()
189
	 */
190
	@Override
191
	public String toString() {
1165 rajveer 192
		return "Slide [borrowedCategoryID=" //+ borrowedCategoryID
88 naveen 193
				+ ", childrenSlides=" + childrenSlides + ", features="
21 naveen 194
				+ features + ", freeformContent=" + freeformContent
299 naveen 195
				+ ", slideDefinitionID=" + slideDefinitionID + "]";
21 naveen 196
	}
197
 
10 shop2020 198
}