1 ////////////////////////////////////////////////////////////////////////////
3 // Copyright 2017 Realm Inc.
5 // Licensed under the Apache License, Version 2.0 (the "License");
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
17 ////////////////////////////////////////////////////////////////////////////
19 #import <Foundation/Foundation.h>
21 NS_ASSUME_NONNULL_BEGIN
23 @class RLMSyncErrorActionToken;
25 /// NSError category extension providing methods to get data out of Realm's
26 /// "client reset" error.
27 @interface NSError (RLMSync)
30 Given an appropriate Realm Object Server error, return the token that
31 can be passed into `+[RLMSyncSession immediatelyHandleError:]` to
32 immediately perform error clean-up work, or nil if the error isn't of
33 a type that provides a token.
35 - (nullable RLMSyncErrorActionToken *)rlmSync_errorActionToken NS_REFINED_FOR_SWIFT;
38 Given a Realm Object Server client reset error, return the path where the
39 backup copy of the Realm will be placed once the client reset process is
42 - (nullable NSString *)rlmSync_clientResetBackedUpRealmPath NS_SWIFT_UNAVAILABLE("");