Commit 64d25a93 by Dima Bart

Add typed collections to BUYCheckout.

parent bc1eaf35
...@@ -42,6 +42,9 @@ ...@@ -42,6 +42,9 @@
- (instancetype)initWithModelManager:(id<BUYModelManager>)modelManager cart:(BUYCart *)cart; - (instancetype)initWithModelManager:(id<BUYModelManager>)modelManager cart:(BUYCart *)cart;
- (instancetype)initWithModelManager:(id<BUYModelManager>)modelManager cartToken:(NSString *)token; - (instancetype)initWithModelManager:(id<BUYModelManager>)modelManager cartToken:(NSString *)token;
- (NSArray<BUYGiftCard *> *)giftCardsArray;
- (NSArray<BUYCartLineItem *> *)lineItemsArray;
- (void)updateWithCart:(BUYCart *)cart; - (void)updateWithCart:(BUYCart *)cart;
- (BUYGiftCard *)giftCardWithIdentifier:(NSNumber *)identifier; - (BUYGiftCard *)giftCardWithIdentifier:(NSNumber *)identifier;
......
...@@ -66,7 +66,8 @@ ...@@ -66,7 +66,8 @@
[super setShippingRate:shippingRate]; [super setShippingRate:shippingRate];
self.shippingRateId = shippingRate.shippingRateIdentifier; self.shippingRateId = shippingRate.shippingRateIdentifier;
} }
-(void)setPartialAddresses:(NSNumber *)partialAddresses
- (void)setPartialAddresses:(NSNumber *)partialAddresses
{ {
if (partialAddresses.boolValue == NO) { if (partialAddresses.boolValue == NO) {
@throw [NSException exceptionWithName:@"partialAddress" reason:@"partialAddresses can only be set to true and should never be set to false on a complete address" userInfo:nil]; @throw [NSException exceptionWithName:@"partialAddress" reason:@"partialAddresses can only be set to true and should never be set to false on a complete address" userInfo:nil];
...@@ -74,6 +75,7 @@ ...@@ -74,6 +75,7 @@
[ super setPartialAddresses:partialAddresses]; [ super setPartialAddresses:partialAddresses];
} }
#pragma mark - Init -
/** /**
* We must initialize to-many relationships to ensure that * We must initialize to-many relationships to ensure that
...@@ -112,6 +114,20 @@ ...@@ -112,6 +114,20 @@
return self; return self;
} }
#pragma mark - Accessors -
- (NSArray<BUYGiftCard *> *)giftCardsArray
{
return self.giftCards.array;
}
- (NSArray<BUYCartLineItem *> *)lineItemsArray
{
return self.lineItems.array;
}
#pragma mark - Update -
- (void)updateWithCart:(BUYCart *)cart - (void)updateWithCart:(BUYCart *)cart
{ {
NSArray *lineItems = [[cart.lineItems array] buy_map:^id(BUYCartLineItem *cartLineItem) { NSArray *lineItems = [[cart.lineItems array] buy_map:^id(BUYCartLineItem *cartLineItem) {
...@@ -122,7 +138,7 @@ ...@@ -122,7 +138,7 @@
self.lineItems = [NSOrderedSet orderedSetWithArray:lineItems]; self.lineItems = [NSOrderedSet orderedSetWithArray:lineItems];
} }
#pragma mark - BUYObject #pragma mark - BUYObject -
- (NSDictionary *)JSONEncodedProperties - (NSDictionary *)JSONEncodedProperties
{ {
...@@ -139,7 +155,7 @@ ...@@ -139,7 +155,7 @@
return @{ @"checkout" : json }; return @{ @"checkout" : json };
} }
#pragma mark - Gift Card management #pragma mark - Gift Card management -
- (BUYGiftCard *)giftCardWithIdentifier:(NSNumber *)identifier - (BUYGiftCard *)giftCardWithIdentifier:(NSNumber *)identifier
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment