Skip to content

Commit

Permalink
Add ARTFallback+Private
Browse files Browse the repository at this point in the history
  • Loading branch information
ricardopereira committed Oct 13, 2016
1 parent ce0bb41 commit 074e851
Show file tree
Hide file tree
Showing 7 changed files with 36 additions and 13 deletions.
16 changes: 10 additions & 6 deletions Ably.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@
D70EAAED1BC3376200CD8B9E /* ARTRestChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = D70EAAEB1BC3376200CD8B9E /* ARTRestChannel.h */; settings = {ATTRIBUTES = (Public, ); }; };
D70EAAEE1BC3376200CD8B9E /* ARTRestChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = D70EAAEC1BC3376200CD8B9E /* ARTRestChannel.m */; };
D714A63E1C74D4B2002F2CA0 /* NSObject+TestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = D714A63D1C74D4B2002F2CA0 /* NSObject+TestSuite.swift */; };
D714A6401C75F0C5002F2CA0 /* ARTWebSocketTransport+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = D714A63F1C75F0C5002F2CA0 /* ARTWebSocketTransport+Private.h */; settings = {ATTRIBUTES = (Public, ); }; };
D714A6401C75F0C5002F2CA0 /* ARTWebSocketTransport+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = D714A63F1C75F0C5002F2CA0 /* ARTWebSocketTransport+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
D71D30041C5F7B2F002115B0 /* RealtimeClientChannels.swift in Sources */ = {isa = PBXBuildFile; fileRef = D71D30031C5F7B2F002115B0 /* RealtimeClientChannels.swift */; };
D72304701BB72CED00F1ABDA /* RealtimeClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = D723046F1BB72CED00F1ABDA /* RealtimeClient.swift */; };
D72768211C9C19040022F8B2 /* RestClientPresence.swift in Sources */ = {isa = PBXBuildFile; fileRef = D72768201C9C19040022F8B2 /* RestClientPresence.swift */; };
Expand Down Expand Up @@ -127,6 +127,7 @@
D7588AF31BFF91B800BB8279 /* ARTURLSessionServerTrust.h in Headers */ = {isa = PBXBuildFile; fileRef = D7588AF11BFF91B800BB8279 /* ARTURLSessionServerTrust.h */; settings = {ATTRIBUTES = (Private, ); }; };
D7588AF41BFF91B800BB8279 /* ARTURLSessionServerTrust.m in Sources */ = {isa = PBXBuildFile; fileRef = D7588AF21BFF91B800BB8279 /* ARTURLSessionServerTrust.m */; };
D77394031C6F6FFE00F5478F /* ARTProtocolMessage+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = D77394021C6F6FFE00F5478F /* ARTProtocolMessage+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
D77F02A81DAF8099001B3FF9 /* ARTFallback+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = D77F02A71DAF8099001B3FF9 /* ARTFallback+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
D780846E1C68B3E50083009D /* NSObject+TestSuite.m in Sources */ = {isa = PBXBuildFile; fileRef = D780846D1C68B3E50083009D /* NSObject+TestSuite.m */; };
D79FF2751D901CD50067FA6A /* ARTRealtime+TestSuite.m in Sources */ = {isa = PBXBuildFile; fileRef = D79FF2741D901CD50067FA6A /* ARTRealtime+TestSuite.m */; };
D7B17EE31C07208B00A6958E /* ARTConnectionDetails.h in Headers */ = {isa = PBXBuildFile; fileRef = D7B17EE11C07208B00A6958E /* ARTConnectionDetails.h */; settings = {ATTRIBUTES = (Public, ); }; };
Expand Down Expand Up @@ -154,15 +155,15 @@
D7F1D3771BF4DE72001A4B5E /* ARTRealtimePresence.h in Headers */ = {isa = PBXBuildFile; fileRef = D7F1D3751BF4DE72001A4B5E /* ARTRealtimePresence.h */; settings = {ATTRIBUTES = (Public, ); }; };
D7F1D3781BF4DE72001A4B5E /* ARTRealtimePresence.m in Sources */ = {isa = PBXBuildFile; fileRef = D7F1D3761BF4DE72001A4B5E /* ARTRealtimePresence.m */; };
D7F1D37A1BF4E33A001A4B5E /* ARTRestChannel+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = D7F1D3791BF4E33A001A4B5E /* ARTRestChannel+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
EB0505FC1C5BD7C4006BA7E2 /* ARTBaseMessage+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB0505FB1C5BD7C4006BA7E2 /* ARTBaseMessage+Private.h */; settings = {ATTRIBUTES = (Public, ); }; };
EB0505FC1C5BD7C4006BA7E2 /* ARTBaseMessage+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB0505FB1C5BD7C4006BA7E2 /* ARTBaseMessage+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
EB1AE0CC1C5C1EB200D62250 /* ARTEventEmitter+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB1AE0CB1C5C1EB200D62250 /* ARTEventEmitter+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
EB1AE0CE1C5C3A4900D62250 /* Utilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB1AE0CD1C5C3A4900D62250 /* Utilities.swift */; };
EB20F8D71C653F2300EF3978 /* ARTPresence+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB20F8D61C653F1E00EF3978 /* ARTPresence+Private.h */; settings = {ATTRIBUTES = (Public, ); }; };
EB2D5A911CC941A700AD1A67 /* ARTRealtimeTransport.m in Sources */ = {isa = PBXBuildFile; fileRef = EB2D5A901CC941A700AD1A67 /* ARTRealtimeTransport.m */; };
EB2D84F71CD75CCE00F23CDA /* ARTReachability.h in Headers */ = {isa = PBXBuildFile; fileRef = EB2D84F61CD75CCE00F23CDA /* ARTReachability.h */; settings = {ATTRIBUTES = (Public, ); }; };
EB2D84FD1CD769B800F23CDA /* ARTOSReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = EB2D84FC1CD769B700F23CDA /* ARTOSReachability.m */; };
EB2D85011CD769C800F23CDA /* ARTOSReachability.h in Headers */ = {isa = PBXBuildFile; fileRef = EB2D85001CD769C800F23CDA /* ARTOSReachability.h */; settings = {ATTRIBUTES = (Public, ); }; };
EB503C881C7E4A090053AF00 /* ARTClientOptions+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB503C871C7E4A090053AF00 /* ARTClientOptions+Private.h */; settings = {ATTRIBUTES = (Public, ); }; };
EB503C881C7E4A090053AF00 /* ARTClientOptions+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB503C871C7E4A090053AF00 /* ARTClientOptions+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
EB503C8A1C7F1FE40053AF00 /* ARTLog+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB503C891C7F1FE40053AF00 /* ARTLog+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
EB5E058D1C77027600A48B39 /* ARTCrypto+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB5E058C1C77027600A48B39 /* ARTCrypto+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
EB7617721CB6CBFF00D0981E /* ARTRealtimePresence+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EB7617711CB6CBFE00D0981E /* ARTRealtimePresence+Private.h */; settings = {ATTRIBUTES = (Private, ); }; };
Expand Down Expand Up @@ -360,6 +361,7 @@
D7588AF11BFF91B800BB8279 /* ARTURLSessionServerTrust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ARTURLSessionServerTrust.h; sourceTree = "<group>"; };
D7588AF21BFF91B800BB8279 /* ARTURLSessionServerTrust.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ARTURLSessionServerTrust.m; sourceTree = "<group>"; };
D77394021C6F6FFE00F5478F /* ARTProtocolMessage+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ARTProtocolMessage+Private.h"; sourceTree = "<group>"; };
D77F02A71DAF8099001B3FF9 /* ARTFallback+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ARTFallback+Private.h"; sourceTree = "<group>"; };
D780846C1C68B3E50083009D /* NSObject+TestSuite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject+TestSuite.h"; sourceTree = "<group>"; };
D780846D1C68B3E50083009D /* NSObject+TestSuite.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSObject+TestSuite.m"; sourceTree = "<group>"; };
D79FF2731D901CD50067FA6A /* ARTRealtime+TestSuite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ARTRealtime+TestSuite.h"; sourceTree = "<group>"; };
Expand Down Expand Up @@ -664,18 +666,18 @@
D746AE331BBC29FF003ECEF8 /* Types */ = {
isa = PBXGroup;
children = (
EB8AC6421C6515ED002ABA92 /* ARTTokenParams+Private.h */,
EB0505FB1C5BD7C4006BA7E2 /* ARTBaseMessage+Private.h */,
D7D8F81F1BC2BE15009718F2 /* ARTAuthOptions.h */,
D7D5A6991CA3D9040071BD6D /* ARTAuthOptions+Private.h */,
D7D8F8201BC2BE15009718F2 /* ARTAuthOptions.m */,
D7D8F8271BC2C706009718F2 /* ARTTokenRequest.h */,
D7D8F8281BC2C706009718F2 /* ARTTokenRequest.m */,
D7D8F8291BC2C706009718F2 /* ARTTokenParams.h */,
EB8AC6421C6515ED002ABA92 /* ARTTokenParams+Private.h */,
D7D8F82A1BC2C706009718F2 /* ARTTokenParams.m */,
D7D8F8231BC2C691009718F2 /* ARTTokenDetails.h */,
D7D8F8241BC2C691009718F2 /* ARTTokenDetails.m */,
961343D61A42E0B7006DC822 /* ARTClientOptions.h */,
EB503C871C7E4A090053AF00 /* ARTClientOptions+Private.h */,
961343D71A42E0B7006DC822 /* ARTClientOptions.m */,
D746AE201BBB60EE003ECEF8 /* ARTChannel.h */,
D746AE241BBB611C003ECEF8 /* ARTChannel+Private.h */,
Expand All @@ -689,6 +691,7 @@
D77394021C6F6FFE00F5478F /* ARTProtocolMessage+Private.h */,
96E408421A38939E00087F77 /* ARTProtocolMessage.m */,
96BF61621A35CDE1004CF2B3 /* ARTBaseMessage.h */,
EB0505FB1C5BD7C4006BA7E2 /* ARTBaseMessage+Private.h */,
96BF61631A35CDE1004CF2B3 /* ARTBaseMessage.m */,
D746AE361BBC3201003ECEF8 /* ARTMessage.h */,
D746AE371BBC3201003ECEF8 /* ARTMessage.m */,
Expand All @@ -706,7 +709,6 @@
1C55427C1B148306003068DB /* ARTStatus.m */,
96BF615C1A35C1C8004CF2B3 /* ARTTypes.h */,
96BF615D1A35C1C8004CF2B3 /* ARTTypes.m */,
EB503C871C7E4A090053AF00 /* ARTClientOptions+Private.h */,
);
name = Types;
sourceTree = "<group>";
Expand Down Expand Up @@ -757,6 +759,7 @@
D746AE2E1BBBE7D7003ECEF8 /* ARTPaginatedResult+Private.h */,
850BFB4B1B79323C009D0ADD /* ARTPaginatedResult.m */,
1C578E1D1B3435CA00EF46EC /* ARTFallback.h */,
D77F02A71DAF8099001B3FF9 /* ARTFallback+Private.h */,
1C578E1E1B3435CA00EF46EC /* ARTFallback.m */,
);
name = HTTP;
Expand Down Expand Up @@ -830,6 +833,7 @@
96E4083F1A3892C700087F77 /* ARTRealtimeTransport.h in Headers */,
D746AE4F1BBD84E7003ECEF8 /* ARTChannelOptions.h in Headers */,
D7588AF31BFF91B800BB8279 /* ARTURLSessionServerTrust.h in Headers */,
D77F02A81DAF8099001B3FF9 /* ARTFallback+Private.h in Headers */,
D746AE3C1BBC5AE1003ECEF8 /* ARTRealtimeChannel.h in Headers */,
96BF61701A35FB7C004CF2B3 /* ARTAuth.h in Headers */,
96A507A11A377AA50077CDF8 /* ARTPresenceMessage.h in Headers */,
Expand Down
22 changes: 22 additions & 0 deletions Source/ARTFallback+Private.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//
// ARTFallback+Private.h
// Ably
//
// Created by Ricardo Pereira on 13/10/16.
// Copyright © 2016 Ably. All rights reserved.
//

#include "ARTFallback.h"
#include "CompatibilityMacros.h"

ART_ASSUME_NONNULL_BEGIN

extern int (^ARTFallback_getRandomHostIndex)(int count);

@interface ARTFallback ()

@property (readwrite, strong, nonatomic) __GENERIC(NSMutableArray, NSString *) *hosts;

@end

ART_ASSUME_NONNULL_END
2 changes: 0 additions & 2 deletions Source/ARTFallback.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@ ART_ASSUME_NONNULL_BEGIN
@class ARTHttpResponse;
@class ARTClientOptions;

extern int (^ARTFallback_getRandomHostIndex)(int count);

@interface ARTFallback : NSObject

/**
Expand Down
5 changes: 1 addition & 4 deletions Source/ARTFallback.m
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// Copyright (c) 2015 Ably. All rights reserved.
//

#import "ARTFallback.h"
#import "ARTFallback+Private.h"

#import "ARTDefault.h"
#import "ARTStatus.h"
Expand All @@ -19,8 +19,6 @@

@interface ARTFallback ()

@property (readwrite, strong, nonatomic) NSMutableArray * hosts;

@end

@implementation ARTFallback
Expand All @@ -31,7 +29,6 @@ - (instancetype)initWithFallbackHosts:(art_nullable __GENERIC(NSArray, NSString
if (fallbackHosts != nil && fallbackHosts.count == 0) {
return nil;
}

self.hosts = [NSMutableArray array];
NSMutableArray * hostArray = [[NSMutableArray alloc] initWithArray: fallbackHosts ? fallbackHosts : [ARTDefault fallbackHosts]];
size_t count = [hostArray count];
Expand Down
1 change: 0 additions & 1 deletion Source/ARTRest.m
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
#import "ARTTokenParams.h"
#import "ARTTokenDetails.h"
#import "ARTDefault.h"
#import "ARTFallback.h"

@implementation ARTRest

Expand Down
1 change: 1 addition & 0 deletions Source/Ably.modulemap
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,6 @@ framework module Ably {
header "ARTLog+Private.h"
header "ARTRealtimePresence+Private.h"
header "ARTRestPresence+Private.h"
header "ARTFallback+Private.h"
}
}
2 changes: 2 additions & 0 deletions Tests/ARTFallbackTest.m
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@

#import <XCTest/XCTest.h>
#import "ARTFallback.h"
#import "ARTFallback+Private.h"
#import "ARTDefault.h"

@interface ARTFallbackTest : XCTestCase
@end

Expand Down

0 comments on commit 074e851

Please sign in to comment.