Index: third_party/grpc/src/objective-c/GRPCClient/GRPCCall+OAuth2.m |
diff --git a/third_party/WebKit/Source/core/loader/PrerendererClient.h b/third_party/grpc/src/objective-c/GRPCClient/GRPCCall+OAuth2.m |
similarity index 64% |
copy from third_party/WebKit/Source/core/loader/PrerendererClient.h |
copy to third_party/grpc/src/objective-c/GRPCClient/GRPCCall+OAuth2.m |
index 72c1f2055bc0723fbe7d5e15ca38e035f38ffec6..83b0de18e32e45c3a150802efbc998a4ebfcc35e 100644 |
--- a/third_party/WebKit/Source/core/loader/PrerendererClient.h |
+++ b/third_party/grpc/src/objective-c/GRPCClient/GRPCCall+OAuth2.m |
@@ -1,5 +1,7 @@ |
/* |
- * Copyright (C) 2012 Google Inc. All rights reserved. |
+ * |
+ * Copyright 2015, Google Inc. |
+ * All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions are |
@@ -29,31 +31,33 @@ |
* |
*/ |
-#ifndef PrerendererClient_h |
-#define PrerendererClient_h |
- |
-#include "core/CoreExport.h" |
-#include "core/page/Page.h" |
-#include "platform/Supplementable.h" |
- |
-namespace blink { |
- |
-class Page; |
-class Prerender; |
+#import "GRPCCall+OAuth2.h" |
-class CORE_EXPORT PrerendererClient : public Supplement<Page> { |
-public: |
- virtual void willAddPrerender(Prerender*) = 0; |
+static NSString * const kAuthorizationHeader = @"authorization"; |
+static NSString * const kBearerPrefix = @"Bearer "; |
+static NSString * const kChallengeHeader = @"www-authenticate"; |
- static const char* supplementName(); |
- static PrerendererClient* from(Page*); |
+@implementation GRPCCall (OAuth2) |
-protected: |
- PrerendererClient() { } |
-}; |
+- (NSString *)oauth2AccessToken { |
+ NSString *headerValue = self.requestHeaders[kAuthorizationHeader]; |
+ if ([headerValue hasPrefix:kBearerPrefix]) { |
+ return [headerValue substringFromIndex:kBearerPrefix.length]; |
+ } else { |
+ return nil; |
+ } |
+} |
-CORE_EXPORT void providePrerendererClientTo(Page&, PrerendererClient*); |
+- (void)setOauth2AccessToken:(NSString *)token { |
+ if (token) { |
+ self.requestHeaders[kAuthorizationHeader] = [kBearerPrefix stringByAppendingString:token]; |
+ } else { |
+ [self.requestHeaders removeObjectForKey:kAuthorizationHeader]; |
+ } |
+} |
-} // namespace blink |
+- (NSString *)oauth2ChallengeHeader { |
+ return self.responseHeaders[kChallengeHeader]; |
+} |
-#endif // PrerendererClient_h |
+@end |