1 <?php
2
3 /* --------------------------------------------------------------
4 ProductAttributeInterface.inc.php 2016-01-07
5 Gambio GmbH
6 http://www.gambio.de
7 Copyright (c) 2015 Gambio GmbH
8 Released under the GNU General Public License (Version 2)
9 [http://www.gnu.org/licenses/gpl-2.0.html]
10 --------------------------------------------------------------
11 */
12
13 /**
14 * Interface ProductAttributeInterface
15 *
16 * @category System
17 * @package ProductModule
18 * @subpackage Interfaces
19 */
20 interface ProductAttributeInterface
21 {
22 /**
23 * Returns the option id of the product attribute.
24 *
25 * @return int Option id of product attribute.
26 */
27 public function getOptionId();
28
29
30 /**
31 * Sets the option id of the product attribute.
32 *
33 * @param IdType $optionId Option id of product attribute.
34 *
35 * @return ProductAttributeInterface|$this Same instance for chained method calls.
36 */
37 public function setOptionId(IdType $optionId);
38
39
40 /**
41 * Returns option value id of the product attribute.
42 *
43 * @return int Option value id of product attribute.
44 */
45 public function getOptionValueId();
46
47
48 /**
49 * Sets the option value id.
50 *
51 * @param IdType $optionValueId Option value id of product attribute.
52 *
53 * @return ProductAttributeInterface|$this Same instance for chained method calls.
54 */
55 public function setOptionValueId(IdType $optionValueId);
56
57
58 /**
59 * Returns the price of the product attribute.
60 *
61 * @return float Price of product attribute.
62 */
63 public function getPrice();
64
65
66 /**
67 * Sets the price of the product attribute.
68 *
69 * @param DecimalType $price New price of product attribute.
70 *
71 * @return ProductAttributeInterface|$this Same instance for chained method calls.
72 */
73 public function setPrice(DecimalType $price);
74
75
76 /**
77 * Returns the price type of the product attribute.
78 *
79 * @return string Price type of product attribute.
80 */
81 public function getPriceType();
82
83
84 /**
85 * Sets the price type of the product attribute.
86 *
87 * @param StringType $priceType New price type.
88 *
89 * @return ProductAttributeInterface|$this Same instance for chained method calls.
90 */
91 public function setPriceType(StringType $priceType);
92
93
94 /**
95 * Returns the weight of the product attribute.
96 *
97 * @return float Weight of product attribute.
98 */
99 public function getWeight();
100
101
102 /**
103 * Sets the weight of the product attribute.
104 *
105 * @param DecimalType $weight New weight.
106 *
107 * @return ProductAttributeInterface|$this Same instance for chained method calls.
108 */
109 public function setWeight(DecimalType $weight);
110
111
112 /**
113 * Returns the weight type of the product attribute.
114 *
115 * @return string Weight type of product attribute.
116 */
117 public function getWeightType();
118
119
120 /**
121 * Sets the weight type of the product attribute.
122 *
123 * @param StringType $weightType New weight type.
124 *
125 * @return ProductAttributeInterface|$this Same instance for chained method calls.
126 */
127 public function setWeightType(StringType $weightType);
128
129
130 /**
131 * Returns the attribute model of the product attribute.
132 *
133 * @return string Model of product attribute.
134 */
135 public function getAttributeModel();
136
137
138 /**
139 * Sets the attribute model of the product attribute.
140 *
141 * @param StringType $attributeModel New attribute model.
142 *
143 * @return ProductAttributeInterface|$this Same instance for chained method calls.
144 */
145 public function setAttributeModel(StringType $attributeModel);
146
147
148 /**
149 * Returns the ean of the product attribute.
150 *
151 * @return string Ean of product attribute.
152 */
153 public function getAttributeEan();
154
155
156 /**
157 * Sets the ean of the product attribute.
158 *
159 * @param StringType $attributeEan New ean.
160 *
161 * @return ProductAttributeInterface|$this Same instance for chained method calls.
162 */
163 public function setAttributeEan(StringType $attributeEan);
164
165
166 /**
167 * Returns the stock of the product attribute.
168 *
169 * @return float Stock of product attribute.
170 */
171 public function getStock();
172
173
174 /**
175 * Sets the stock of the product attribute.
176 *
177 * @param DecimalType $stock New stock
178 *
179 * @return ProductAttributeInterface|$this Same instance for chained method calls.
180 */
181 public function setStock(DecimalType $stock);
182
183
184 /**
185 * Returns the sort order of the product attribute.
186 *
187 * @return int Sort order of product attribute.
188 */
189 public function getSortOrder();
190
191
192 /**
193 * Sets the sort order of the product attribute.
194 *
195 * @param IntType $sortOrder New sort order position.
196 *
197 * @return ProductAttributeInterface|$this Same instance for chained method calls.
198 */
199 public function setSortOrder(IntType $sortOrder);
200
201
202 /**
203 * Returns the vpe id of the product attribute.
204 *
205 * @return int Vpe id of product attribute.
206 */
207 public function getVpeId();
208
209
210 /**
211 * Sets the vpe id of the product attribute.
212 *
213 * @param IdType $vpeId New vpe id.
214 *
215 * @return ProductAttributeInterface|$this Same instance for chained method calls.
216 */
217 public function setVpeId(IdType $vpeId);
218
219
220 /**
221 * Returns the product vpe value of the product attribute.
222 *
223 * @return float Vpe value of product attribute.
224 */
225 public function getVpeValue();
226
227
228 /**
229 * Sets the vpe value of the product attribute.
230 *
231 * @param DecimalType $vpeValue New vpe value.
232 *
233 * @return ProductAttributeInterface|$this Same instance for chained method calls.
234 */
235 public function setVpeValue(DecimalType $vpeValue);
236 }