summaryrefslogtreecommitdiff
path: root/Juick/CoreDataStack.h
diff options
context:
space:
mode:
Diffstat (limited to 'Juick/CoreDataStack.h')
-rw-r--r--Juick/CoreDataStack.h189
1 files changed, 0 insertions, 189 deletions
diff --git a/Juick/CoreDataStack.h b/Juick/CoreDataStack.h
deleted file mode 100644
index b430654..0000000
--- a/Juick/CoreDataStack.h
+++ /dev/null
@@ -1,189 +0,0 @@
-//
-// CoreDataStack.h
-// Juick
-//
-// Created by Vitaly Takmazov on 15/10/2017.
-// Copyright © 2017 com.juick. All rights reserved.
-//
-
-@import Foundation;
-@import CoreData;
-
-NS_ASSUME_NONNULL_BEGIN
-
-API_AVAILABLE(macosx(10.12),ios(10.0),tvos(10.0),watchos(3.0))
-@interface CoreDataStack : NSObject
-
-/**
- The default directory for the persistent stores on the current platform.
- @return An `NSURL` for the directory containing the persistent store(s). If the
- persistent store does not exist it will be created by default in this location
- when loaded.
- */
-+ (NSURL *)defaultDirectoryURL;
-
-///---------------------
-/// @name Properties
-///---------------------
-
-/**
- A read-only flag indicating if the persistent store is loaded.
- */
-@property (readonly, assign, getter=isStoreLoaded) BOOL storeLoaded;
-
-/**
- The managed object context associated with the main queue (read-only). To
- perform tasks on a private background queue see `performBackgroundTask:` and
- `newPrivateContext`.
- The context is configured to be generational and to automatically consume save
- notifications from other contexts.
- */
-@property (readonly, strong) NSManagedObjectContext *viewContext;
-
-/**
- The `URL` of the persistent store for this Core Data Stack. If there are more
- than one stores this property returns the first store it finds. The store may
- not yet exist. It will be created at this URL by default when first loaded.
-
- This is a readonly property to create a persistent store in a different
- location use `loadStoreAtURL:withCompletionHandler`. To move an existing
- persistent store use `replacePersistentStoreAtURL:withPersistentStoreFromURL:`.
- */
-@property (readonly, copy) NSURL *storeURL;
-
-/**
- A flag that indicates whether this store is read-only. Set this value to YES
- before loading the persistent store if you want a read-only store (for example
- if you are loading a store from the application bundle).
-
- Default is NO.
- */
-@property (assign, getter=isReadOnly) BOOL readOnly;
-
-/**
- A flag that indicates whether the store is added asynchronously. Set this
- value before loading the persistent store.
-
- Default is YES.
- */
-@property (assign) BOOL shouldAddStoreAsynchronously;
-
-/**
- A flag that indicates whether the store should be migrated
- automatically if the store model version does not match the
- coordinators model version.
-
- Set this value before loading the persistent store.
- Default is YES.
- */
-@property (assign) BOOL shouldMigrateStoreAutomatically;
-
-/**
- A flag that indicates whether a mapping model should be inferred
- when migrating a store.
- Set this value before loading the persistent store.
-
- Default is YES.
- */
-@property (assign) BOOL shouldInferMappingModelAutomatically;
-
-///---------------------
-/// @name Initialization
-///---------------------
-
-- (instancetype)init NS_UNAVAILABLE;
-
-/**
- Creates and returns a `CoreDataController` object. This is the designated
- initializer for the class. It creates the managed object model, persistent
- store coordinator and main managed object context but does not load the
- persistent store.
-
- @param name The name of the `NSManagedObjectModel` and by default the name used
- for the persistent store
- @return A `CoreDataController` object initialized with the given name.
- */
-- (instancetype)initWithName:(NSString *)name NS_DESIGNATED_INITIALIZER;
-
-///---------------------------------
-/// @name Loading a Persistent Store
-///---------------------------------
-
-/**
- Load the persistent store.
- @param handler This handler block is executed on the calling thread when the
- loading of the persistent store has completed.
-
- To override the default name and location of the persistent store use
- `loadStoreAtURL:withCompletionHandler:`.
- */
-- (void)loadStoreWithCompletionHandler:(void(^)(NSError *))handler;
-
-/**
- Load the persistent store.
- @param storeURL The URL for the location of the persistent store. It will be created if it does not exist.
- @param handler This handler block is executed on the calling thread when the
- loading of the persistent store has completed.
- */
-- (void)loadStoreAtURL:(NSURL *)storeURL withCompletionHandler:(void(^)(NSError * _Nullable))handler;
-
-///----------------------------------
-/// @name Managing a Persistent Store
-///----------------------------------
-
-/**
- A flag indicating if the persistent store exists at the specified URL.
- @param storeURL An `NSURL` object for the location of the peristent store.
- @return YES if a file exists at the specified URL otherwise NO.
- @warning This method checks if a file exists at the specified location but
- does not verify if it is a valid persistent store.
- */
-- (BOOL)persistentStoreExistsAtURL:(NSURL *)storeURL;
-
-/**
- Replace a persistent store.
- @param destinationURL An `NSURL` for the persistent store to be replaced.
- @param sourceURL An `NSURL` for the source persistent store.
- @return A flag indicating if the operation was successful.
- */
-- (BOOL)replacePersistentStoreAtURL:(NSURL *)destinationURL withPersistentStoreFromURL:(NSURL *)sourceURL;
-
-/**
- Destroy a persistent store.
- @param storeURL An `NSURL` for the persistent store to be destroyed.
- @return A flag indicating if the operation was successful.
- */
-- (BOOL)destroyPersistentStoreAtURL:(NSURL *)storeURL;
-
-///----------------------------------
-/// @name Performing Background tasks
-///----------------------------------
-
-/**
- Execute a block on a new private queue context.
- @param block A block to execute on a newly created private context. The context
- is passed to the block as a paramater.
- */
-- (void)performBackgroundTask:(void(^)(NSManagedObjectContext *))block;
-
-/**
- Create and return a new private queue `NSManagedObjectContext`. The new context
- is set to consume `NSManagedObjectContextSave` broadcasts automatically.
- @return A new private managed object context.
- */
-- (NSManagedObjectContext *)newPrivateContext NS_RETURNS_RETAINED;
-
-///------------------------
-/// @name NSManagedObjectID
-///------------------------
-
-/**
- Return an object ID for the specified URI representation if a matching
- store is available.
- @param url An `NSURL` containing a URI of a managed object.
- @return An `NSManagedObjectID` or `nil`.
- */
-- (NSManagedObjectID *)managedObjectIDForURIRepresentation:(NSURL *)url;
-
-@end
-NS_ASSUME_NONNULL_END