NSError+RLMSync.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. ////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright 2017 Realm Inc.
  4. //
  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
  8. //
  9. // http://www.apache.org/licenses/LICENSE-2.0
  10. //
  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.
  16. //
  17. ////////////////////////////////////////////////////////////////////////////
  18. #import <Foundation/Foundation.h>
  19. NS_ASSUME_NONNULL_BEGIN
  20. /// NSError category extension providing methods to get data out of Realm's
  21. /// "client reset" error.
  22. @interface NSError (RLMSync)
  23. /**
  24. Given a Realm Object Server client reset error, return the block that can
  25. be called to manually initiate the client reset process, or nil if the
  26. error isn't a client reset error.
  27. */
  28. - (nullable void(^)(void))rlmSync_clientResetBlock NS_REFINED_FOR_SWIFT;
  29. /**
  30. Given a Realm Object Server permission denied error, return the block that
  31. can be called to manually initiate the Realm file deletion process, or nil
  32. if the error isn't a permission denied error.
  33. */
  34. - (nullable void(^)(void))rlmSync_deleteRealmBlock NS_REFINED_FOR_SWIFT;
  35. /**
  36. Given a Realm Object Server client reset error, return the path where the
  37. backup copy of the Realm will be placed once the client reset process is
  38. complete.
  39. */
  40. - (nullable NSString *)rlmSync_clientResetBackedUpRealmPath NS_SWIFT_UNAVAILABLE("");
  41. @end
  42. NS_ASSUME_NONNULL_END