103 lines
2.4 KiB
Objective-C
103 lines
2.4 KiB
Objective-C
//
|
|
// PNInstallation.h
|
|
// Pods
|
|
//
|
|
// Created by Giuseppe Nucifora on 27/01/16.
|
|
//
|
|
//
|
|
|
|
#import "PNObject.h"
|
|
#import "PNUser.h"
|
|
|
|
typedef NS_ENUM(NSInteger, PNInstallationStatus) {
|
|
PNInstallationStatusNew = 0,
|
|
PNInstallationStatusChange,
|
|
PNInstallationStatusNone,
|
|
};
|
|
|
|
@interface PNInstallation : PNObject
|
|
|
|
/**
|
|
Gets the currently-running installation from disk and returns an instance of it.
|
|
|
|
If this installation is not stored on disk, returns a `PFInstallation`
|
|
with `deviceType` and `installationId` fields set to those of the
|
|
current installation.
|
|
|
|
@result Returns a `Installation` that represents the currently-running installation.
|
|
*/
|
|
+ (instancetype _Nonnull)currentInstallation;
|
|
|
|
/**
|
|
* <#Description#>
|
|
*
|
|
* @param deviceTokenData <#deviceTokenData description#>
|
|
*
|
|
* @return RETURN YES if token is not set o token changes, NO if token is the same of old token.
|
|
*/
|
|
- (PNInstallationStatus) setDeviceTokenFromData:(nullable NSData *)deviceTokenData;
|
|
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
- (void) resetBadge;
|
|
|
|
- (void) setRegistered;
|
|
|
|
- (void) setUpdated;
|
|
|
|
///--------------------------------------
|
|
#pragma mark - PNInstallation Properties
|
|
///--------------------------------------
|
|
@property (nonatomic, strong, nullable) PNUser *user;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nonnull) NSString *deviceType;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nonnull) NSString *deviceModel;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nonnull) NSString *deviceName;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nonnull) NSString *osVersion;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nonnull) NSString *localeIdentifier;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nullable) NSString *deviceToken;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nullable) NSString *oldDeviceToken;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, assign) NSInteger badge;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, readonly) PNInstallationStatus installationStatus;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nullable) NSDate *registeredAt;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nullable) NSDate *updatedAt;
|
|
/**
|
|
* <#Description#>
|
|
*/
|
|
@property (nonatomic, strong, readonly, nullable) NSDate *lastTokenUpdate;
|
|
|
|
@end
|