// Generated by xsd compiler for ios/objective-c
// DO NOT CHANGE!

#import <Foundation/Foundation.h>
#import "Trading_SendInvoiceRequestType.h"
#import "Trading_InternationalShippingServiceOptionsType.h"
#import "Trading_SalesTaxType.h"
#import "Trading_ShippingServiceOptionsType.h"
#import "Trading_AmountType.h"

@implementation Trading_SendInvoiceRequestType

@synthesize itemID = _itemID;
@synthesize transactionID = _transactionID;
@synthesize orderID = _orderID;
@synthesize internationalShippingServiceOptions = _internationalShippingServiceOptions;
@synthesize shippingServiceOptions = _shippingServiceOptions;
@synthesize salesTax = _salesTax;
@synthesize insuranceOption = _insuranceOption;
@synthesize insuranceFee = _insuranceFee;
@synthesize paymentMethods = _paymentMethods;
@synthesize payPalEmailAddress = _payPalEmailAddress;
@synthesize checkoutInstructions = _checkoutInstructions;
@synthesize emailCopyToSeller = _emailCopyToSeller;
@synthesize codCost = _codCost;
@synthesize sku = _sku;
@synthesize orderLineItemID = _orderLineItemID;

// class meta-data method
// note: this method is only for internal use, DO NOT CHANGE!
+(PicoClassSchema *)getClassMetaData {
    PicoClassSchema *cs = [[PicoClassSchema alloc] initWithXmlName:@"SendInvoiceRequest" nsUri:@"urn:ebay:apis:eBLBaseComponents"];
    [cs autorelease];
    return cs;
}

// property meta-data method
// note: this method is only for internal use, DO NOT CHANGE!
+(NSMutableDictionary *)getPropertyMetaData {
    NSMutableDictionary *map = [NSMutableDictionary dictionary];
    
    PicoPropertySchema *ps = nil;
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"ItemID" propertyName:@"itemID" type:PICO_TYPE_STRING clazz:nil];
    [map setObject:ps forKey:@"itemID"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"TransactionID" propertyName:@"transactionID" type:PICO_TYPE_STRING clazz:nil];
    [map setObject:ps forKey:@"transactionID"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"OrderID" propertyName:@"orderID" type:PICO_TYPE_STRING clazz:nil];
    [map setObject:ps forKey:@"orderID"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT_ARRAY xmlName:@"InternationalShippingServiceOptions" propertyName:@"internationalShippingServiceOptions" type:PICO_TYPE_OBJECT clazz:[Trading_InternationalShippingServiceOptionsType class]];
    [map setObject:ps forKey:@"internationalShippingServiceOptions"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT_ARRAY xmlName:@"ShippingServiceOptions" propertyName:@"shippingServiceOptions" type:PICO_TYPE_OBJECT clazz:[Trading_ShippingServiceOptionsType class]];
    [map setObject:ps forKey:@"shippingServiceOptions"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"SalesTax" propertyName:@"salesTax" type:PICO_TYPE_OBJECT clazz:[Trading_SalesTaxType class]];
    [map setObject:ps forKey:@"salesTax"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"InsuranceOption" propertyName:@"insuranceOption" type:PICO_TYPE_ENUM clazz:nil];
    [map setObject:ps forKey:@"insuranceOption"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"InsuranceFee" propertyName:@"insuranceFee" type:PICO_TYPE_OBJECT clazz:[Trading_AmountType class]];
    [map setObject:ps forKey:@"insuranceFee"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT_ARRAY xmlName:@"PaymentMethods" propertyName:@"paymentMethods" type:PICO_TYPE_ENUM clazz:nil];
    [map setObject:ps forKey:@"paymentMethods"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"PayPalEmailAddress" propertyName:@"payPalEmailAddress" type:PICO_TYPE_STRING clazz:nil];
    [map setObject:ps forKey:@"payPalEmailAddress"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"CheckoutInstructions" propertyName:@"checkoutInstructions" type:PICO_TYPE_STRING clazz:nil];
    [map setObject:ps forKey:@"checkoutInstructions"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"EmailCopyToSeller" propertyName:@"emailCopyToSeller" type:PICO_TYPE_BOOL clazz:nil];
    [map setObject:ps forKey:@"emailCopyToSeller"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"CODCost" propertyName:@"codCost" type:PICO_TYPE_OBJECT clazz:[Trading_AmountType class]];
    [map setObject:ps forKey:@"codCost"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"SKU" propertyName:@"sku" type:PICO_TYPE_STRING clazz:nil];
    [map setObject:ps forKey:@"sku"];
    [ps release];
    ps = [[PicoPropertySchema alloc] initWithKind:PICO_KIND_ELEMENT xmlName:@"OrderLineItemID" propertyName:@"orderLineItemID" type:PICO_TYPE_STRING clazz:nil];
    [map setObject:ps forKey:@"orderLineItemID"];
    [ps release];
    
    return map;
}



-(void)dealloc {
    self.itemID = nil;
    self.transactionID = nil;
    self.orderID = nil;
    self.internationalShippingServiceOptions = nil;
    self.shippingServiceOptions = nil;
    self.salesTax = nil;
    self.insuranceOption = nil;
    self.insuranceFee = nil;
    self.paymentMethods = nil;
    self.payPalEmailAddress = nil;
    self.checkoutInstructions = nil;
    self.emailCopyToSeller = nil;
    self.codCost = nil;
    self.sku = nil;
    self.orderLineItemID = nil;
    [super dealloc];
}

@end
