Swift support for NetworkPlugin (#201)

Summary:
Solves #173

- [x] Add plugins in the sonarkit xcodeproj so that its easy to debug
- [x] Get rid off the c++ in the headers
- [x] Add example to hit network requests and validate

Have a look at the screen shot below ️

<img width="1677" alt="screen shot 2018-08-02 at 12 46 07 pm" src="https://user-images.githubusercontent.com/3865908/43581809-22efe4fe-9652-11e8-9424-f279d07c5c81.png">
Pull Request resolved: https://github.com/facebook/flipper/pull/201

Reviewed By: danielbuechele

Differential Revision: D9132157

Pulled By: priteshrnandgaonkar

fbshipit-source-id: 2b425506961f02eb2bf629c2bcab0da6e7ce5bb0
This commit is contained in:
Pritesh Nandgaonkar
2018-08-06 12:34:08 -07:00
committed by Facebook Github Bot
parent 134a0d96c5
commit 0c60347593
20 changed files with 863 additions and 147 deletions

View File

@@ -116,13 +116,7 @@ NSString *const kFLEXNetworkRecorderResponseCacheLimitDefaultsKey = @"com.flex.r
}
dispatch_async(self.queue, ^{
RequestInfo info = {
.identifier = self.identifierDict[requestID].longLongValue,
.timestamp = [NSDate timestamp],
.request = request,
};
info.setBody(request.HTTPBody);
SKRequestInfo *info = [[SKRequestInfo alloc] initWithIdentifier:self.identifierDict[requestID].longLongValue timestamp:[NSDate timestamp] request:request data:request.HTTPBody];
[self.delegate didObserveRequest:info];
FLEXNetworkTransaction *transaction = [FLEXNetworkTransaction new];
@@ -176,13 +170,7 @@ NSString *const kFLEXNetworkRecorderResponseCacheLimitDefaultsKey = @"com.flex.r
}
transaction.transactionState = FLEXNetworkTransactionStateFinished;
transaction.duration = -[transaction.startTime timeIntervalSinceDate:finishedDate];
ResponseInfo responseInfo = {
.identifier = self.identifierDict[requestID].longLongValue,
.timestamp = [NSDate timestamp],
.response = transaction.response,
.body = nil,
};
responseInfo.setBody(responseBody);
SKResponseInfo *responseInfo = [[SKResponseInfo alloc] initWithIndentifier:self.identifierDict[requestID].longLongValue timestamp:[NSDate timestamp] response:transaction.response data:responseBody];
self.identifierDict[requestID] = nil; //Clear the entry
[self.delegate didObserveResponse:responseInfo];
@@ -207,12 +195,8 @@ NSString *const kFLEXNetworkRecorderResponseCacheLimitDefaultsKey = @"com.flex.r
if (!transaction) {
return;
}
ResponseInfo responseInfo = {
.identifier = self.identifierDict[requestID].longLongValue,
.timestamp = [NSDate timestamp],
.response = transaction.response,
.body = nil,
};
SKResponseInfo *responseInfo = [[SKResponseInfo alloc] initWithIndentifier:self.identifierDict[requestID].longLongValue timestamp:[NSDate timestamp] response:transaction.response data: nil];
self.identifierDict[requestID] = nil; //Clear the entry
[self.delegate didObserveResponse:responseInfo];
transaction.transactionState = FLEXNetworkTransactionStateFailed;