Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
7908 manish.sha 1
/**
2
 * TrackDetail.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.track.stub;
9
 
10
 
11
/**
12
 * Detailed tracking information about a particular package.
13
 */
14
public class TrackDetail  implements java.io.Serializable {
15
    /* To report soft error on an individual track detail. */
16
    private com.fedex.track.stub.Notification notification;
17
 
18
    /* The FedEx package identifier. */
19
    private java.lang.String trackingNumber;
20
 
21
    private com.fedex.track.stub.StringBarcode barcode;
22
 
23
    /* When duplicate tracking numbers exist this data is returned
24
     * with summary information for each of the duplicates. The summary information
25
     * is used to determine which of the duplicates the intended tracking
26
     * number is. This identifier is used on a subsequent track request to
27
     * retrieve the tracking data for the desired tracking number. */
28
    private java.lang.String trackingNumberUniqueIdentifier;
29
 
30
    /* A code that identifies this type of status. This is the most
31
     * recent status. */
32
    private java.lang.String statusCode;
33
 
34
    /* A human-readable description of this status. */
35
    private java.lang.String statusDescription;
36
 
37
    /* Used to report the status of a piece of a multiple piece shipment
38
     * which is no longer traveling with the rest of the packages in the
39
     * shipment or has not been accounted for. */
40
    private com.fedex.track.stub.TrackReconciliation reconciliation;
41
 
42
    /* Used to convey information such as. 1. FedEx has received information
43
     * about a package but has not yet taken possession of it. 2. FedEx has
44
     * handed the package off to a third party for final delivery. 3. The
45
     * package delivery has been cancelled */
46
    private java.lang.String serviceCommitMessage;
47
 
48
    /* Identifies a FedEx operating company (transportation). */
49
    private com.fedex.track.stub.CarrierCodeType carrierCode;
50
 
51
    /* Identifies operating transportation company that is the specific
52
     * to the carrier code. */
53
    private com.fedex.track.stub.OperatingCompanyType operatingCompany;
54
 
55
    /* Specifies the FXO production centre contact and address. */
56
    private com.fedex.track.stub.ContactAndAddress productionLocationContactAndAddress;
57
 
58
    /* Other related identifiers for this package such as reference
59
     * numbers. */
60
    private com.fedex.track.stub.TrackPackageIdentifier[] otherIdentifiers;
61
 
62
    /* Retained for legacy compatibility only. User/screen friendly
63
     * description of the Service type (e.g. Priority Overnight). */
64
    private java.lang.String serviceInfo;
65
 
66
    /* Strict representation of the Service type (e.g. PRIORITY_OVERNIGHT). */
67
    private com.fedex.track.stub.ServiceType serviceType;
68
 
69
    /* The weight of this package. */
70
    private com.fedex.track.stub.Weight packageWeight;
71
 
72
    /* Physical dimensions of the package. */
73
    private com.fedex.track.stub.Dimensions packageDimensions;
74
 
75
    /* The dimensional weight of the package. */
76
    private com.fedex.track.stub.Weight packageDimensionalWeight;
77
 
78
    /* The weight of the entire shipment. */
79
    private com.fedex.track.stub.Weight shipmentWeight;
80
 
81
    /* Retained for legacy compatibility only. */
82
    private java.lang.String packaging;
83
 
84
    /* Strict representation of the Packaging type (e.g. FEDEX_BOX,
85
     * YOUR_PACKAGING). */
86
    private com.fedex.track.stub.PackagingType packagingType;
87
 
88
    /* The sequence number of this package in a shipment. This would
89
     * be 2 if it was package number 2 of 4. */
90
    private org.apache.axis.types.NonNegativeInteger packageSequenceNumber;
91
 
92
    /* The number of packages in this shipment. */
93
    private org.apache.axis.types.NonNegativeInteger packageCount;
94
 
95
    private com.fedex.track.stub.TrackReturnLabelType trackReturnLabelType;
96
 
97
    private java.lang.String trackReturnDescription;
98
 
99
    /* The address information for the shipper. */
100
    private com.fedex.track.stub.Address shipperAddress;
101
 
102
    /* The address of the FedEx pickup location/facility. */
103
    private com.fedex.track.stub.Address originLocationAddress;
104
 
105
    /* Estimated package pickup time for shipments that haven't been
106
     * picked up. */
107
    private java.util.Calendar estimatedPickupTimestamp;
108
 
109
    /* Time package was shipped/tendered over to FedEx. Time portion
110
     * will be populated if available, otherwise will be set to midnight. */
111
    private java.util.Calendar shipTimestamp;
112
 
113
    /* The distance from the origin to the destination. Returned for
114
     * Custom Critical shipments. */
115
    private com.fedex.track.stub.Distance totalTransitDistance;
116
 
117
    /* Total distance package still has to travel. Returned for Custom
118
     * Critical shipments. */
119
    private com.fedex.track.stub.Distance distanceToDestination;
120
 
121
    /* The address this package is to be (or has been) delivered. */
122
    private com.fedex.track.stub.Address destinationAddress;
123
 
124
    /* The address of the FedEx delivery location/facility. */
125
    private com.fedex.track.stub.Address destinationLocationAddress;
126
 
127
    /* Projected package delivery time based on ship time stamp, service
128
     * and destination. Not populated if delivery has already occurred. */
129
    private java.util.Calendar estimatedDeliveryTimestamp;
130
 
131
    /* The time the package was actually delivered. */
132
    private java.util.Calendar actualDeliveryTimestamp;
133
 
134
    /* Actual address where package was delivered. Differs from destinationAddress,
135
     * which indicates where the package was to be delivered; This field
136
     * tells where delivery actually occurred (next door, at station, etc.) */
137
    private com.fedex.track.stub.Address actualDeliveryAddress;
138
 
139
    /* Identifies the method of office order delivery. */
140
    private com.fedex.track.stub.OfficeOrderDeliveryMethodType officeOrderDeliveryMethod;
141
 
142
    /* Strict text indicating the delivery location at the delivered
143
     * to address. */
144
    private com.fedex.track.stub.TrackDeliveryLocationType deliveryLocationType;
145
 
146
    /* User/screen friendly representation of the DeliveryLocationType
147
     * (delivery location at the delivered to address). Can be returned in
148
     * localized text. */
149
    private java.lang.String deliveryLocationDescription;
150
 
151
    /* This is either the name of the person that signed for the package
152
     * or "Signature not requested" or "Signature on file". */
153
    private java.lang.String deliverySignatureName;
154
 
155
    /* True if signed for by signature image is available. */
156
    private java.lang.Boolean signatureProofOfDeliveryAvailable;
157
 
158
    /* The types of email notifications that are available for the
159
     * package. */
160
    private com.fedex.track.stub.EMailNotificationEventType[] notificationEventsAvailable;
161
 
162
    /* Returned for cargo shipments only when they are currently split
163
     * across vehicles. */
164
    private com.fedex.track.stub.TrackSplitShipmentPart[] splitShipmentParts;
165
 
166
    /* Indicates redirection eligibility as determined by tracking
167
     * service, subject to refinement/override by redirect-to-hold service. */
168
    private com.fedex.track.stub.RedirectToHoldEligibilityType redirectToHoldEligibility;
169
 
170
    /* Event information for a tracking number. */
171
    private com.fedex.track.stub.TrackEvent[] events;
172
 
173
    public TrackDetail() {
174
    }
175
 
176
    public TrackDetail(
177
           com.fedex.track.stub.Notification notification,
178
           java.lang.String trackingNumber,
179
           com.fedex.track.stub.StringBarcode barcode,
180
           java.lang.String trackingNumberUniqueIdentifier,
181
           java.lang.String statusCode,
182
           java.lang.String statusDescription,
183
           com.fedex.track.stub.TrackReconciliation reconciliation,
184
           java.lang.String serviceCommitMessage,
185
           com.fedex.track.stub.CarrierCodeType carrierCode,
186
           com.fedex.track.stub.OperatingCompanyType operatingCompany,
187
           com.fedex.track.stub.ContactAndAddress productionLocationContactAndAddress,
188
           com.fedex.track.stub.TrackPackageIdentifier[] otherIdentifiers,
189
           java.lang.String serviceInfo,
190
           com.fedex.track.stub.ServiceType serviceType,
191
           com.fedex.track.stub.Weight packageWeight,
192
           com.fedex.track.stub.Dimensions packageDimensions,
193
           com.fedex.track.stub.Weight packageDimensionalWeight,
194
           com.fedex.track.stub.Weight shipmentWeight,
195
           java.lang.String packaging,
196
           com.fedex.track.stub.PackagingType packagingType,
197
           org.apache.axis.types.NonNegativeInteger packageSequenceNumber,
198
           org.apache.axis.types.NonNegativeInteger packageCount,
199
           com.fedex.track.stub.TrackReturnLabelType trackReturnLabelType,
200
           java.lang.String trackReturnDescription,
201
           com.fedex.track.stub.Address shipperAddress,
202
           com.fedex.track.stub.Address originLocationAddress,
203
           java.util.Calendar estimatedPickupTimestamp,
204
           java.util.Calendar shipTimestamp,
205
           com.fedex.track.stub.Distance totalTransitDistance,
206
           com.fedex.track.stub.Distance distanceToDestination,
207
           com.fedex.track.stub.Address destinationAddress,
208
           com.fedex.track.stub.Address destinationLocationAddress,
209
           java.util.Calendar estimatedDeliveryTimestamp,
210
           java.util.Calendar actualDeliveryTimestamp,
211
           com.fedex.track.stub.Address actualDeliveryAddress,
212
           com.fedex.track.stub.OfficeOrderDeliveryMethodType officeOrderDeliveryMethod,
213
           com.fedex.track.stub.TrackDeliveryLocationType deliveryLocationType,
214
           java.lang.String deliveryLocationDescription,
215
           java.lang.String deliverySignatureName,
216
           java.lang.Boolean signatureProofOfDeliveryAvailable,
217
           com.fedex.track.stub.EMailNotificationEventType[] notificationEventsAvailable,
218
           com.fedex.track.stub.TrackSplitShipmentPart[] splitShipmentParts,
219
           com.fedex.track.stub.RedirectToHoldEligibilityType redirectToHoldEligibility,
220
           com.fedex.track.stub.TrackEvent[] events) {
221
           this.notification = notification;
222
           this.trackingNumber = trackingNumber;
223
           this.barcode = barcode;
224
           this.trackingNumberUniqueIdentifier = trackingNumberUniqueIdentifier;
225
           this.statusCode = statusCode;
226
           this.statusDescription = statusDescription;
227
           this.reconciliation = reconciliation;
228
           this.serviceCommitMessage = serviceCommitMessage;
229
           this.carrierCode = carrierCode;
230
           this.operatingCompany = operatingCompany;
231
           this.productionLocationContactAndAddress = productionLocationContactAndAddress;
232
           this.otherIdentifiers = otherIdentifiers;
233
           this.serviceInfo = serviceInfo;
234
           this.serviceType = serviceType;
235
           this.packageWeight = packageWeight;
236
           this.packageDimensions = packageDimensions;
237
           this.packageDimensionalWeight = packageDimensionalWeight;
238
           this.shipmentWeight = shipmentWeight;
239
           this.packaging = packaging;
240
           this.packagingType = packagingType;
241
           this.packageSequenceNumber = packageSequenceNumber;
242
           this.packageCount = packageCount;
243
           this.trackReturnLabelType = trackReturnLabelType;
244
           this.trackReturnDescription = trackReturnDescription;
245
           this.shipperAddress = shipperAddress;
246
           this.originLocationAddress = originLocationAddress;
247
           this.estimatedPickupTimestamp = estimatedPickupTimestamp;
248
           this.shipTimestamp = shipTimestamp;
249
           this.totalTransitDistance = totalTransitDistance;
250
           this.distanceToDestination = distanceToDestination;
251
           this.destinationAddress = destinationAddress;
252
           this.destinationLocationAddress = destinationLocationAddress;
253
           this.estimatedDeliveryTimestamp = estimatedDeliveryTimestamp;
254
           this.actualDeliveryTimestamp = actualDeliveryTimestamp;
255
           this.actualDeliveryAddress = actualDeliveryAddress;
256
           this.officeOrderDeliveryMethod = officeOrderDeliveryMethod;
257
           this.deliveryLocationType = deliveryLocationType;
258
           this.deliveryLocationDescription = deliveryLocationDescription;
259
           this.deliverySignatureName = deliverySignatureName;
260
           this.signatureProofOfDeliveryAvailable = signatureProofOfDeliveryAvailable;
261
           this.notificationEventsAvailable = notificationEventsAvailable;
262
           this.splitShipmentParts = splitShipmentParts;
263
           this.redirectToHoldEligibility = redirectToHoldEligibility;
264
           this.events = events;
265
    }
266
 
267
 
268
    /**
269
     * Gets the notification value for this TrackDetail.
270
     * 
271
     * @return notification   * To report soft error on an individual track detail.
272
     */
273
    public com.fedex.track.stub.Notification getNotification() {
274
        return notification;
275
    }
276
 
277
 
278
    /**
279
     * Sets the notification value for this TrackDetail.
280
     * 
281
     * @param notification   * To report soft error on an individual track detail.
282
     */
283
    public void setNotification(com.fedex.track.stub.Notification notification) {
284
        this.notification = notification;
285
    }
286
 
287
 
288
    /**
289
     * Gets the trackingNumber value for this TrackDetail.
290
     * 
291
     * @return trackingNumber   * The FedEx package identifier.
292
     */
293
    public java.lang.String getTrackingNumber() {
294
        return trackingNumber;
295
    }
296
 
297
 
298
    /**
299
     * Sets the trackingNumber value for this TrackDetail.
300
     * 
301
     * @param trackingNumber   * The FedEx package identifier.
302
     */
303
    public void setTrackingNumber(java.lang.String trackingNumber) {
304
        this.trackingNumber = trackingNumber;
305
    }
306
 
307
 
308
    /**
309
     * Gets the barcode value for this TrackDetail.
310
     * 
311
     * @return barcode
312
     */
313
    public com.fedex.track.stub.StringBarcode getBarcode() {
314
        return barcode;
315
    }
316
 
317
 
318
    /**
319
     * Sets the barcode value for this TrackDetail.
320
     * 
321
     * @param barcode
322
     */
323
    public void setBarcode(com.fedex.track.stub.StringBarcode barcode) {
324
        this.barcode = barcode;
325
    }
326
 
327
 
328
    /**
329
     * Gets the trackingNumberUniqueIdentifier value for this TrackDetail.
330
     * 
331
     * @return trackingNumberUniqueIdentifier   * When duplicate tracking numbers exist this data is returned
332
     * with summary information for each of the duplicates. The summary information
333
     * is used to determine which of the duplicates the intended tracking
334
     * number is. This identifier is used on a subsequent track request to
335
     * retrieve the tracking data for the desired tracking number.
336
     */
337
    public java.lang.String getTrackingNumberUniqueIdentifier() {
338
        return trackingNumberUniqueIdentifier;
339
    }
340
 
341
 
342
    /**
343
     * Sets the trackingNumberUniqueIdentifier value for this TrackDetail.
344
     * 
345
     * @param trackingNumberUniqueIdentifier   * When duplicate tracking numbers exist this data is returned
346
     * with summary information for each of the duplicates. The summary information
347
     * is used to determine which of the duplicates the intended tracking
348
     * number is. This identifier is used on a subsequent track request to
349
     * retrieve the tracking data for the desired tracking number.
350
     */
351
    public void setTrackingNumberUniqueIdentifier(java.lang.String trackingNumberUniqueIdentifier) {
352
        this.trackingNumberUniqueIdentifier = trackingNumberUniqueIdentifier;
353
    }
354
 
355
 
356
    /**
357
     * Gets the statusCode value for this TrackDetail.
358
     * 
359
     * @return statusCode   * A code that identifies this type of status. This is the most
360
     * recent status.
361
     */
362
    public java.lang.String getStatusCode() {
363
        return statusCode;
364
    }
365
 
366
 
367
    /**
368
     * Sets the statusCode value for this TrackDetail.
369
     * 
370
     * @param statusCode   * A code that identifies this type of status. This is the most
371
     * recent status.
372
     */
373
    public void setStatusCode(java.lang.String statusCode) {
374
        this.statusCode = statusCode;
375
    }
376
 
377
 
378
    /**
379
     * Gets the statusDescription value for this TrackDetail.
380
     * 
381
     * @return statusDescription   * A human-readable description of this status.
382
     */
383
    public java.lang.String getStatusDescription() {
384
        return statusDescription;
385
    }
386
 
387
 
388
    /**
389
     * Sets the statusDescription value for this TrackDetail.
390
     * 
391
     * @param statusDescription   * A human-readable description of this status.
392
     */
393
    public void setStatusDescription(java.lang.String statusDescription) {
394
        this.statusDescription = statusDescription;
395
    }
396
 
397
 
398
    /**
399
     * Gets the reconciliation value for this TrackDetail.
400
     * 
401
     * @return reconciliation   * Used to report the status of a piece of a multiple piece shipment
402
     * which is no longer traveling with the rest of the packages in the
403
     * shipment or has not been accounted for.
404
     */
405
    public com.fedex.track.stub.TrackReconciliation getReconciliation() {
406
        return reconciliation;
407
    }
408
 
409
 
410
    /**
411
     * Sets the reconciliation value for this TrackDetail.
412
     * 
413
     * @param reconciliation   * Used to report the status of a piece of a multiple piece shipment
414
     * which is no longer traveling with the rest of the packages in the
415
     * shipment or has not been accounted for.
416
     */
417
    public void setReconciliation(com.fedex.track.stub.TrackReconciliation reconciliation) {
418
        this.reconciliation = reconciliation;
419
    }
420
 
421
 
422
    /**
423
     * Gets the serviceCommitMessage value for this TrackDetail.
424
     * 
425
     * @return serviceCommitMessage   * Used to convey information such as. 1. FedEx has received information
426
     * about a package but has not yet taken possession of it. 2. FedEx has
427
     * handed the package off to a third party for final delivery. 3. The
428
     * package delivery has been cancelled
429
     */
430
    public java.lang.String getServiceCommitMessage() {
431
        return serviceCommitMessage;
432
    }
433
 
434
 
435
    /**
436
     * Sets the serviceCommitMessage value for this TrackDetail.
437
     * 
438
     * @param serviceCommitMessage   * Used to convey information such as. 1. FedEx has received information
439
     * about a package but has not yet taken possession of it. 2. FedEx has
440
     * handed the package off to a third party for final delivery. 3. The
441
     * package delivery has been cancelled
442
     */
443
    public void setServiceCommitMessage(java.lang.String serviceCommitMessage) {
444
        this.serviceCommitMessage = serviceCommitMessage;
445
    }
446
 
447
 
448
    /**
449
     * Gets the carrierCode value for this TrackDetail.
450
     * 
451
     * @return carrierCode   * Identifies a FedEx operating company (transportation).
452
     */
453
    public com.fedex.track.stub.CarrierCodeType getCarrierCode() {
454
        return carrierCode;
455
    }
456
 
457
 
458
    /**
459
     * Sets the carrierCode value for this TrackDetail.
460
     * 
461
     * @param carrierCode   * Identifies a FedEx operating company (transportation).
462
     */
463
    public void setCarrierCode(com.fedex.track.stub.CarrierCodeType carrierCode) {
464
        this.carrierCode = carrierCode;
465
    }
466
 
467
 
468
    /**
469
     * Gets the operatingCompany value for this TrackDetail.
470
     * 
471
     * @return operatingCompany   * Identifies operating transportation company that is the specific
472
     * to the carrier code.
473
     */
474
    public com.fedex.track.stub.OperatingCompanyType getOperatingCompany() {
475
        return operatingCompany;
476
    }
477
 
478
 
479
    /**
480
     * Sets the operatingCompany value for this TrackDetail.
481
     * 
482
     * @param operatingCompany   * Identifies operating transportation company that is the specific
483
     * to the carrier code.
484
     */
485
    public void setOperatingCompany(com.fedex.track.stub.OperatingCompanyType operatingCompany) {
486
        this.operatingCompany = operatingCompany;
487
    }
488
 
489
 
490
    /**
491
     * Gets the productionLocationContactAndAddress value for this TrackDetail.
492
     * 
493
     * @return productionLocationContactAndAddress   * Specifies the FXO production centre contact and address.
494
     */
495
    public com.fedex.track.stub.ContactAndAddress getProductionLocationContactAndAddress() {
496
        return productionLocationContactAndAddress;
497
    }
498
 
499
 
500
    /**
501
     * Sets the productionLocationContactAndAddress value for this TrackDetail.
502
     * 
503
     * @param productionLocationContactAndAddress   * Specifies the FXO production centre contact and address.
504
     */
505
    public void setProductionLocationContactAndAddress(com.fedex.track.stub.ContactAndAddress productionLocationContactAndAddress) {
506
        this.productionLocationContactAndAddress = productionLocationContactAndAddress;
507
    }
508
 
509
 
510
    /**
511
     * Gets the otherIdentifiers value for this TrackDetail.
512
     * 
513
     * @return otherIdentifiers   * Other related identifiers for this package such as reference
514
     * numbers.
515
     */
516
    public com.fedex.track.stub.TrackPackageIdentifier[] getOtherIdentifiers() {
517
        return otherIdentifiers;
518
    }
519
 
520
 
521
    /**
522
     * Sets the otherIdentifiers value for this TrackDetail.
523
     * 
524
     * @param otherIdentifiers   * Other related identifiers for this package such as reference
525
     * numbers.
526
     */
527
    public void setOtherIdentifiers(com.fedex.track.stub.TrackPackageIdentifier[] otherIdentifiers) {
528
        this.otherIdentifiers = otherIdentifiers;
529
    }
530
 
531
    public com.fedex.track.stub.TrackPackageIdentifier getOtherIdentifiers(int i) {
532
        return this.otherIdentifiers[i];
533
    }
534
 
535
    public void setOtherIdentifiers(int i, com.fedex.track.stub.TrackPackageIdentifier _value) {
536
        this.otherIdentifiers[i] = _value;
537
    }
538
 
539
 
540
    /**
541
     * Gets the serviceInfo value for this TrackDetail.
542
     * 
543
     * @return serviceInfo   * Retained for legacy compatibility only. User/screen friendly
544
     * description of the Service type (e.g. Priority Overnight).
545
     */
546
    public java.lang.String getServiceInfo() {
547
        return serviceInfo;
548
    }
549
 
550
 
551
    /**
552
     * Sets the serviceInfo value for this TrackDetail.
553
     * 
554
     * @param serviceInfo   * Retained for legacy compatibility only. User/screen friendly
555
     * description of the Service type (e.g. Priority Overnight).
556
     */
557
    public void setServiceInfo(java.lang.String serviceInfo) {
558
        this.serviceInfo = serviceInfo;
559
    }
560
 
561
 
562
    /**
563
     * Gets the serviceType value for this TrackDetail.
564
     * 
565
     * @return serviceType   * Strict representation of the Service type (e.g. PRIORITY_OVERNIGHT).
566
     */
567
    public com.fedex.track.stub.ServiceType getServiceType() {
568
        return serviceType;
569
    }
570
 
571
 
572
    /**
573
     * Sets the serviceType value for this TrackDetail.
574
     * 
575
     * @param serviceType   * Strict representation of the Service type (e.g. PRIORITY_OVERNIGHT).
576
     */
577
    public void setServiceType(com.fedex.track.stub.ServiceType serviceType) {
578
        this.serviceType = serviceType;
579
    }
580
 
581
 
582
    /**
583
     * Gets the packageWeight value for this TrackDetail.
584
     * 
585
     * @return packageWeight   * The weight of this package.
586
     */
587
    public com.fedex.track.stub.Weight getPackageWeight() {
588
        return packageWeight;
589
    }
590
 
591
 
592
    /**
593
     * Sets the packageWeight value for this TrackDetail.
594
     * 
595
     * @param packageWeight   * The weight of this package.
596
     */
597
    public void setPackageWeight(com.fedex.track.stub.Weight packageWeight) {
598
        this.packageWeight = packageWeight;
599
    }
600
 
601
 
602
    /**
603
     * Gets the packageDimensions value for this TrackDetail.
604
     * 
605
     * @return packageDimensions   * Physical dimensions of the package.
606
     */
607
    public com.fedex.track.stub.Dimensions getPackageDimensions() {
608
        return packageDimensions;
609
    }
610
 
611
 
612
    /**
613
     * Sets the packageDimensions value for this TrackDetail.
614
     * 
615
     * @param packageDimensions   * Physical dimensions of the package.
616
     */
617
    public void setPackageDimensions(com.fedex.track.stub.Dimensions packageDimensions) {
618
        this.packageDimensions = packageDimensions;
619
    }
620
 
621
 
622
    /**
623
     * Gets the packageDimensionalWeight value for this TrackDetail.
624
     * 
625
     * @return packageDimensionalWeight   * The dimensional weight of the package.
626
     */
627
    public com.fedex.track.stub.Weight getPackageDimensionalWeight() {
628
        return packageDimensionalWeight;
629
    }
630
 
631
 
632
    /**
633
     * Sets the packageDimensionalWeight value for this TrackDetail.
634
     * 
635
     * @param packageDimensionalWeight   * The dimensional weight of the package.
636
     */
637
    public void setPackageDimensionalWeight(com.fedex.track.stub.Weight packageDimensionalWeight) {
638
        this.packageDimensionalWeight = packageDimensionalWeight;
639
    }
640
 
641
 
642
    /**
643
     * Gets the shipmentWeight value for this TrackDetail.
644
     * 
645
     * @return shipmentWeight   * The weight of the entire shipment.
646
     */
647
    public com.fedex.track.stub.Weight getShipmentWeight() {
648
        return shipmentWeight;
649
    }
650
 
651
 
652
    /**
653
     * Sets the shipmentWeight value for this TrackDetail.
654
     * 
655
     * @param shipmentWeight   * The weight of the entire shipment.
656
     */
657
    public void setShipmentWeight(com.fedex.track.stub.Weight shipmentWeight) {
658
        this.shipmentWeight = shipmentWeight;
659
    }
660
 
661
 
662
    /**
663
     * Gets the packaging value for this TrackDetail.
664
     * 
665
     * @return packaging   * Retained for legacy compatibility only.
666
     */
667
    public java.lang.String getPackaging() {
668
        return packaging;
669
    }
670
 
671
 
672
    /**
673
     * Sets the packaging value for this TrackDetail.
674
     * 
675
     * @param packaging   * Retained for legacy compatibility only.
676
     */
677
    public void setPackaging(java.lang.String packaging) {
678
        this.packaging = packaging;
679
    }
680
 
681
 
682
    /**
683
     * Gets the packagingType value for this TrackDetail.
684
     * 
685
     * @return packagingType   * Strict representation of the Packaging type (e.g. FEDEX_BOX,
686
     * YOUR_PACKAGING).
687
     */
688
    public com.fedex.track.stub.PackagingType getPackagingType() {
689
        return packagingType;
690
    }
691
 
692
 
693
    /**
694
     * Sets the packagingType value for this TrackDetail.
695
     * 
696
     * @param packagingType   * Strict representation of the Packaging type (e.g. FEDEX_BOX,
697
     * YOUR_PACKAGING).
698
     */
699
    public void setPackagingType(com.fedex.track.stub.PackagingType packagingType) {
700
        this.packagingType = packagingType;
701
    }
702
 
703
 
704
    /**
705
     * Gets the packageSequenceNumber value for this TrackDetail.
706
     * 
707
     * @return packageSequenceNumber   * The sequence number of this package in a shipment. This would
708
     * be 2 if it was package number 2 of 4.
709
     */
710
    public org.apache.axis.types.NonNegativeInteger getPackageSequenceNumber() {
711
        return packageSequenceNumber;
712
    }
713
 
714
 
715
    /**
716
     * Sets the packageSequenceNumber value for this TrackDetail.
717
     * 
718
     * @param packageSequenceNumber   * The sequence number of this package in a shipment. This would
719
     * be 2 if it was package number 2 of 4.
720
     */
721
    public void setPackageSequenceNumber(org.apache.axis.types.NonNegativeInteger packageSequenceNumber) {
722
        this.packageSequenceNumber = packageSequenceNumber;
723
    }
724
 
725
 
726
    /**
727
     * Gets the packageCount value for this TrackDetail.
728
     * 
729
     * @return packageCount   * The number of packages in this shipment.
730
     */
731
    public org.apache.axis.types.NonNegativeInteger getPackageCount() {
732
        return packageCount;
733
    }
734
 
735
 
736
    /**
737
     * Sets the packageCount value for this TrackDetail.
738
     * 
739
     * @param packageCount   * The number of packages in this shipment.
740
     */
741
    public void setPackageCount(org.apache.axis.types.NonNegativeInteger packageCount) {
742
        this.packageCount = packageCount;
743
    }
744
 
745
 
746
    /**
747
     * Gets the trackReturnLabelType value for this TrackDetail.
748
     * 
749
     * @return trackReturnLabelType
750
     */
751
    public com.fedex.track.stub.TrackReturnLabelType getTrackReturnLabelType() {
752
        return trackReturnLabelType;
753
    }
754
 
755
 
756
    /**
757
     * Sets the trackReturnLabelType value for this TrackDetail.
758
     * 
759
     * @param trackReturnLabelType
760
     */
761
    public void setTrackReturnLabelType(com.fedex.track.stub.TrackReturnLabelType trackReturnLabelType) {
762
        this.trackReturnLabelType = trackReturnLabelType;
763
    }
764
 
765
 
766
    /**
767
     * Gets the trackReturnDescription value for this TrackDetail.
768
     * 
769
     * @return trackReturnDescription
770
     */
771
    public java.lang.String getTrackReturnDescription() {
772
        return trackReturnDescription;
773
    }
774
 
775
 
776
    /**
777
     * Sets the trackReturnDescription value for this TrackDetail.
778
     * 
779
     * @param trackReturnDescription
780
     */
781
    public void setTrackReturnDescription(java.lang.String trackReturnDescription) {
782
        this.trackReturnDescription = trackReturnDescription;
783
    }
784
 
785
 
786
    /**
787
     * Gets the shipperAddress value for this TrackDetail.
788
     * 
789
     * @return shipperAddress   * The address information for the shipper.
790
     */
791
    public com.fedex.track.stub.Address getShipperAddress() {
792
        return shipperAddress;
793
    }
794
 
795
 
796
    /**
797
     * Sets the shipperAddress value for this TrackDetail.
798
     * 
799
     * @param shipperAddress   * The address information for the shipper.
800
     */
801
    public void setShipperAddress(com.fedex.track.stub.Address shipperAddress) {
802
        this.shipperAddress = shipperAddress;
803
    }
804
 
805
 
806
    /**
807
     * Gets the originLocationAddress value for this TrackDetail.
808
     * 
809
     * @return originLocationAddress   * The address of the FedEx pickup location/facility.
810
     */
811
    public com.fedex.track.stub.Address getOriginLocationAddress() {
812
        return originLocationAddress;
813
    }
814
 
815
 
816
    /**
817
     * Sets the originLocationAddress value for this TrackDetail.
818
     * 
819
     * @param originLocationAddress   * The address of the FedEx pickup location/facility.
820
     */
821
    public void setOriginLocationAddress(com.fedex.track.stub.Address originLocationAddress) {
822
        this.originLocationAddress = originLocationAddress;
823
    }
824
 
825
 
826
    /**
827
     * Gets the estimatedPickupTimestamp value for this TrackDetail.
828
     * 
829
     * @return estimatedPickupTimestamp   * Estimated package pickup time for shipments that haven't been
830
     * picked up.
831
     */
832
    public java.util.Calendar getEstimatedPickupTimestamp() {
833
        return estimatedPickupTimestamp;
834
    }
835
 
836
 
837
    /**
838
     * Sets the estimatedPickupTimestamp value for this TrackDetail.
839
     * 
840
     * @param estimatedPickupTimestamp   * Estimated package pickup time for shipments that haven't been
841
     * picked up.
842
     */
843
    public void setEstimatedPickupTimestamp(java.util.Calendar estimatedPickupTimestamp) {
844
        this.estimatedPickupTimestamp = estimatedPickupTimestamp;
845
    }
846
 
847
 
848
    /**
849
     * Gets the shipTimestamp value for this TrackDetail.
850
     * 
851
     * @return shipTimestamp   * Time package was shipped/tendered over to FedEx. Time portion
852
     * will be populated if available, otherwise will be set to midnight.
853
     */
854
    public java.util.Calendar getShipTimestamp() {
855
        return shipTimestamp;
856
    }
857
 
858
 
859
    /**
860
     * Sets the shipTimestamp value for this TrackDetail.
861
     * 
862
     * @param shipTimestamp   * Time package was shipped/tendered over to FedEx. Time portion
863
     * will be populated if available, otherwise will be set to midnight.
864
     */
865
    public void setShipTimestamp(java.util.Calendar shipTimestamp) {
866
        this.shipTimestamp = shipTimestamp;
867
    }
868
 
869
 
870
    /**
871
     * Gets the totalTransitDistance value for this TrackDetail.
872
     * 
873
     * @return totalTransitDistance   * The distance from the origin to the destination. Returned for
874
     * Custom Critical shipments.
875
     */
876
    public com.fedex.track.stub.Distance getTotalTransitDistance() {
877
        return totalTransitDistance;
878
    }
879
 
880
 
881
    /**
882
     * Sets the totalTransitDistance value for this TrackDetail.
883
     * 
884
     * @param totalTransitDistance   * The distance from the origin to the destination. Returned for
885
     * Custom Critical shipments.
886
     */
887
    public void setTotalTransitDistance(com.fedex.track.stub.Distance totalTransitDistance) {
888
        this.totalTransitDistance = totalTransitDistance;
889
    }
890
 
891
 
892
    /**
893
     * Gets the distanceToDestination value for this TrackDetail.
894
     * 
895
     * @return distanceToDestination   * Total distance package still has to travel. Returned for Custom
896
     * Critical shipments.
897
     */
898
    public com.fedex.track.stub.Distance getDistanceToDestination() {
899
        return distanceToDestination;
900
    }
901
 
902
 
903
    /**
904
     * Sets the distanceToDestination value for this TrackDetail.
905
     * 
906
     * @param distanceToDestination   * Total distance package still has to travel. Returned for Custom
907
     * Critical shipments.
908
     */
909
    public void setDistanceToDestination(com.fedex.track.stub.Distance distanceToDestination) {
910
        this.distanceToDestination = distanceToDestination;
911
    }
912
 
913
 
914
    /**
915
     * Gets the destinationAddress value for this TrackDetail.
916
     * 
917
     * @return destinationAddress   * The address this package is to be (or has been) delivered.
918
     */
919
    public com.fedex.track.stub.Address getDestinationAddress() {
920
        return destinationAddress;
921
    }
922
 
923
 
924
    /**
925
     * Sets the destinationAddress value for this TrackDetail.
926
     * 
927
     * @param destinationAddress   * The address this package is to be (or has been) delivered.
928
     */
929
    public void setDestinationAddress(com.fedex.track.stub.Address destinationAddress) {
930
        this.destinationAddress = destinationAddress;
931
    }
932
 
933
 
934
    /**
935
     * Gets the destinationLocationAddress value for this TrackDetail.
936
     * 
937
     * @return destinationLocationAddress   * The address of the FedEx delivery location/facility.
938
     */
939
    public com.fedex.track.stub.Address getDestinationLocationAddress() {
940
        return destinationLocationAddress;
941
    }
942
 
943
 
944
    /**
945
     * Sets the destinationLocationAddress value for this TrackDetail.
946
     * 
947
     * @param destinationLocationAddress   * The address of the FedEx delivery location/facility.
948
     */
949
    public void setDestinationLocationAddress(com.fedex.track.stub.Address destinationLocationAddress) {
950
        this.destinationLocationAddress = destinationLocationAddress;
951
    }
952
 
953
 
954
    /**
955
     * Gets the estimatedDeliveryTimestamp value for this TrackDetail.
956
     * 
957
     * @return estimatedDeliveryTimestamp   * Projected package delivery time based on ship time stamp, service
958
     * and destination. Not populated if delivery has already occurred.
959
     */
960
    public java.util.Calendar getEstimatedDeliveryTimestamp() {
961
        return estimatedDeliveryTimestamp;
962
    }
963
 
964
 
965
    /**
966
     * Sets the estimatedDeliveryTimestamp value for this TrackDetail.
967
     * 
968
     * @param estimatedDeliveryTimestamp   * Projected package delivery time based on ship time stamp, service
969
     * and destination. Not populated if delivery has already occurred.
970
     */
971
    public void setEstimatedDeliveryTimestamp(java.util.Calendar estimatedDeliveryTimestamp) {
972
        this.estimatedDeliveryTimestamp = estimatedDeliveryTimestamp;
973
    }
974
 
975
 
976
    /**
977
     * Gets the actualDeliveryTimestamp value for this TrackDetail.
978
     * 
979
     * @return actualDeliveryTimestamp   * The time the package was actually delivered.
980
     */
981
    public java.util.Calendar getActualDeliveryTimestamp() {
982
        return actualDeliveryTimestamp;
983
    }
984
 
985
 
986
    /**
987
     * Sets the actualDeliveryTimestamp value for this TrackDetail.
988
     * 
989
     * @param actualDeliveryTimestamp   * The time the package was actually delivered.
990
     */
991
    public void setActualDeliveryTimestamp(java.util.Calendar actualDeliveryTimestamp) {
992
        this.actualDeliveryTimestamp = actualDeliveryTimestamp;
993
    }
994
 
995
 
996
    /**
997
     * Gets the actualDeliveryAddress value for this TrackDetail.
998
     * 
999
     * @return actualDeliveryAddress   * Actual address where package was delivered. Differs from destinationAddress,
1000
     * which indicates where the package was to be delivered; This field
1001
     * tells where delivery actually occurred (next door, at station, etc.)
1002
     */
1003
    public com.fedex.track.stub.Address getActualDeliveryAddress() {
1004
        return actualDeliveryAddress;
1005
    }
1006
 
1007
 
1008
    /**
1009
     * Sets the actualDeliveryAddress value for this TrackDetail.
1010
     * 
1011
     * @param actualDeliveryAddress   * Actual address where package was delivered. Differs from destinationAddress,
1012
     * which indicates where the package was to be delivered; This field
1013
     * tells where delivery actually occurred (next door, at station, etc.)
1014
     */
1015
    public void setActualDeliveryAddress(com.fedex.track.stub.Address actualDeliveryAddress) {
1016
        this.actualDeliveryAddress = actualDeliveryAddress;
1017
    }
1018
 
1019
 
1020
    /**
1021
     * Gets the officeOrderDeliveryMethod value for this TrackDetail.
1022
     * 
1023
     * @return officeOrderDeliveryMethod   * Identifies the method of office order delivery.
1024
     */
1025
    public com.fedex.track.stub.OfficeOrderDeliveryMethodType getOfficeOrderDeliveryMethod() {
1026
        return officeOrderDeliveryMethod;
1027
    }
1028
 
1029
 
1030
    /**
1031
     * Sets the officeOrderDeliveryMethod value for this TrackDetail.
1032
     * 
1033
     * @param officeOrderDeliveryMethod   * Identifies the method of office order delivery.
1034
     */
1035
    public void setOfficeOrderDeliveryMethod(com.fedex.track.stub.OfficeOrderDeliveryMethodType officeOrderDeliveryMethod) {
1036
        this.officeOrderDeliveryMethod = officeOrderDeliveryMethod;
1037
    }
1038
 
1039
 
1040
    /**
1041
     * Gets the deliveryLocationType value for this TrackDetail.
1042
     * 
1043
     * @return deliveryLocationType   * Strict text indicating the delivery location at the delivered
1044
     * to address.
1045
     */
1046
    public com.fedex.track.stub.TrackDeliveryLocationType getDeliveryLocationType() {
1047
        return deliveryLocationType;
1048
    }
1049
 
1050
 
1051
    /**
1052
     * Sets the deliveryLocationType value for this TrackDetail.
1053
     * 
1054
     * @param deliveryLocationType   * Strict text indicating the delivery location at the delivered
1055
     * to address.
1056
     */
1057
    public void setDeliveryLocationType(com.fedex.track.stub.TrackDeliveryLocationType deliveryLocationType) {
1058
        this.deliveryLocationType = deliveryLocationType;
1059
    }
1060
 
1061
 
1062
    /**
1063
     * Gets the deliveryLocationDescription value for this TrackDetail.
1064
     * 
1065
     * @return deliveryLocationDescription   * User/screen friendly representation of the DeliveryLocationType
1066
     * (delivery location at the delivered to address). Can be returned in
1067
     * localized text.
1068
     */
1069
    public java.lang.String getDeliveryLocationDescription() {
1070
        return deliveryLocationDescription;
1071
    }
1072
 
1073
 
1074
    /**
1075
     * Sets the deliveryLocationDescription value for this TrackDetail.
1076
     * 
1077
     * @param deliveryLocationDescription   * User/screen friendly representation of the DeliveryLocationType
1078
     * (delivery location at the delivered to address). Can be returned in
1079
     * localized text.
1080
     */
1081
    public void setDeliveryLocationDescription(java.lang.String deliveryLocationDescription) {
1082
        this.deliveryLocationDescription = deliveryLocationDescription;
1083
    }
1084
 
1085
 
1086
    /**
1087
     * Gets the deliverySignatureName value for this TrackDetail.
1088
     * 
1089
     * @return deliverySignatureName   * This is either the name of the person that signed for the package
1090
     * or "Signature not requested" or "Signature on file".
1091
     */
1092
    public java.lang.String getDeliverySignatureName() {
1093
        return deliverySignatureName;
1094
    }
1095
 
1096
 
1097
    /**
1098
     * Sets the deliverySignatureName value for this TrackDetail.
1099
     * 
1100
     * @param deliverySignatureName   * This is either the name of the person that signed for the package
1101
     * or "Signature not requested" or "Signature on file".
1102
     */
1103
    public void setDeliverySignatureName(java.lang.String deliverySignatureName) {
1104
        this.deliverySignatureName = deliverySignatureName;
1105
    }
1106
 
1107
 
1108
    /**
1109
     * Gets the signatureProofOfDeliveryAvailable value for this TrackDetail.
1110
     * 
1111
     * @return signatureProofOfDeliveryAvailable   * True if signed for by signature image is available.
1112
     */
1113
    public java.lang.Boolean getSignatureProofOfDeliveryAvailable() {
1114
        return signatureProofOfDeliveryAvailable;
1115
    }
1116
 
1117
 
1118
    /**
1119
     * Sets the signatureProofOfDeliveryAvailable value for this TrackDetail.
1120
     * 
1121
     * @param signatureProofOfDeliveryAvailable   * True if signed for by signature image is available.
1122
     */
1123
    public void setSignatureProofOfDeliveryAvailable(java.lang.Boolean signatureProofOfDeliveryAvailable) {
1124
        this.signatureProofOfDeliveryAvailable = signatureProofOfDeliveryAvailable;
1125
    }
1126
 
1127
 
1128
    /**
1129
     * Gets the notificationEventsAvailable value for this TrackDetail.
1130
     * 
1131
     * @return notificationEventsAvailable   * The types of email notifications that are available for the
1132
     * package.
1133
     */
1134
    public com.fedex.track.stub.EMailNotificationEventType[] getNotificationEventsAvailable() {
1135
        return notificationEventsAvailable;
1136
    }
1137
 
1138
 
1139
    /**
1140
     * Sets the notificationEventsAvailable value for this TrackDetail.
1141
     * 
1142
     * @param notificationEventsAvailable   * The types of email notifications that are available for the
1143
     * package.
1144
     */
1145
    public void setNotificationEventsAvailable(com.fedex.track.stub.EMailNotificationEventType[] notificationEventsAvailable) {
1146
        this.notificationEventsAvailable = notificationEventsAvailable;
1147
    }
1148
 
1149
    public com.fedex.track.stub.EMailNotificationEventType getNotificationEventsAvailable(int i) {
1150
        return this.notificationEventsAvailable[i];
1151
    }
1152
 
1153
    public void setNotificationEventsAvailable(int i, com.fedex.track.stub.EMailNotificationEventType _value) {
1154
        this.notificationEventsAvailable[i] = _value;
1155
    }
1156
 
1157
 
1158
    /**
1159
     * Gets the splitShipmentParts value for this TrackDetail.
1160
     * 
1161
     * @return splitShipmentParts   * Returned for cargo shipments only when they are currently split
1162
     * across vehicles.
1163
     */
1164
    public com.fedex.track.stub.TrackSplitShipmentPart[] getSplitShipmentParts() {
1165
        return splitShipmentParts;
1166
    }
1167
 
1168
 
1169
    /**
1170
     * Sets the splitShipmentParts value for this TrackDetail.
1171
     * 
1172
     * @param splitShipmentParts   * Returned for cargo shipments only when they are currently split
1173
     * across vehicles.
1174
     */
1175
    public void setSplitShipmentParts(com.fedex.track.stub.TrackSplitShipmentPart[] splitShipmentParts) {
1176
        this.splitShipmentParts = splitShipmentParts;
1177
    }
1178
 
1179
    public com.fedex.track.stub.TrackSplitShipmentPart getSplitShipmentParts(int i) {
1180
        return this.splitShipmentParts[i];
1181
    }
1182
 
1183
    public void setSplitShipmentParts(int i, com.fedex.track.stub.TrackSplitShipmentPart _value) {
1184
        this.splitShipmentParts[i] = _value;
1185
    }
1186
 
1187
 
1188
    /**
1189
     * Gets the redirectToHoldEligibility value for this TrackDetail.
1190
     * 
1191
     * @return redirectToHoldEligibility   * Indicates redirection eligibility as determined by tracking
1192
     * service, subject to refinement/override by redirect-to-hold service.
1193
     */
1194
    public com.fedex.track.stub.RedirectToHoldEligibilityType getRedirectToHoldEligibility() {
1195
        return redirectToHoldEligibility;
1196
    }
1197
 
1198
 
1199
    /**
1200
     * Sets the redirectToHoldEligibility value for this TrackDetail.
1201
     * 
1202
     * @param redirectToHoldEligibility   * Indicates redirection eligibility as determined by tracking
1203
     * service, subject to refinement/override by redirect-to-hold service.
1204
     */
1205
    public void setRedirectToHoldEligibility(com.fedex.track.stub.RedirectToHoldEligibilityType redirectToHoldEligibility) {
1206
        this.redirectToHoldEligibility = redirectToHoldEligibility;
1207
    }
1208
 
1209
 
1210
    /**
1211
     * Gets the events value for this TrackDetail.
1212
     * 
1213
     * @return events   * Event information for a tracking number.
1214
     */
1215
    public com.fedex.track.stub.TrackEvent[] getEvents() {
1216
        return events;
1217
    }
1218
 
1219
 
1220
    /**
1221
     * Sets the events value for this TrackDetail.
1222
     * 
1223
     * @param events   * Event information for a tracking number.
1224
     */
1225
    public void setEvents(com.fedex.track.stub.TrackEvent[] events) {
1226
        this.events = events;
1227
    }
1228
 
1229
    public com.fedex.track.stub.TrackEvent getEvents(int i) {
1230
        return this.events[i];
1231
    }
1232
 
1233
    public void setEvents(int i, com.fedex.track.stub.TrackEvent _value) {
1234
        this.events[i] = _value;
1235
    }
1236
 
1237
    private java.lang.Object __equalsCalc = null;
1238
    public synchronized boolean equals(java.lang.Object obj) {
1239
        if (!(obj instanceof TrackDetail)) return false;
1240
        TrackDetail other = (TrackDetail) obj;
1241
        if (obj == null) return false;
1242
        if (this == obj) return true;
1243
        if (__equalsCalc != null) {
1244
            return (__equalsCalc == obj);
1245
        }
1246
        __equalsCalc = obj;
1247
        boolean _equals;
1248
        _equals = true && 
1249
            ((this.notification==null && other.getNotification()==null) || 
1250
             (this.notification!=null &&
1251
              this.notification.equals(other.getNotification()))) &&
1252
            ((this.trackingNumber==null && other.getTrackingNumber()==null) || 
1253
             (this.trackingNumber!=null &&
1254
              this.trackingNumber.equals(other.getTrackingNumber()))) &&
1255
            ((this.barcode==null && other.getBarcode()==null) || 
1256
             (this.barcode!=null &&
1257
              this.barcode.equals(other.getBarcode()))) &&
1258
            ((this.trackingNumberUniqueIdentifier==null && other.getTrackingNumberUniqueIdentifier()==null) || 
1259
             (this.trackingNumberUniqueIdentifier!=null &&
1260
              this.trackingNumberUniqueIdentifier.equals(other.getTrackingNumberUniqueIdentifier()))) &&
1261
            ((this.statusCode==null && other.getStatusCode()==null) || 
1262
             (this.statusCode!=null &&
1263
              this.statusCode.equals(other.getStatusCode()))) &&
1264
            ((this.statusDescription==null && other.getStatusDescription()==null) || 
1265
             (this.statusDescription!=null &&
1266
              this.statusDescription.equals(other.getStatusDescription()))) &&
1267
            ((this.reconciliation==null && other.getReconciliation()==null) || 
1268
             (this.reconciliation!=null &&
1269
              this.reconciliation.equals(other.getReconciliation()))) &&
1270
            ((this.serviceCommitMessage==null && other.getServiceCommitMessage()==null) || 
1271
             (this.serviceCommitMessage!=null &&
1272
              this.serviceCommitMessage.equals(other.getServiceCommitMessage()))) &&
1273
            ((this.carrierCode==null && other.getCarrierCode()==null) || 
1274
             (this.carrierCode!=null &&
1275
              this.carrierCode.equals(other.getCarrierCode()))) &&
1276
            ((this.operatingCompany==null && other.getOperatingCompany()==null) || 
1277
             (this.operatingCompany!=null &&
1278
              this.operatingCompany.equals(other.getOperatingCompany()))) &&
1279
            ((this.productionLocationContactAndAddress==null && other.getProductionLocationContactAndAddress()==null) || 
1280
             (this.productionLocationContactAndAddress!=null &&
1281
              this.productionLocationContactAndAddress.equals(other.getProductionLocationContactAndAddress()))) &&
1282
            ((this.otherIdentifiers==null && other.getOtherIdentifiers()==null) || 
1283
             (this.otherIdentifiers!=null &&
1284
              java.util.Arrays.equals(this.otherIdentifiers, other.getOtherIdentifiers()))) &&
1285
            ((this.serviceInfo==null && other.getServiceInfo()==null) || 
1286
             (this.serviceInfo!=null &&
1287
              this.serviceInfo.equals(other.getServiceInfo()))) &&
1288
            ((this.serviceType==null && other.getServiceType()==null) || 
1289
             (this.serviceType!=null &&
1290
              this.serviceType.equals(other.getServiceType()))) &&
1291
            ((this.packageWeight==null && other.getPackageWeight()==null) || 
1292
             (this.packageWeight!=null &&
1293
              this.packageWeight.equals(other.getPackageWeight()))) &&
1294
            ((this.packageDimensions==null && other.getPackageDimensions()==null) || 
1295
             (this.packageDimensions!=null &&
1296
              this.packageDimensions.equals(other.getPackageDimensions()))) &&
1297
            ((this.packageDimensionalWeight==null && other.getPackageDimensionalWeight()==null) || 
1298
             (this.packageDimensionalWeight!=null &&
1299
              this.packageDimensionalWeight.equals(other.getPackageDimensionalWeight()))) &&
1300
            ((this.shipmentWeight==null && other.getShipmentWeight()==null) || 
1301
             (this.shipmentWeight!=null &&
1302
              this.shipmentWeight.equals(other.getShipmentWeight()))) &&
1303
            ((this.packaging==null && other.getPackaging()==null) || 
1304
             (this.packaging!=null &&
1305
              this.packaging.equals(other.getPackaging()))) &&
1306
            ((this.packagingType==null && other.getPackagingType()==null) || 
1307
             (this.packagingType!=null &&
1308
              this.packagingType.equals(other.getPackagingType()))) &&
1309
            ((this.packageSequenceNumber==null && other.getPackageSequenceNumber()==null) || 
1310
             (this.packageSequenceNumber!=null &&
1311
              this.packageSequenceNumber.equals(other.getPackageSequenceNumber()))) &&
1312
            ((this.packageCount==null && other.getPackageCount()==null) || 
1313
             (this.packageCount!=null &&
1314
              this.packageCount.equals(other.getPackageCount()))) &&
1315
            ((this.trackReturnLabelType==null && other.getTrackReturnLabelType()==null) || 
1316
             (this.trackReturnLabelType!=null &&
1317
              this.trackReturnLabelType.equals(other.getTrackReturnLabelType()))) &&
1318
            ((this.trackReturnDescription==null && other.getTrackReturnDescription()==null) || 
1319
             (this.trackReturnDescription!=null &&
1320
              this.trackReturnDescription.equals(other.getTrackReturnDescription()))) &&
1321
            ((this.shipperAddress==null && other.getShipperAddress()==null) || 
1322
             (this.shipperAddress!=null &&
1323
              this.shipperAddress.equals(other.getShipperAddress()))) &&
1324
            ((this.originLocationAddress==null && other.getOriginLocationAddress()==null) || 
1325
             (this.originLocationAddress!=null &&
1326
              this.originLocationAddress.equals(other.getOriginLocationAddress()))) &&
1327
            ((this.estimatedPickupTimestamp==null && other.getEstimatedPickupTimestamp()==null) || 
1328
             (this.estimatedPickupTimestamp!=null &&
1329
              this.estimatedPickupTimestamp.equals(other.getEstimatedPickupTimestamp()))) &&
1330
            ((this.shipTimestamp==null && other.getShipTimestamp()==null) || 
1331
             (this.shipTimestamp!=null &&
1332
              this.shipTimestamp.equals(other.getShipTimestamp()))) &&
1333
            ((this.totalTransitDistance==null && other.getTotalTransitDistance()==null) || 
1334
             (this.totalTransitDistance!=null &&
1335
              this.totalTransitDistance.equals(other.getTotalTransitDistance()))) &&
1336
            ((this.distanceToDestination==null && other.getDistanceToDestination()==null) || 
1337
             (this.distanceToDestination!=null &&
1338
              this.distanceToDestination.equals(other.getDistanceToDestination()))) &&
1339
            ((this.destinationAddress==null && other.getDestinationAddress()==null) || 
1340
             (this.destinationAddress!=null &&
1341
              this.destinationAddress.equals(other.getDestinationAddress()))) &&
1342
            ((this.destinationLocationAddress==null && other.getDestinationLocationAddress()==null) || 
1343
             (this.destinationLocationAddress!=null &&
1344
              this.destinationLocationAddress.equals(other.getDestinationLocationAddress()))) &&
1345
            ((this.estimatedDeliveryTimestamp==null && other.getEstimatedDeliveryTimestamp()==null) || 
1346
             (this.estimatedDeliveryTimestamp!=null &&
1347
              this.estimatedDeliveryTimestamp.equals(other.getEstimatedDeliveryTimestamp()))) &&
1348
            ((this.actualDeliveryTimestamp==null && other.getActualDeliveryTimestamp()==null) || 
1349
             (this.actualDeliveryTimestamp!=null &&
1350
              this.actualDeliveryTimestamp.equals(other.getActualDeliveryTimestamp()))) &&
1351
            ((this.actualDeliveryAddress==null && other.getActualDeliveryAddress()==null) || 
1352
             (this.actualDeliveryAddress!=null &&
1353
              this.actualDeliveryAddress.equals(other.getActualDeliveryAddress()))) &&
1354
            ((this.officeOrderDeliveryMethod==null && other.getOfficeOrderDeliveryMethod()==null) || 
1355
             (this.officeOrderDeliveryMethod!=null &&
1356
              this.officeOrderDeliveryMethod.equals(other.getOfficeOrderDeliveryMethod()))) &&
1357
            ((this.deliveryLocationType==null && other.getDeliveryLocationType()==null) || 
1358
             (this.deliveryLocationType!=null &&
1359
              this.deliveryLocationType.equals(other.getDeliveryLocationType()))) &&
1360
            ((this.deliveryLocationDescription==null && other.getDeliveryLocationDescription()==null) || 
1361
             (this.deliveryLocationDescription!=null &&
1362
              this.deliveryLocationDescription.equals(other.getDeliveryLocationDescription()))) &&
1363
            ((this.deliverySignatureName==null && other.getDeliverySignatureName()==null) || 
1364
             (this.deliverySignatureName!=null &&
1365
              this.deliverySignatureName.equals(other.getDeliverySignatureName()))) &&
1366
            ((this.signatureProofOfDeliveryAvailable==null && other.getSignatureProofOfDeliveryAvailable()==null) || 
1367
             (this.signatureProofOfDeliveryAvailable!=null &&
1368
              this.signatureProofOfDeliveryAvailable.equals(other.getSignatureProofOfDeliveryAvailable()))) &&
1369
            ((this.notificationEventsAvailable==null && other.getNotificationEventsAvailable()==null) || 
1370
             (this.notificationEventsAvailable!=null &&
1371
              java.util.Arrays.equals(this.notificationEventsAvailable, other.getNotificationEventsAvailable()))) &&
1372
            ((this.splitShipmentParts==null && other.getSplitShipmentParts()==null) || 
1373
             (this.splitShipmentParts!=null &&
1374
              java.util.Arrays.equals(this.splitShipmentParts, other.getSplitShipmentParts()))) &&
1375
            ((this.redirectToHoldEligibility==null && other.getRedirectToHoldEligibility()==null) || 
1376
             (this.redirectToHoldEligibility!=null &&
1377
              this.redirectToHoldEligibility.equals(other.getRedirectToHoldEligibility()))) &&
1378
            ((this.events==null && other.getEvents()==null) || 
1379
             (this.events!=null &&
1380
              java.util.Arrays.equals(this.events, other.getEvents())));
1381
        __equalsCalc = null;
1382
        return _equals;
1383
    }
1384
 
1385
    private boolean __hashCodeCalc = false;
1386
    public synchronized int hashCode() {
1387
        if (__hashCodeCalc) {
1388
            return 0;
1389
        }
1390
        __hashCodeCalc = true;
1391
        int _hashCode = 1;
1392
        if (getNotification() != null) {
1393
            _hashCode += getNotification().hashCode();
1394
        }
1395
        if (getTrackingNumber() != null) {
1396
            _hashCode += getTrackingNumber().hashCode();
1397
        }
1398
        if (getBarcode() != null) {
1399
            _hashCode += getBarcode().hashCode();
1400
        }
1401
        if (getTrackingNumberUniqueIdentifier() != null) {
1402
            _hashCode += getTrackingNumberUniqueIdentifier().hashCode();
1403
        }
1404
        if (getStatusCode() != null) {
1405
            _hashCode += getStatusCode().hashCode();
1406
        }
1407
        if (getStatusDescription() != null) {
1408
            _hashCode += getStatusDescription().hashCode();
1409
        }
1410
        if (getReconciliation() != null) {
1411
            _hashCode += getReconciliation().hashCode();
1412
        }
1413
        if (getServiceCommitMessage() != null) {
1414
            _hashCode += getServiceCommitMessage().hashCode();
1415
        }
1416
        if (getCarrierCode() != null) {
1417
            _hashCode += getCarrierCode().hashCode();
1418
        }
1419
        if (getOperatingCompany() != null) {
1420
            _hashCode += getOperatingCompany().hashCode();
1421
        }
1422
        if (getProductionLocationContactAndAddress() != null) {
1423
            _hashCode += getProductionLocationContactAndAddress().hashCode();
1424
        }
1425
        if (getOtherIdentifiers() != null) {
1426
            for (int i=0;
1427
                 i<java.lang.reflect.Array.getLength(getOtherIdentifiers());
1428
                 i++) {
1429
                java.lang.Object obj = java.lang.reflect.Array.get(getOtherIdentifiers(), i);
1430
                if (obj != null &&
1431
                    !obj.getClass().isArray()) {
1432
                    _hashCode += obj.hashCode();
1433
                }
1434
            }
1435
        }
1436
        if (getServiceInfo() != null) {
1437
            _hashCode += getServiceInfo().hashCode();
1438
        }
1439
        if (getServiceType() != null) {
1440
            _hashCode += getServiceType().hashCode();
1441
        }
1442
        if (getPackageWeight() != null) {
1443
            _hashCode += getPackageWeight().hashCode();
1444
        }
1445
        if (getPackageDimensions() != null) {
1446
            _hashCode += getPackageDimensions().hashCode();
1447
        }
1448
        if (getPackageDimensionalWeight() != null) {
1449
            _hashCode += getPackageDimensionalWeight().hashCode();
1450
        }
1451
        if (getShipmentWeight() != null) {
1452
            _hashCode += getShipmentWeight().hashCode();
1453
        }
1454
        if (getPackaging() != null) {
1455
            _hashCode += getPackaging().hashCode();
1456
        }
1457
        if (getPackagingType() != null) {
1458
            _hashCode += getPackagingType().hashCode();
1459
        }
1460
        if (getPackageSequenceNumber() != null) {
1461
            _hashCode += getPackageSequenceNumber().hashCode();
1462
        }
1463
        if (getPackageCount() != null) {
1464
            _hashCode += getPackageCount().hashCode();
1465
        }
1466
        if (getTrackReturnLabelType() != null) {
1467
            _hashCode += getTrackReturnLabelType().hashCode();
1468
        }
1469
        if (getTrackReturnDescription() != null) {
1470
            _hashCode += getTrackReturnDescription().hashCode();
1471
        }
1472
        if (getShipperAddress() != null) {
1473
            _hashCode += getShipperAddress().hashCode();
1474
        }
1475
        if (getOriginLocationAddress() != null) {
1476
            _hashCode += getOriginLocationAddress().hashCode();
1477
        }
1478
        if (getEstimatedPickupTimestamp() != null) {
1479
            _hashCode += getEstimatedPickupTimestamp().hashCode();
1480
        }
1481
        if (getShipTimestamp() != null) {
1482
            _hashCode += getShipTimestamp().hashCode();
1483
        }
1484
        if (getTotalTransitDistance() != null) {
1485
            _hashCode += getTotalTransitDistance().hashCode();
1486
        }
1487
        if (getDistanceToDestination() != null) {
1488
            _hashCode += getDistanceToDestination().hashCode();
1489
        }
1490
        if (getDestinationAddress() != null) {
1491
            _hashCode += getDestinationAddress().hashCode();
1492
        }
1493
        if (getDestinationLocationAddress() != null) {
1494
            _hashCode += getDestinationLocationAddress().hashCode();
1495
        }
1496
        if (getEstimatedDeliveryTimestamp() != null) {
1497
            _hashCode += getEstimatedDeliveryTimestamp().hashCode();
1498
        }
1499
        if (getActualDeliveryTimestamp() != null) {
1500
            _hashCode += getActualDeliveryTimestamp().hashCode();
1501
        }
1502
        if (getActualDeliveryAddress() != null) {
1503
            _hashCode += getActualDeliveryAddress().hashCode();
1504
        }
1505
        if (getOfficeOrderDeliveryMethod() != null) {
1506
            _hashCode += getOfficeOrderDeliveryMethod().hashCode();
1507
        }
1508
        if (getDeliveryLocationType() != null) {
1509
            _hashCode += getDeliveryLocationType().hashCode();
1510
        }
1511
        if (getDeliveryLocationDescription() != null) {
1512
            _hashCode += getDeliveryLocationDescription().hashCode();
1513
        }
1514
        if (getDeliverySignatureName() != null) {
1515
            _hashCode += getDeliverySignatureName().hashCode();
1516
        }
1517
        if (getSignatureProofOfDeliveryAvailable() != null) {
1518
            _hashCode += getSignatureProofOfDeliveryAvailable().hashCode();
1519
        }
1520
        if (getNotificationEventsAvailable() != null) {
1521
            for (int i=0;
1522
                 i<java.lang.reflect.Array.getLength(getNotificationEventsAvailable());
1523
                 i++) {
1524
                java.lang.Object obj = java.lang.reflect.Array.get(getNotificationEventsAvailable(), i);
1525
                if (obj != null &&
1526
                    !obj.getClass().isArray()) {
1527
                    _hashCode += obj.hashCode();
1528
                }
1529
            }
1530
        }
1531
        if (getSplitShipmentParts() != null) {
1532
            for (int i=0;
1533
                 i<java.lang.reflect.Array.getLength(getSplitShipmentParts());
1534
                 i++) {
1535
                java.lang.Object obj = java.lang.reflect.Array.get(getSplitShipmentParts(), i);
1536
                if (obj != null &&
1537
                    !obj.getClass().isArray()) {
1538
                    _hashCode += obj.hashCode();
1539
                }
1540
            }
1541
        }
1542
        if (getRedirectToHoldEligibility() != null) {
1543
            _hashCode += getRedirectToHoldEligibility().hashCode();
1544
        }
1545
        if (getEvents() != null) {
1546
            for (int i=0;
1547
                 i<java.lang.reflect.Array.getLength(getEvents());
1548
                 i++) {
1549
                java.lang.Object obj = java.lang.reflect.Array.get(getEvents(), i);
1550
                if (obj != null &&
1551
                    !obj.getClass().isArray()) {
1552
                    _hashCode += obj.hashCode();
1553
                }
1554
            }
1555
        }
1556
        __hashCodeCalc = false;
1557
        return _hashCode;
1558
    }
1559
 
1560
    // Type metadata
1561
    private static org.apache.axis.description.TypeDesc typeDesc =
1562
        new org.apache.axis.description.TypeDesc(TrackDetail.class, true);
1563
 
1564
    static {
1565
        typeDesc.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackDetail"));
1566
        org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc();
1567
        elemField.setFieldName("notification");
1568
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Notification"));
1569
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Notification"));
1570
        elemField.setMinOccurs(0);
1571
        elemField.setNillable(false);
1572
        typeDesc.addFieldDesc(elemField);
1573
        elemField = new org.apache.axis.description.ElementDesc();
1574
        elemField.setFieldName("trackingNumber");
1575
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackingNumber"));
1576
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1577
        elemField.setMinOccurs(0);
1578
        elemField.setNillable(false);
1579
        typeDesc.addFieldDesc(elemField);
1580
        elemField = new org.apache.axis.description.ElementDesc();
1581
        elemField.setFieldName("barcode");
1582
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Barcode"));
1583
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "StringBarcode"));
1584
        elemField.setMinOccurs(0);
1585
        elemField.setNillable(false);
1586
        typeDesc.addFieldDesc(elemField);
1587
        elemField = new org.apache.axis.description.ElementDesc();
1588
        elemField.setFieldName("trackingNumberUniqueIdentifier");
1589
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackingNumberUniqueIdentifier"));
1590
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1591
        elemField.setMinOccurs(0);
1592
        elemField.setNillable(false);
1593
        typeDesc.addFieldDesc(elemField);
1594
        elemField = new org.apache.axis.description.ElementDesc();
1595
        elemField.setFieldName("statusCode");
1596
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "StatusCode"));
1597
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1598
        elemField.setMinOccurs(0);
1599
        elemField.setNillable(false);
1600
        typeDesc.addFieldDesc(elemField);
1601
        elemField = new org.apache.axis.description.ElementDesc();
1602
        elemField.setFieldName("statusDescription");
1603
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "StatusDescription"));
1604
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1605
        elemField.setMinOccurs(0);
1606
        elemField.setNillable(false);
1607
        typeDesc.addFieldDesc(elemField);
1608
        elemField = new org.apache.axis.description.ElementDesc();
1609
        elemField.setFieldName("reconciliation");
1610
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Reconciliation"));
1611
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackReconciliation"));
1612
        elemField.setMinOccurs(0);
1613
        elemField.setNillable(false);
1614
        typeDesc.addFieldDesc(elemField);
1615
        elemField = new org.apache.axis.description.ElementDesc();
1616
        elemField.setFieldName("serviceCommitMessage");
1617
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ServiceCommitMessage"));
1618
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1619
        elemField.setMinOccurs(0);
1620
        elemField.setNillable(false);
1621
        typeDesc.addFieldDesc(elemField);
1622
        elemField = new org.apache.axis.description.ElementDesc();
1623
        elemField.setFieldName("carrierCode");
1624
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "CarrierCode"));
1625
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "CarrierCodeType"));
1626
        elemField.setMinOccurs(0);
1627
        elemField.setNillable(false);
1628
        typeDesc.addFieldDesc(elemField);
1629
        elemField = new org.apache.axis.description.ElementDesc();
1630
        elemField.setFieldName("operatingCompany");
1631
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "OperatingCompany"));
1632
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "OperatingCompanyType"));
1633
        elemField.setMinOccurs(0);
1634
        elemField.setNillable(false);
1635
        typeDesc.addFieldDesc(elemField);
1636
        elemField = new org.apache.axis.description.ElementDesc();
1637
        elemField.setFieldName("productionLocationContactAndAddress");
1638
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ProductionLocationContactAndAddress"));
1639
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ContactAndAddress"));
1640
        elemField.setMinOccurs(0);
1641
        elemField.setNillable(false);
1642
        typeDesc.addFieldDesc(elemField);
1643
        elemField = new org.apache.axis.description.ElementDesc();
1644
        elemField.setFieldName("otherIdentifiers");
1645
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "OtherIdentifiers"));
1646
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackPackageIdentifier"));
1647
        elemField.setMinOccurs(0);
1648
        elemField.setNillable(false);
1649
        elemField.setMaxOccursUnbounded(true);
1650
        typeDesc.addFieldDesc(elemField);
1651
        elemField = new org.apache.axis.description.ElementDesc();
1652
        elemField.setFieldName("serviceInfo");
1653
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ServiceInfo"));
1654
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1655
        elemField.setMinOccurs(0);
1656
        elemField.setNillable(false);
1657
        typeDesc.addFieldDesc(elemField);
1658
        elemField = new org.apache.axis.description.ElementDesc();
1659
        elemField.setFieldName("serviceType");
1660
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ServiceType"));
1661
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ServiceType"));
1662
        elemField.setMinOccurs(0);
1663
        elemField.setNillable(false);
1664
        typeDesc.addFieldDesc(elemField);
1665
        elemField = new org.apache.axis.description.ElementDesc();
1666
        elemField.setFieldName("packageWeight");
1667
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "PackageWeight"));
1668
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Weight"));
1669
        elemField.setMinOccurs(0);
1670
        elemField.setNillable(false);
1671
        typeDesc.addFieldDesc(elemField);
1672
        elemField = new org.apache.axis.description.ElementDesc();
1673
        elemField.setFieldName("packageDimensions");
1674
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "PackageDimensions"));
1675
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Dimensions"));
1676
        elemField.setMinOccurs(0);
1677
        elemField.setNillable(false);
1678
        typeDesc.addFieldDesc(elemField);
1679
        elemField = new org.apache.axis.description.ElementDesc();
1680
        elemField.setFieldName("packageDimensionalWeight");
1681
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "PackageDimensionalWeight"));
1682
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Weight"));
1683
        elemField.setMinOccurs(0);
1684
        elemField.setNillable(false);
1685
        typeDesc.addFieldDesc(elemField);
1686
        elemField = new org.apache.axis.description.ElementDesc();
1687
        elemField.setFieldName("shipmentWeight");
1688
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ShipmentWeight"));
1689
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Weight"));
1690
        elemField.setMinOccurs(0);
1691
        elemField.setNillable(false);
1692
        typeDesc.addFieldDesc(elemField);
1693
        elemField = new org.apache.axis.description.ElementDesc();
1694
        elemField.setFieldName("packaging");
1695
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Packaging"));
1696
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1697
        elemField.setMinOccurs(0);
1698
        elemField.setNillable(false);
1699
        typeDesc.addFieldDesc(elemField);
1700
        elemField = new org.apache.axis.description.ElementDesc();
1701
        elemField.setFieldName("packagingType");
1702
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "PackagingType"));
1703
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "PackagingType"));
1704
        elemField.setMinOccurs(0);
1705
        elemField.setNillable(false);
1706
        typeDesc.addFieldDesc(elemField);
1707
        elemField = new org.apache.axis.description.ElementDesc();
1708
        elemField.setFieldName("packageSequenceNumber");
1709
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "PackageSequenceNumber"));
1710
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "nonNegativeInteger"));
1711
        elemField.setMinOccurs(0);
1712
        elemField.setNillable(false);
1713
        typeDesc.addFieldDesc(elemField);
1714
        elemField = new org.apache.axis.description.ElementDesc();
1715
        elemField.setFieldName("packageCount");
1716
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "PackageCount"));
1717
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "nonNegativeInteger"));
1718
        elemField.setMinOccurs(0);
1719
        elemField.setNillable(false);
1720
        typeDesc.addFieldDesc(elemField);
1721
        elemField = new org.apache.axis.description.ElementDesc();
1722
        elemField.setFieldName("trackReturnLabelType");
1723
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackReturnLabelType"));
1724
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackReturnLabelType"));
1725
        elemField.setMinOccurs(0);
1726
        elemField.setNillable(false);
1727
        typeDesc.addFieldDesc(elemField);
1728
        elemField = new org.apache.axis.description.ElementDesc();
1729
        elemField.setFieldName("trackReturnDescription");
1730
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackReturnDescription"));
1731
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1732
        elemField.setMinOccurs(0);
1733
        elemField.setNillable(false);
1734
        typeDesc.addFieldDesc(elemField);
1735
        elemField = new org.apache.axis.description.ElementDesc();
1736
        elemField.setFieldName("shipperAddress");
1737
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ShipperAddress"));
1738
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Address"));
1739
        elemField.setMinOccurs(0);
1740
        elemField.setNillable(false);
1741
        typeDesc.addFieldDesc(elemField);
1742
        elemField = new org.apache.axis.description.ElementDesc();
1743
        elemField.setFieldName("originLocationAddress");
1744
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "OriginLocationAddress"));
1745
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Address"));
1746
        elemField.setMinOccurs(0);
1747
        elemField.setNillable(false);
1748
        typeDesc.addFieldDesc(elemField);
1749
        elemField = new org.apache.axis.description.ElementDesc();
1750
        elemField.setFieldName("estimatedPickupTimestamp");
1751
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "EstimatedPickupTimestamp"));
1752
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "dateTime"));
1753
        elemField.setMinOccurs(0);
1754
        elemField.setNillable(false);
1755
        typeDesc.addFieldDesc(elemField);
1756
        elemField = new org.apache.axis.description.ElementDesc();
1757
        elemField.setFieldName("shipTimestamp");
1758
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ShipTimestamp"));
1759
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "dateTime"));
1760
        elemField.setMinOccurs(0);
1761
        elemField.setNillable(false);
1762
        typeDesc.addFieldDesc(elemField);
1763
        elemField = new org.apache.axis.description.ElementDesc();
1764
        elemField.setFieldName("totalTransitDistance");
1765
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TotalTransitDistance"));
1766
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Distance"));
1767
        elemField.setMinOccurs(0);
1768
        elemField.setNillable(false);
1769
        typeDesc.addFieldDesc(elemField);
1770
        elemField = new org.apache.axis.description.ElementDesc();
1771
        elemField.setFieldName("distanceToDestination");
1772
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "DistanceToDestination"));
1773
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Distance"));
1774
        elemField.setMinOccurs(0);
1775
        elemField.setNillable(false);
1776
        typeDesc.addFieldDesc(elemField);
1777
        elemField = new org.apache.axis.description.ElementDesc();
1778
        elemField.setFieldName("destinationAddress");
1779
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "DestinationAddress"));
1780
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Address"));
1781
        elemField.setMinOccurs(0);
1782
        elemField.setNillable(false);
1783
        typeDesc.addFieldDesc(elemField);
1784
        elemField = new org.apache.axis.description.ElementDesc();
1785
        elemField.setFieldName("destinationLocationAddress");
1786
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "DestinationLocationAddress"));
1787
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Address"));
1788
        elemField.setMinOccurs(0);
1789
        elemField.setNillable(false);
1790
        typeDesc.addFieldDesc(elemField);
1791
        elemField = new org.apache.axis.description.ElementDesc();
1792
        elemField.setFieldName("estimatedDeliveryTimestamp");
1793
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "EstimatedDeliveryTimestamp"));
1794
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "dateTime"));
1795
        elemField.setMinOccurs(0);
1796
        elemField.setNillable(false);
1797
        typeDesc.addFieldDesc(elemField);
1798
        elemField = new org.apache.axis.description.ElementDesc();
1799
        elemField.setFieldName("actualDeliveryTimestamp");
1800
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ActualDeliveryTimestamp"));
1801
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "dateTime"));
1802
        elemField.setMinOccurs(0);
1803
        elemField.setNillable(false);
1804
        typeDesc.addFieldDesc(elemField);
1805
        elemField = new org.apache.axis.description.ElementDesc();
1806
        elemField.setFieldName("actualDeliveryAddress");
1807
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "ActualDeliveryAddress"));
1808
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Address"));
1809
        elemField.setMinOccurs(0);
1810
        elemField.setNillable(false);
1811
        typeDesc.addFieldDesc(elemField);
1812
        elemField = new org.apache.axis.description.ElementDesc();
1813
        elemField.setFieldName("officeOrderDeliveryMethod");
1814
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "OfficeOrderDeliveryMethod"));
1815
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "OfficeOrderDeliveryMethodType"));
1816
        elemField.setMinOccurs(0);
1817
        elemField.setNillable(false);
1818
        typeDesc.addFieldDesc(elemField);
1819
        elemField = new org.apache.axis.description.ElementDesc();
1820
        elemField.setFieldName("deliveryLocationType");
1821
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "DeliveryLocationType"));
1822
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackDeliveryLocationType"));
1823
        elemField.setMinOccurs(0);
1824
        elemField.setNillable(false);
1825
        typeDesc.addFieldDesc(elemField);
1826
        elemField = new org.apache.axis.description.ElementDesc();
1827
        elemField.setFieldName("deliveryLocationDescription");
1828
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "DeliveryLocationDescription"));
1829
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1830
        elemField.setMinOccurs(0);
1831
        elemField.setNillable(false);
1832
        typeDesc.addFieldDesc(elemField);
1833
        elemField = new org.apache.axis.description.ElementDesc();
1834
        elemField.setFieldName("deliverySignatureName");
1835
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "DeliverySignatureName"));
1836
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
1837
        elemField.setMinOccurs(0);
1838
        elemField.setNillable(false);
1839
        typeDesc.addFieldDesc(elemField);
1840
        elemField = new org.apache.axis.description.ElementDesc();
1841
        elemField.setFieldName("signatureProofOfDeliveryAvailable");
1842
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "SignatureProofOfDeliveryAvailable"));
1843
        elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "boolean"));
1844
        elemField.setMinOccurs(0);
1845
        elemField.setNillable(false);
1846
        typeDesc.addFieldDesc(elemField);
1847
        elemField = new org.apache.axis.description.ElementDesc();
1848
        elemField.setFieldName("notificationEventsAvailable");
1849
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "NotificationEventsAvailable"));
1850
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "EMailNotificationEventType"));
1851
        elemField.setMinOccurs(0);
1852
        elemField.setNillable(false);
1853
        elemField.setMaxOccursUnbounded(true);
1854
        typeDesc.addFieldDesc(elemField);
1855
        elemField = new org.apache.axis.description.ElementDesc();
1856
        elemField.setFieldName("splitShipmentParts");
1857
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "SplitShipmentParts"));
1858
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackSplitShipmentPart"));
1859
        elemField.setMinOccurs(0);
1860
        elemField.setNillable(false);
1861
        elemField.setMaxOccursUnbounded(true);
1862
        typeDesc.addFieldDesc(elemField);
1863
        elemField = new org.apache.axis.description.ElementDesc();
1864
        elemField.setFieldName("redirectToHoldEligibility");
1865
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "RedirectToHoldEligibility"));
1866
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "RedirectToHoldEligibilityType"));
1867
        elemField.setMinOccurs(0);
1868
        elemField.setNillable(false);
1869
        typeDesc.addFieldDesc(elemField);
1870
        elemField = new org.apache.axis.description.ElementDesc();
1871
        elemField.setFieldName("events");
1872
        elemField.setXmlName(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "Events"));
1873
        elemField.setXmlType(new javax.xml.namespace.QName("http://fedex.com/ws/track/v6", "TrackEvent"));
1874
        elemField.setMinOccurs(0);
1875
        elemField.setNillable(false);
1876
        elemField.setMaxOccursUnbounded(true);
1877
        typeDesc.addFieldDesc(elemField);
1878
    }
1879
 
1880
    /**
1881
     * Return type metadata object
1882
     */
1883
    public static org.apache.axis.description.TypeDesc getTypeDesc() {
1884
        return typeDesc;
1885
    }
1886
 
1887
    /**
1888
     * Get Custom Serializer
1889
     */
1890
    public static org.apache.axis.encoding.Serializer getSerializer(
1891
           java.lang.String mechType, 
1892
           java.lang.Class _javaType,  
1893
           javax.xml.namespace.QName _xmlType) {
1894
        return 
1895
          new  org.apache.axis.encoding.ser.BeanSerializer(
1896
            _javaType, _xmlType, typeDesc);
1897
    }
1898
 
1899
    /**
1900
     * Get Custom Deserializer
1901
     */
1902
    public static org.apache.axis.encoding.Deserializer getDeserializer(
1903
           java.lang.String mechType, 
1904
           java.lang.Class _javaType,  
1905
           javax.xml.namespace.QName _xmlType) {
1906
        return 
1907
          new  org.apache.axis.encoding.ser.BeanDeserializer(
1908
            _javaType, _xmlType, typeDesc);
1909
    }
1910
 
1911
}