Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
7905 manish.sha 1
/**
2
 * Commodity.java
3
 *
4
 * This file was auto-generated from WSDL
5
 * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter.
6
 */
7
 
8
package com.fedex.ship.stub;
9
 
10
 
11
/**
12
 * For international multiple piece shipments, commodity information
13
 * must be passed in the Master and on each child transaction.
14
 *             If this shipment cotains more than four commodities line
15
 * items, the four highest valued should be included in the first 4 occurances
16
 * for this request.
17
 */
18
public class Commodity  implements java.io.Serializable {
19
    /* Name of this commodity. */
20
    private java.lang.String name;
21
 
22
    /* Total number of pieces of this commodity */
23
    private org.apache.axis.types.NonNegativeInteger numberOfPieces;
24
 
25
    /* Complete and accurate description of this commodity. */
26
    private java.lang.String description;
27
 
28
    /* Country code where commodity contents were produced or manufactured
29
     * in their final form. */
30
    private java.lang.String countryOfManufacture;
31
 
32
    /* Unique alpha/numeric representing commodity item.
33
     *                 At least one occurrence is required for US Export
34
     * shipments if the Customs Value is greater than $2500 or if a valid
35
     * US Export license is required. */
36
    private java.lang.String harmonizedCode;
37
 
38
    /* Total weight of this commodity. 1 explicit decimal position.
39
     * Max length 11 including decimal. */
40
    private com.fedex.ship.stub.Weight weight;
41
 
42
    /* This field is used for enterprise transactions. */
43
    private org.apache.axis.types.NonNegativeInteger quantity;
44
 
45
    /* Unit of measure used to express the quantity of this commodity
46
     * line item. */
47
    private java.lang.String quantityUnits;
48
 
49
    /* Contains only additional quantitative information other than
50
     * weight and quantity to calculate duties and taxes. */
51
    private com.fedex.ship.stub.Measure[] additionalMeasures;
52
 
53
    /* Value of each unit in Quantity. Six explicit decimal positions,
54
     * Max length 18 including decimal. */
55
    private com.fedex.ship.stub.Money unitPrice;
56
 
57
    /* Total customs value for this line item.
58
     *                 It should equal the commodity unit quantity times
59
     * commodity unit value.
60
     *                 Six explicit decimal positions, max length 18 including
61
     * decimal. */
62
    private com.fedex.ship.stub.Money customsValue;
63
 
64
    /* Defines additional characteristic of commodity used to calculate
65
     * duties and taxes */
66
    private com.fedex.ship.stub.EdtExciseCondition[] exciseConditions;
67
 
68
    /* Applicable to US export shipping only. */
69
    private java.lang.String exportLicenseNumber;
70
 
71
    /* Date of expiration. Must be at least 1 day into future.
72
     *                 The date that the Commerce Export License expires.
73
     * Export License commodities may not be exported from the U.S. on an
74
     * expired license.
75
     *                 Applicable to US Export shipping only.
76
     *                 Required only if commodity is shipped on commerce
77
     * export license, and Export License Number is supplied. */
78
    private java.util.Date exportLicenseExpirationDate;
79
 
80
    /* An identifying mark or number used on the packaging of a shipment
81
     * to help customers identify a particular shipment. */
82
    private java.lang.String CIMarksAndNumbers;
83
 
84
    private java.lang.String partNumber;
85
 
86
    /* All data required for this commodity in NAFTA Certificate of
87
     * Origin. */
88
    private com.fedex.ship.stub.NaftaCommodityDetail naftaDetail;
89
 
90
    public Commodity() {
91
    }
92
 
93
    public Commodity(
94
           java.lang.String name,
95
           org.apache.axis.types.NonNegativeInteger numberOfPieces,
96
           java.lang.String description,
97
           java.lang.String countryOfManufacture,
98
           java.lang.String harmonizedCode,
99
           com.fedex.ship.stub.Weight weight,
100
           org.apache.axis.types.NonNegativeInteger quantity,
101
           java.lang.String quantityUnits,
102
           com.fedex.ship.stub.Measure[] additionalMeasures,
103
           com.fedex.ship.stub.Money unitPrice,
104
           com.fedex.ship.stub.Money customsValue,
105
           com.fedex.ship.stub.EdtExciseCondition[] exciseConditions,
106
           java.lang.String exportLicenseNumber,
107
           java.util.Date exportLicenseExpirationDate,
108
           java.lang.String CIMarksAndNumbers,
109
           java.lang.String partNumber,
110
           com.fedex.ship.stub.NaftaCommodityDetail naftaDetail) {
111
           this.name = name;
112
           this.numberOfPieces = numberOfPieces;
113
           this.description = description;
114
           this.countryOfManufacture = countryOfManufacture;
115
           this.harmonizedCode = harmonizedCode;
116
           this.weight = weight;
117
           this.quantity = quantity;
118
           this.quantityUnits = quantityUnits;
119
           this.additionalMeasures = additionalMeasures;
120
           this.unitPrice = unitPrice;
121
           this.customsValue = customsValue;
122
           this.exciseConditions = exciseConditions;
123
           this.exportLicenseNumber = exportLicenseNumber;
124
           this.exportLicenseExpirationDate = exportLicenseExpirationDate;
125
           this.CIMarksAndNumbers = CIMarksAndNumbers;
126
           this.partNumber = partNumber;
127
           this.naftaDetail = naftaDetail;
128
    }
129
 
130
 
131
    /**
132
     * Gets the name value for this Commodity.
133
     * 
134
     * @return name   * Name of this commodity.
135
     */
136
    public java.lang.String getName() {
137
        return name;
138
    }
139
 
140
 
141
    /**
142
     * Sets the name value for this Commodity.
143
     * 
144
     * @param name   * Name of this commodity.
145
     */
146
    public void setName(java.lang.String name) {
147
        this.name = name;
148
    }
149
 
150
 
151
    /**
152
     * Gets the numberOfPieces value for this Commodity.
153
     * 
154
     * @return numberOfPieces   * Total number of pieces of this commodity
155
     */
156
    public org.apache.axis.types.NonNegativeInteger getNumberOfPieces() {
157
        return numberOfPieces;
158
    }
159
 
160
 
161
    /**
162
     * Sets the numberOfPieces value for this Commodity.
163
     * 
164
     * @param numberOfPieces   * Total number of pieces of this commodity
165
     */
166
    public void setNumberOfPieces(org.apache.axis.types.NonNegativeInteger numberOfPieces) {
167
        this.numberOfPieces = numberOfPieces;
168
    }
169
 
170
 
171
    /**
172
     * Gets the description value for this Commodity.
173
     * 
174
     * @return description   * Complete and accurate description of this commodity.
175
     */
176
    public java.lang.String getDescription() {
177
        return description;
178
    }
179
 
180
 
181
    /**
182
     * Sets the description value for this Commodity.
183
     * 
184
     * @param description   * Complete and accurate description of this commodity.
185
     */
186
    public void setDescription(java.lang.String description) {
187
        this.description = description;
188
    }
189
 
190
 
191
    /**
192
     * Gets the countryOfManufacture value for this Commodity.
193
     * 
194
     * @return countryOfManufacture   * Country code where commodity contents were produced or manufactured
195
     * in their final form.
196
     */
197
    public java.lang.String getCountryOfManufacture() {
198
        return countryOfManufacture;
199
    }
200
 
201
 
202
    /**
203
     * Sets the countryOfManufacture value for this Commodity.
204
     * 
205
     * @param countryOfManufacture   * Country code where commodity contents were produced or manufactured
206
     * in their final form.
207
     */
208
    public void setCountryOfManufacture(java.lang.String countryOfManufacture) {
209
        this.countryOfManufacture = countryOfManufacture;
210
    }
211
 
212
 
213
    /**
214
     * Gets the harmonizedCode value for this Commodity.
215
     * 
216
     * @return harmonizedCode   * Unique alpha/numeric representing commodity item.
217
     *                 At least one occurrence is required for US Export
218
     * shipments if the Customs Value is greater than $2500 or if a valid
219
     * US Export license is required.
220
     */
221
    public java.lang.String getHarmonizedCode() {
222
        return harmonizedCode;
223
    }
224
 
225
 
226
    /**
227
     * Sets the harmonizedCode value for this Commodity.
228
     * 
229
     * @param harmonizedCode   * Unique alpha/numeric representing commodity item.
230
     *                 At least one occurrence is required for US Export
231
     * shipments if the Customs Value is greater than $2500 or if a valid
232
     * US Export license is required.
233
     */
234
    public void setHarmonizedCode(java.lang.String harmonizedCode) {
235
        this.harmonizedCode = harmonizedCode;
236
    }
237
 
238
 
239
    /**
240
     * Gets the weight value for this Commodity.
241
     * 
242
     * @return weight   * Total weight of this commodity. 1 explicit decimal position.
243
     * Max length 11 including decimal.
244
     */
245
    public com.fedex.ship.stub.Weight getWeight() {
246
        return weight;
247
    }
248
 
249
 
250
    /**
251
     * Sets the weight value for this Commodity.
252
     * 
253
     * @param weight   * Total weight of this commodity. 1 explicit decimal position.
254
     * Max length 11 including decimal.
255
     */
256
    public void setWeight(com.fedex.ship.stub.Weight weight) {
257
        this.weight = weight;
258
    }
259
 
260
 
261
    /**
262
     * Gets the quantity value for this Commodity.
263
     * 
264
     * @return quantity   * This field is used for enterprise transactions.
265
     */
266
    public org.apache.axis.types.NonNegativeInteger getQuantity() {
267
        return quantity;
268
    }
269
 
270
 
271
    /**
272
     * Sets the quantity value for this Commodity.
273
     * 
274
     * @param quantity   * This field is used for enterprise transactions.
275
     */
276
    public void setQuantity(org.apache.axis.types.NonNegativeInteger quantity) {
277
        this.quantity = quantity;
278
    }
279
 
280
 
281
    /**
282
     * Gets the quantityUnits value for this Commodity.
283
     * 
284
     * @return quantityUnits   * Unit of measure used to express the quantity of this commodity
285
     * line item.
286
     */
287
    public java.lang.String getQuantityUnits() {
288
        return quantityUnits;
289
    }
290
 
291
 
292
    /**
293
     * Sets the quantityUnits value for this Commodity.
294
     * 
295
     * @param quantityUnits   * Unit of measure used to express the quantity of this commodity
296
     * line item.
297
     */
298
    public void setQuantityUnits(java.lang.String quantityUnits) {
299
        this.quantityUnits = quantityUnits;
300
    }
301
 
302
 
303
    /**
304
     * Gets the additionalMeasures value for this Commodity.
305
     * 
306
     * @return additionalMeasures   * Contains only additional quantitative information other than
307
     * weight and quantity to calculate duties and taxes.
308
     */
309
    public com.fedex.ship.stub.Measure[] getAdditionalMeasures() {
310
        return additionalMeasures;
311
    }
312
 
313
 
314
    /**
315
     * Sets the additionalMeasures value for this Commodity.
316
     * 
317
     * @param additionalMeasures   * Contains only additional quantitative information other than
318
     * weight and quantity to calculate duties and taxes.
319
     */
320
    public void setAdditionalMeasures(com.fedex.ship.stub.Measure[] additionalMeasures) {
321
        this.additionalMeasures = additionalMeasures;
322
    }
323
 
324
    public com.fedex.ship.stub.Measure getAdditionalMeasures(int i) {
325
        return this.additionalMeasures[i];
326
    }
327
 
328
    public void setAdditionalMeasures(int i, com.fedex.ship.stub.Measure _value) {
329
        this.additionalMeasures[i] = _value;
330
    }
331
 
332
 
333
    /**
334
     * Gets the unitPrice value for this Commodity.
335
     * 
336
     * @return unitPrice   * Value of each unit in Quantity. Six explicit decimal positions,
337
     * Max length 18 including decimal.
338
     */
339
    public com.fedex.ship.stub.Money getUnitPrice() {
340
        return unitPrice;
341
    }
342
 
343
 
344
    /**
345
     * Sets the unitPrice value for this Commodity.
346
     * 
347
     * @param unitPrice   * Value of each unit in Quantity. Six explicit decimal positions,
348
     * Max length 18 including decimal.
349
     */
350
    public void setUnitPrice(com.fedex.ship.stub.Money unitPrice) {
351
        this.unitPrice = unitPrice;
352
    }
353
 
354
 
355
    /**
356
     * Gets the customsValue value for this Commodity.
357
     * 
358
     * @return customsValue   * Total customs value for this line item.
359
     *                 It should equal the commodity unit quantity times
360
     * commodity unit value.
361
     *                 Six explicit decimal positions, max length 18 including
362
     * decimal.
363
     */
364
    public com.fedex.ship.stub.Money getCustomsValue() {
365
        return customsValue;
366
    }
367
 
368
 
369
    /**
370
     * Sets the customsValue value for this Commodity.
371
     * 
372
     * @param customsValue   * Total customs value for this line item.
373
     *                 It should equal the commodity unit quantity times
374
     * commodity unit value.
375
     *                 Six explicit decimal positions, max length 18 including
376
     * decimal.
377
     */
378
    public void setCustomsValue(com.fedex.ship.stub.Money customsValue) {
379
        this.customsValue = customsValue;
380
    }
381
 
382
 
383
    /**
384
     * Gets the exciseConditions value for this Commodity.
385
     * 
386
     * @return exciseConditions   * Defines additional characteristic of commodity used to calculate
387
     * duties and taxes
388
     */
389
    public com.fedex.ship.stub.EdtExciseCondition[] getExciseConditions() {
390
        return exciseConditions;
391
    }
392
 
393
 
394
    /**
395
     * Sets the exciseConditions value for this Commodity.
396
     * 
397
     * @param exciseConditions   * Defines additional characteristic of commodity used to calculate
398
     * duties and taxes
399
     */
400
    public void setExciseConditions(com.fedex.ship.stub.EdtExciseCondition[] exciseConditions) {
401
        this.exciseConditions = exciseConditions;
402
    }
403
 
404
    public com.fedex.ship.stub.EdtExciseCondition getExciseConditions(int i) {
405
        return this.exciseConditions[i];
406
    }
407
 
408
    public void setExciseConditions(int i, com.fedex.ship.stub.EdtExciseCondition _value) {
409
        this.exciseConditions[i] = _value;
410
    }
411
 
412
 
413
    /**
414
     * Gets the exportLicenseNumber value for this Commodity.
415
     * 
416
     * @return exportLicenseNumber   * Applicable to US export shipping only.
417
     */
418
    public java.lang.String getExportLicenseNumber() {
419
        return exportLicenseNumber;
420
    }
421
 
422
 
423
    /**
424
     * Sets the exportLicenseNumber value for this Commodity.
425
     * 
426
     * @param exportLicenseNumber   * Applicable to US export shipping only.
427
     */
428
    public void setExportLicenseNumber(java.lang.String exportLicenseNumber) {
429
        this.exportLicenseNumber = exportLicenseNumber;
430
    }
431
 
432
 
433
    /**
434
     * Gets the exportLicenseExpirationDate value for this Commodity.
435
     * 
436
     * @return exportLicenseExpirationDate   * Date of expiration. Must be at least 1 day into future.
437
     *                 The date that the Commerce Export License expires.
438
     * Export License commodities may not be exported from the U.S. on an
439
     * expired license.
440
     *                 Applicable to US Export shipping only.
441
     *                 Required only if commodity is shipped on commerce
442
     * export license, and Export License Number is supplied.
443
     */
444
    public java.util.Date getExportLicenseExpirationDate() {
445
        return exportLicenseExpirationDate;
446
    }
447
 
448
 
449
    /**
450
     * Sets the exportLicenseExpirationDate value for this Commodity.
451
     * 
452
     * @param exportLicenseExpirationDate   * Date of expiration. Must be at least 1 day into future.
453
     *                 The date that the Commerce Export License expires.
454
     * Export License commodities may not be exported from the U.S. on an
455
     * expired license.
456
     *                 Applicable to US Export shipping only.
457
     *                 Required only if commodity is shipped on commerce
458
     * export license, and Export License Number is supplied.
459
     */
460
    public void setExportLicenseExpirationDate(java.util.Date exportLicenseExpirationDate) {
461
        this.exportLicenseExpirationDate = exportLicenseExpirationDate;
462
    }
463
 
464
 
465
    /**
466
     * Gets the CIMarksAndNumbers value for this Commodity.
467
     * 
468
     * @return CIMarksAndNumbers   * An identifying mark or number used on the packaging of a shipment
469
     * to help customers identify a particular shipment.
470
     */
471
    public java.lang.String getCIMarksAndNumbers() {
472
        return CIMarksAndNumbers;
473
    }
474
 
475
 
476
    /**
477
     * Sets the CIMarksAndNumbers value for this Commodity.
478
     * 
479
     * @param CIMarksAndNumbers   * An identifying mark or number used on the packaging of a shipment
480
     * to help customers identify a particular shipment.
481
     */
482
    public void setCIMarksAndNumbers(java.lang.String CIMarksAndNumbers) {
483
        this.CIMarksAndNumbers = CIMarksAndNumbers;
484
    }
485
 
486
 
487
    /**
488
     * Gets the partNumber value for this Commodity.
489
     * 
490
     * @return partNumber
491
     */
492
    public java.lang.String getPartNumber() {
493
        return partNumber;
494
    }
495
 
496
 
497
    /**
498
     * Sets the partNumber value for this Commodity.
499
     * 
500
     * @param partNumber
501
     */
502
    public void setPartNumber(java.lang.String partNumber) {
503
        this.partNumber = partNumber;
504
    }
505
 
506
 
507
    /**
508
     * Gets the naftaDetail value for this Commodity.
509
     * 
510
     * @return naftaDetail   * All data required for this commodity in NAFTA Certificate of
511
     * Origin.
512
     */
513
    public com.fedex.ship.stub.NaftaCommodityDetail getNaftaDetail() {
514
        return naftaDetail;
515
    }
516
 
517
 
518
    /**
519
     * Sets the naftaDetail value for this Commodity.
520
     * 
521
     * @param naftaDetail   * All data required for this commodity in NAFTA Certificate of
522
     * Origin.
523
     */
524
    public void setNaftaDetail(com.fedex.ship.stub.NaftaCommodityDetail naftaDetail) {
525
        this.naftaDetail = naftaDetail;
526
    }
527
 
528
    private java.lang.Object __equalsCalc = null;
529
    public synchronized boolean equals(java.lang.Object obj) {
530
        if (!(obj instanceof Commodity)) return false;
531
        Commodity other = (Commodity) obj;
532
        if (obj == null) return false;
533
        if (this == obj) return true;
534
        if (__equalsCalc != null) {
535
            return (__equalsCalc == obj);
536
        }
537
        __equalsCalc = obj;
538
        boolean _equals;
539
        _equals = true && 
540
            ((this.name==null && other.getName()==null) || 
541
             (this.name!=null &&
542
              this.name.equals(other.getName()))) &&
543
            ((this.numberOfPieces==null && other.getNumberOfPieces()==null) || 
544
             (this.numberOfPieces!=null &&
545
              this.numberOfPieces.equals(other.getNumberOfPieces()))) &&
546
            ((this.description==null && other.getDescription()==null) || 
547
             (this.description!=null &&
548
              this.description.equals(other.getDescription()))) &&
549
            ((this.countryOfManufacture==null && other.getCountryOfManufacture()==null) || 
550
             (this.countryOfManufacture!=null &&
551
              this.countryOfManufacture.equals(other.getCountryOfManufacture()))) &&
552
            ((this.harmonizedCode==null && other.getHarmonizedCode()==null) || 
553
             (this.harmonizedCode!=null &&
554
              this.harmonizedCode.equals(other.getHarmonizedCode()))) &&
555
            ((this.weight==null && other.getWeight()==null) || 
556
             (this.weight!=null &&
557
              this.weight.equals(other.getWeight()))) &&
558
            ((this.quantity==null && other.getQuantity()==null) || 
559
             (this.quantity!=null &&
560
              this.quantity.equals(other.getQuantity()))) &&
561
            ((this.quantityUnits==null && other.getQuantityUnits()==null) || 
562
             (this.quantityUnits!=null &&
563
              this.quantityUnits.equals(other.getQuantityUnits()))) &&
564
            ((this.additionalMeasures==null && other.getAdditionalMeasures()==null) || 
565
             (this.additionalMeasures!=null &&
566
              java.util.Arrays.equals(this.additionalMeasures, other.getAdditionalMeasures()))) &&
567
            ((this.unitPrice==null && other.getUnitPrice()==null) || 
568
             (this.unitPrice!=null &&
569
              this.unitPrice.equals(other.getUnitPrice()))) &&
570
            ((this.customsValue==null && other.getCustomsValue()==null) || 
571
             (this.customsValue!=null &&
572
              this.customsValue.equals(other.getCustomsValue()))) &&
573
            ((this.exciseConditions==null && other.getExciseConditions()==null) || 
574
             (this.exciseConditions!=null &&
575
              java.util.Arrays.equals(this.exciseConditions, other.getExciseConditions()))) &&
576
            ((this.exportLicenseNumber==null && other.getExportLicenseNumber()==null) || 
577
             (this.exportLicenseNumber!=null &&
578
              this.exportLicenseNumber.equals(other.getExportLicenseNumber()))) &&
579
            ((this.exportLicenseExpirationDate==null && other.getExportLicenseExpirationDate()==null) || 
580
             (this.exportLicenseExpirationDate!=null &&
581
              this.exportLicenseExpirationDate.equals(other.getExportLicenseExpirationDate()))) &&
582
            ((this.CIMarksAndNumbers==null && other.getCIMarksAndNumbers()==null) || 
583
             (this.CIMarksAndNumbers!=null &&
584
              this.CIMarksAndNumbers.equals(other.getCIMarksAndNumbers()))) &&
585
            ((this.partNumber==null && other.getPartNumber()==null) || 
586
             (this.partNumber!=null &&
587
              this.partNumber.equals(other.getPartNumber()))) &&
588
            ((this.naftaDetail==null && other.getNaftaDetail()==null) || 
589
             (this.naftaDetail!=null &&
590
              this.naftaDetail.equals(other.getNaftaDetail())));
591
        __equalsCalc = null;
592
        return _equals;
593
    }
594
 
595
    private boolean __hashCodeCalc = false;
596
    public synchronized int hashCode() {
597
        if (__hashCodeCalc) {
598
            return 0;
599
        }
600
        __hashCodeCalc = true;
601
        int _hashCode = 1;
602
        if (getName() != null) {
603
            _hashCode += getName().hashCode();
604
        }
605
        if (getNumberOfPieces() != null) {
606
            _hashCode += getNumberOfPieces().hashCode();
607
        }
608
        if (getDescription() != null) {
609
            _hashCode += getDescription().hashCode();
610
        }
611
        if (getCountryOfManufacture() != null) {
612
            _hashCode += getCountryOfManufacture().hashCode();
613
        }
614
        if (getHarmonizedCode() != null) {
615
            _hashCode += getHarmonizedCode().hashCode();
616
        }
617
        if (getWeight() != null) {
618
            _hashCode += getWeight().hashCode();
619
        }
620
        if (getQuantity() != null) {
621
            _hashCode += getQuantity().hashCode();
622
        }
623
        if (getQuantityUnits() != null) {
624
            _hashCode += getQuantityUnits().hashCode();
625
        }
626
        if (getAdditionalMeasures() != null) {
627
            for (int i=0;
628
                 i<java.lang.reflect.Array.getLength(getAdditionalMeasures());
629
                 i++) {
630
                java.lang.Object obj = java.lang.reflect.Array.get(getAdditionalMeasures(), i);
631
                if (obj != null &&
632
                    !obj.getClass().isArray()) {
633
                    _hashCode += obj.hashCode();
634
                }
635
            }
636
        }
637
        if (getUnitPrice() != null) {
638
            _hashCode += getUnitPrice().hashCode();
639
        }
640
        if (getCustomsValue() != null) {
641
            _hashCode += getCustomsValue().hashCode();
642
        }
643
        if (getExciseConditions() != null) {
644
            for (int i=0;
645
                 i<java.lang.reflect.Array.getLength(getExciseConditions());
646
                 i++) {
647
                java.lang.Object obj = java.lang.reflect.Array.get(getExciseConditions(), i);
648
                if (obj != null &&
649
                    !obj.getClass().isArray()) {
650
                    _hashCode += obj.hashCode();
651
                }
652
            }
653
        }
654
        if (getExportLicenseNumber() != null) {
655
            _hashCode += getExportLicenseNumber().hashCode();
656
        }
657
        if (getExportLicenseExpirationDate() != null) {
658
            _hashCode += getExportLicenseExpirationDate().hashCode();
659
        }
660
        if (getCIMarksAndNumbers() != null) {
661
            _hashCode += getCIMarksAndNumbers().hashCode();
662
        }
663
        if (getPartNumber() != null) {
664
            _hashCode += getPartNumber().hashCode();
665
        }
666
        if (getNaftaDetail() != null) {
667
            _hashCode += getNaftaDetail().hashCode();
668
        }
669
        __hashCodeCalc = false;
670
        return _hashCode;
671
    }
672
 
673
    // Type metadata
674
    private static org.apache.axis.description.TypeDesc typeDesc =
675
        new org.apache.axis.description.TypeDesc(Commodity.class, true);
676
 
677
    static {
678
        typeDesc.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Commodity"));
679
        org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc();
680
        elemField.setFieldName("name");
681
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Name"));
682
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
683
        elemField.setMinOccurs(0);
684
        elemField.setNillable(false);
685
        typeDesc.addFieldDesc(elemField);
686
        elemField = new org.apache.axis.description.ElementDesc();
687
        elemField.setFieldName("numberOfPieces");
688
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "NumberOfPieces"));
689
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "nonNegativeInteger"));
690
        elemField.setNillable(false);
691
        typeDesc.addFieldDesc(elemField);
692
        elemField = new org.apache.axis.description.ElementDesc();
693
        elemField.setFieldName("description");
694
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Description"));
695
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
696
        elemField.setMinOccurs(0);
697
        elemField.setNillable(false);
698
        typeDesc.addFieldDesc(elemField);
699
        elemField = new org.apache.axis.description.ElementDesc();
700
        elemField.setFieldName("countryOfManufacture");
701
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "CountryOfManufacture"));
702
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
703
        elemField.setNillable(false);
704
        typeDesc.addFieldDesc(elemField);
705
        elemField = new org.apache.axis.description.ElementDesc();
706
        elemField.setFieldName("harmonizedCode");
707
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "HarmonizedCode"));
708
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
709
        elemField.setMinOccurs(0);
710
        elemField.setNillable(false);
711
        typeDesc.addFieldDesc(elemField);
712
        elemField = new org.apache.axis.description.ElementDesc();
713
        elemField.setFieldName("weight");
714
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Weight"));
715
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Weight"));
716
        elemField.setNillable(false);
717
        typeDesc.addFieldDesc(elemField);
718
        elemField = new org.apache.axis.description.ElementDesc();
719
        elemField.setFieldName("quantity");
720
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Quantity"));
721
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "nonNegativeInteger"));
722
        elemField.setMinOccurs(0);
723
        elemField.setNillable(false);
724
        typeDesc.addFieldDesc(elemField);
725
        elemField = new org.apache.axis.description.ElementDesc();
726
        elemField.setFieldName("quantityUnits");
727
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "QuantityUnits"));
728
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
729
        elemField.setMinOccurs(0);
730
        elemField.setNillable(false);
731
        typeDesc.addFieldDesc(elemField);
732
        elemField = new org.apache.axis.description.ElementDesc();
733
        elemField.setFieldName("additionalMeasures");
734
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "AdditionalMeasures"));
735
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Measure"));
736
        elemField.setMinOccurs(0);
737
        elemField.setNillable(false);
738
        elemField.setMaxOccursUnbounded(true);
739
        typeDesc.addFieldDesc(elemField);
740
        elemField = new org.apache.axis.description.ElementDesc();
741
        elemField.setFieldName("unitPrice");
742
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "UnitPrice"));
743
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Money"));
744
        elemField.setMinOccurs(0);
745
        elemField.setNillable(false);
746
        typeDesc.addFieldDesc(elemField);
747
        elemField = new org.apache.axis.description.ElementDesc();
748
        elemField.setFieldName("customsValue");
749
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "CustomsValue"));
750
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "Money"));
751
        elemField.setMinOccurs(0);
752
        elemField.setNillable(false);
753
        typeDesc.addFieldDesc(elemField);
754
        elemField = new org.apache.axis.description.ElementDesc();
755
        elemField.setFieldName("exciseConditions");
756
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "ExciseConditions"));
757
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "EdtExciseCondition"));
758
        elemField.setMinOccurs(0);
759
        elemField.setNillable(false);
760
        elemField.setMaxOccursUnbounded(true);
761
        typeDesc.addFieldDesc(elemField);
762
        elemField = new org.apache.axis.description.ElementDesc();
763
        elemField.setFieldName("exportLicenseNumber");
764
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "ExportLicenseNumber"));
765
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
766
        elemField.setMinOccurs(0);
767
        elemField.setNillable(false);
768
        typeDesc.addFieldDesc(elemField);
769
        elemField = new org.apache.axis.description.ElementDesc();
770
        elemField.setFieldName("exportLicenseExpirationDate");
771
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "ExportLicenseExpirationDate"));
772
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "date"));
773
        elemField.setMinOccurs(0);
774
        elemField.setNillable(false);
775
        typeDesc.addFieldDesc(elemField);
776
        elemField = new org.apache.axis.description.ElementDesc();
777
        elemField.setFieldName("CIMarksAndNumbers");
778
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "CIMarksAndNumbers"));
779
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
780
        elemField.setMinOccurs(0);
781
        elemField.setNillable(false);
782
        typeDesc.addFieldDesc(elemField);
783
        elemField = new org.apache.axis.description.ElementDesc();
784
        elemField.setFieldName("partNumber");
785
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "PartNumber"));
786
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
787
        elemField.setMinOccurs(0);
788
        elemField.setNillable(false);
789
        typeDesc.addFieldDesc(elemField);
790
        elemField = new org.apache.axis.description.ElementDesc();
791
        elemField.setFieldName("naftaDetail");
792
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "NaftaDetail"));
793
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/ship/v12", "NaftaCommodityDetail"));
794
        elemField.setMinOccurs(0);
795
        elemField.setNillable(false);
796
        typeDesc.addFieldDesc(elemField);
797
    }
798
 
799
    /**
800
     * Return type metadata object
801
     */
802
    public static org.apache.axis.description.TypeDesc getTypeDesc() {
803
        return typeDesc;
804
    }
805
 
806
    /**
807
     * Get Custom Serializer
808
     */
809
    public static org.apache.axis.encoding.Serializer getSerializer(
810
           java.lang.String mechType, 
811
           java.lang.Class _javaType,  
812
           javax.xml.namespace.QName _xmlType) {
813
        return 
814
          new  org.apache.axis.encoding.ser.BeanSerializer(
815
            _javaType, _xmlType, typeDesc);
816
    }
817
 
818
    /**
819
     * Get Custom Deserializer
820
     */
821
    public static org.apache.axis.encoding.Deserializer getDeserializer(
822
           java.lang.String mechType, 
823
           java.lang.Class _javaType,  
824
           javax.xml.namespace.QName _xmlType) {
825
        return 
826
          new  org.apache.axis.encoding.ser.BeanDeserializer(
827
            _javaType, _xmlType, typeDesc);
828
    }
829
 
830
}